summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2009-07-30 11:06:01 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2009-07-30 11:06:01 +0000
commit8f547c7bd349e0dc905e0dc5f32edbf1e01061ce (patch)
tree0ba575c11b1875b638324194e16ebda4586baec8
parente3eae8836e177220d556868e4fa7741c00b2d729 (diff)
downloadlibdom-8f547c7bd349e0dc905e0dc5f32edbf1e01061ce.tar.gz
libdom-8f547c7bd349e0dc905e0dc5f32edbf1e01061ce.tar.bz2
Merge DOMTS tests -- they're causing havoc with review diffs.
svn path=/trunk/dom/; revision=8910
-rw-r--r--test/testcases/tests/CVS/Entries5
-rw-r--r--test/testcases/tests/CVS/Repository1
-rw-r--r--test/testcases/tests/CVS/Root1
-rw-r--r--test/testcases/tests/CVS/Template0
-rw-r--r--test/testcases/tests/level1/CVS/Entries2
-rw-r--r--test/testcases/tests/level1/CVS/Repository1
-rw-r--r--test/testcases/tests/level1/CVS/Root1
-rw-r--r--test/testcases/tests/level1/CVS/Template0
-rw-r--r--test/testcases/tests/level1/core/.cvsignore2
-rw-r--r--test/testcases/tests/level1/core/.nodeappendchild.xml.swpbin0 -> 12288 bytes
-rw-r--r--test/testcases/tests/level1/core/CVS/Entries531
-rw-r--r--test/testcases/tests/level1/core/CVS/Repository1
-rw-r--r--test/testcases/tests/level1/core/CVS/Root1
-rw-r--r--test/testcases/tests/level1/core/CVS/Template0
-rw-r--r--test/testcases/tests/level1/core/alltests.xml550
-rw-r--r--test/testcases/tests/level1/core/attrcreatedocumentfragment.xml51
-rw-r--r--test/testcases/tests/level1/core/attrcreatetextnode.xml51
-rw-r--r--test/testcases/tests/level1/core/attrcreatetextnode2.xml50
-rw-r--r--test/testcases/tests/level1/core/attrdefaultvalue.xml53
-rw-r--r--test/testcases/tests/level1/core/attreffectivevalue.xml44
-rw-r--r--test/testcases/tests/level1/core/attrentityreplacement.xml48
-rw-r--r--test/testcases/tests/level1/core/attrname.xml47
-rw-r--r--test/testcases/tests/level1/core/attrnextsiblingnull.xml44
-rw-r--r--test/testcases/tests/level1/core/attrnotspecifiedvalue.xml48
-rw-r--r--test/testcases/tests/level1/core/attrparentnodenull.xml44
-rw-r--r--test/testcases/tests/level1/core/attrprevioussiblingnull.xml44
-rw-r--r--test/testcases/tests/level1/core/attrremovechild1.xml45
-rw-r--r--test/testcases/tests/level1/core/attrreplacechild1.xml47
-rw-r--r--test/testcases/tests/level1/core/attrsetvaluenomodificationallowederr.xml69
-rw-r--r--test/testcases/tests/level1/core/attrsetvaluenomodificationallowederrEE.xml65
-rw-r--r--test/testcases/tests/level1/core/attrspecifiedvalue.xml45
-rw-r--r--test/testcases/tests/level1/core/attrspecifiedvaluechanged.xml47
-rw-r--r--test/testcases/tests/level1/core/attrspecifiedvalueremove.xml55
-rw-r--r--test/testcases/tests/level1/core/cdatasectiongetdata.xml45
-rw-r--r--test/testcases/tests/level1/core/cdatasectionnormalize.xml49
-rw-r--r--test/testcases/tests/level1/core/characterdataappenddata.xml48
-rw-r--r--test/testcases/tests/level1/core/characterdataappenddatagetdata.xml47
-rw-r--r--test/testcases/tests/level1/core/characterdataappenddatanomodificationallowederr.xml59
-rw-r--r--test/testcases/tests/level1/core/characterdataappenddatanomodificationallowederrEE.xml47
-rw-r--r--test/testcases/tests/level1/core/characterdatadeletedatabegining.xml45
-rw-r--r--test/testcases/tests/level1/core/characterdatadeletedataend.xml47
-rw-r--r--test/testcases/tests/level1/core/characterdatadeletedataexceedslength.xml49
-rw-r--r--test/testcases/tests/level1/core/characterdatadeletedatagetlengthanddata.xml54
-rw-r--r--test/testcases/tests/level1/core/characterdatadeletedatamiddle.xml47
-rw-r--r--test/testcases/tests/level1/core/characterdatadeletedatanomodificationallowederr.xml59
-rw-r--r--test/testcases/tests/level1/core/characterdatadeletedatanomodificationallowederrEE.xml47
-rw-r--r--test/testcases/tests/level1/core/characterdatagetdata.xml48
-rw-r--r--test/testcases/tests/level1/core/characterdatagetlength.xml43
-rw-r--r--test/testcases/tests/level1/core/characterdataindexsizeerrdeletedatacountnegative.xml48
-rw-r--r--test/testcases/tests/level1/core/characterdataindexsizeerrdeletedataoffsetgreater.xml50
-rw-r--r--test/testcases/tests/level1/core/characterdataindexsizeerrdeletedataoffsetnegative.xml49
-rw-r--r--test/testcases/tests/level1/core/characterdataindexsizeerrinsertdataoffsetgreater.xml49
-rw-r--r--test/testcases/tests/level1/core/characterdataindexsizeerrinsertdataoffsetnegative.xml48
-rw-r--r--test/testcases/tests/level1/core/characterdataindexsizeerrreplacedatacountnegative.xml49
-rw-r--r--test/testcases/tests/level1/core/characterdataindexsizeerrreplacedataoffsetgreater.xml50
-rw-r--r--test/testcases/tests/level1/core/characterdataindexsizeerrreplacedataoffsetnegative.xml50
-rw-r--r--test/testcases/tests/level1/core/characterdataindexsizeerrsubstringcountnegative.xml49
-rw-r--r--test/testcases/tests/level1/core/characterdataindexsizeerrsubstringnegativeoffset.xml49
-rw-r--r--test/testcases/tests/level1/core/characterdataindexsizeerrsubstringoffsetgreater.xml50
-rw-r--r--test/testcases/tests/level1/core/characterdatainsertdatabeginning.xml46
-rw-r--r--test/testcases/tests/level1/core/characterdatainsertdataend.xml47
-rw-r--r--test/testcases/tests/level1/core/characterdatainsertdatamiddle.xml47
-rw-r--r--test/testcases/tests/level1/core/characterdatainsertdatanomodificationallowederr.xml59
-rw-r--r--test/testcases/tests/level1/core/characterdatainsertdatanomodificationallowederrEE.xml45
-rw-r--r--test/testcases/tests/level1/core/characterdatareplacedatabegining.xml46
-rw-r--r--test/testcases/tests/level1/core/characterdatareplacedataend.xml47
-rw-r--r--test/testcases/tests/level1/core/characterdatareplacedataexceedslengthofarg.xml48
-rw-r--r--test/testcases/tests/level1/core/characterdatareplacedataexceedslengthofdata.xml46
-rw-r--r--test/testcases/tests/level1/core/characterdatareplacedatamiddle.xml47
-rw-r--r--test/testcases/tests/level1/core/characterdatareplacedatanomodificationallowederr.xml60
-rw-r--r--test/testcases/tests/level1/core/characterdatareplacedatanomodificationallowederrEE.xml47
-rw-r--r--test/testcases/tests/level1/core/characterdatasetdatanomodificationallowederr.xml59
-rw-r--r--test/testcases/tests/level1/core/characterdatasetdatanomodificationallowederrEE.xml44
-rw-r--r--test/testcases/tests/level1/core/characterdatasetnodevalue.xml43
-rw-r--r--test/testcases/tests/level1/core/characterdatasubstringexceedsvalue.xml46
-rw-r--r--test/testcases/tests/level1/core/characterdatasubstringvalue.xml45
-rw-r--r--test/testcases/tests/level1/core/commentgetcomment.xml56
-rw-r--r--test/testcases/tests/level1/core/documentcreateattribute.xml45
-rw-r--r--test/testcases/tests/level1/core/documentcreatecdatasection.xml44
-rw-r--r--test/testcases/tests/level1/core/documentcreatecomment.xml43
-rw-r--r--test/testcases/tests/level1/core/documentcreatedocumentfragment.xml47
-rw-r--r--test/testcases/tests/level1/core/documentcreateelement.xml44
-rw-r--r--test/testcases/tests/level1/core/documentcreateelementcasesensitive.xml46
-rw-r--r--test/testcases/tests/level1/core/documentcreateelementdefaultattr.xml53
-rw-r--r--test/testcases/tests/level1/core/documentcreateentityreference.xml48
-rw-r--r--test/testcases/tests/level1/core/documentcreateentityreferenceknown.xml51
-rw-r--r--test/testcases/tests/level1/core/documentcreateprocessinginstruction.xml51
-rw-r--r--test/testcases/tests/level1/core/documentcreatetextnode.xml43
-rw-r--r--test/testcases/tests/level1/core/documentgetdoctype.xml49
-rw-r--r--test/testcases/tests/level1/core/documentgetdoctypenodtd.xml34
-rw-r--r--test/testcases/tests/level1/core/documentgetelementsbytagnamelength.xml36
-rw-r--r--test/testcases/tests/level1/core/documentgetelementsbytagnametotallength.xml36
-rw-r--r--test/testcases/tests/level1/core/documentgetelementsbytagnamevalue.xml44
-rw-r--r--test/testcases/tests/level1/core/documentgetimplementation.xml37
-rw-r--r--test/testcases/tests/level1/core/documentgetrootnode.xml43
-rw-r--r--test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateattribute.xml44
-rw-r--r--test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateelement.xml44
-rw-r--r--test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateentref.xml48
-rw-r--r--test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateentref1.xml45
-rw-r--r--test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreatepi.xml48
-rw-r--r--test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreatepi1.xml45
-rw-r--r--test/testcases/tests/level1/core/documenttypegetdoctype.xml44
-rw-r--r--test/testcases/tests/level1/core/documenttypegetentities.xml68
-rw-r--r--test/testcases/tests/level1/core/documenttypegetentitieslength.xml43
-rw-r--r--test/testcases/tests/level1/core/documenttypegetentitiestype.xml45
-rw-r--r--test/testcases/tests/level1/core/documenttypegetnotations.xml51
-rw-r--r--test/testcases/tests/level1/core/documenttypegetnotationstype.xml44
-rw-r--r--test/testcases/tests/level1/core/domimplementationfeaturenoversion.xml33
-rw-r--r--test/testcases/tests/level1/core/domimplementationfeaturenull.xml35
-rw-r--r--test/testcases/tests/level1/core/domimplementationfeaturexml.xml32
-rw-r--r--test/testcases/tests/level1/core/elementaddnewattribute.xml43
-rw-r--r--test/testcases/tests/level1/core/elementassociatedattribute.xml46
-rw-r--r--test/testcases/tests/level1/core/elementchangeattributevalue.xml46
-rw-r--r--test/testcases/tests/level1/core/elementcreatenewattribute.xml50
-rw-r--r--test/testcases/tests/level1/core/elementgetattributenode.xml42
-rw-r--r--test/testcases/tests/level1/core/elementgetattributenodenull.xml41
-rw-r--r--test/testcases/tests/level1/core/elementgetelementempty.xml49
-rw-r--r--test/testcases/tests/level1/core/elementgetelementsbytagname.xml39
-rw-r--r--test/testcases/tests/level1/core/elementgetelementsbytagnameaccessnodelist.xml48
-rw-r--r--test/testcases/tests/level1/core/elementgetelementsbytagnamenomatch.xml37
-rw-r--r--test/testcases/tests/level1/core/elementgetelementsbytagnamespecialvalue.xml56
-rw-r--r--test/testcases/tests/level1/core/elementgettagname.xml48
-rw-r--r--test/testcases/tests/level1/core/elementinuseattributeerr.xml58
-rw-r--r--test/testcases/tests/level1/core/elementinvalidcharacterexception.xml53
-rw-r--r--test/testcases/tests/level1/core/elementnormalize.xml46
-rw-r--r--test/testcases/tests/level1/core/elementnotfounderr.xml50
-rw-r--r--test/testcases/tests/level1/core/elementremoveattribute.xml47
-rw-r--r--test/testcases/tests/level1/core/elementremoveattributeaftercreate.xml49
-rw-r--r--test/testcases/tests/level1/core/elementremoveattributenode.xml43
-rw-r--r--test/testcases/tests/level1/core/elementremoveattributenodenomodificationallowederr.xml67
-rw-r--r--test/testcases/tests/level1/core/elementremoveattributenodenomodificationallowederrEE.xml61
-rw-r--r--test/testcases/tests/level1/core/elementremoveattributenomodificationallowederr.xml62
-rw-r--r--test/testcases/tests/level1/core/elementremoveattributenomodificationallowederrEE.xml53
-rw-r--r--test/testcases/tests/level1/core/elementremoveattributerestoredefaultvalue.xml48
-rw-r--r--test/testcases/tests/level1/core/elementreplaceattributewithself.xml42
-rw-r--r--test/testcases/tests/level1/core/elementreplaceexistingattribute.xml48
-rw-r--r--test/testcases/tests/level1/core/elementreplaceexistingattributegevalue.xml48
-rw-r--r--test/testcases/tests/level1/core/elementretrieveallattributes.xml46
-rw-r--r--test/testcases/tests/level1/core/elementretrieveattrvalue.xml40
-rw-r--r--test/testcases/tests/level1/core/elementretrievetagname.xml44
-rw-r--r--test/testcases/tests/level1/core/elementsetattributenodenomodificationallowederr.xml61
-rw-r--r--test/testcases/tests/level1/core/elementsetattributenodenomodificationallowederrEE.xml58
-rw-r--r--test/testcases/tests/level1/core/elementsetattributenodenull.xml45
-rw-r--r--test/testcases/tests/level1/core/elementsetattributenomodificationallowederr.xml53
-rw-r--r--test/testcases/tests/level1/core/elementsetattributenomodificationallowederrEE.xml53
-rw-r--r--test/testcases/tests/level1/core/elementwrongdocumenterr.xml68
-rw-r--r--test/testcases/tests/level1/core/entitygetentityname.xml46
-rw-r--r--test/testcases/tests/level1/core/entitygetpublicid.xml55
-rw-r--r--test/testcases/tests/level1/core/entitygetpublicidnull.xml45
-rw-r--r--test/testcases/tests/level1/core/files/.cvsignore0
-rw-r--r--test/testcases/tests/level1/core/files/CVS/Entries16
-rw-r--r--test/testcases/tests/level1/core/files/CVS/Repository1
-rw-r--r--test/testcases/tests/level1/core/files/CVS/Root1
-rw-r--r--test/testcases/tests/level1/core/files/CVS/Template0
-rw-r--r--test/testcases/tests/level1/core/files/hc_nodtdstaff.html10
-rw-r--r--test/testcases/tests/level1/core/files/hc_nodtdstaff.svg10
-rw-r--r--test/testcases/tests/level1/core/files/hc_nodtdstaff.xhtml10
-rw-r--r--test/testcases/tests/level1/core/files/hc_nodtdstaff.xml10
-rw-r--r--test/testcases/tests/level1/core/files/hc_staff.html48
-rw-r--r--test/testcases/tests/level1/core/files/hc_staff.svg72
-rw-r--r--test/testcases/tests/level1/core/files/hc_staff.xhtml60
-rw-r--r--test/testcases/tests/level1/core/files/hc_staff.xml60
-rw-r--r--test/testcases/tests/level1/core/files/staff.dtd17
-rw-r--r--test/testcases/tests/level1/core/files/staff.svg72
-rw-r--r--test/testcases/tests/level1/core/files/staff.xml57
-rw-r--r--test/testcases/tests/level1/core/files/svgtest.js0
-rw-r--r--test/testcases/tests/level1/core/files/svgunit.js0
-rw-r--r--test/testcases/tests/level1/core/files/xhtml1-strict.dtd65
-rw-r--r--test/testcases/tests/level1/core/hc_attrappendchild1.xml63
-rw-r--r--test/testcases/tests/level1/core/hc_attrappendchild2.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_attrappendchild3.xml72
-rw-r--r--test/testcases/tests/level1/core/hc_attrappendchild4.xml59
-rw-r--r--test/testcases/tests/level1/core/hc_attrappendchild5.xml54
-rw-r--r--test/testcases/tests/level1/core/hc_attrappendchild6.xml59
-rw-r--r--test/testcases/tests/level1/core/hc_attrchildnodes1.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_attrchildnodes2.xml59
-rw-r--r--test/testcases/tests/level1/core/hc_attrclonenode1.xml63
-rw-r--r--test/testcases/tests/level1/core/hc_attrcreatedocumentfragment.xml58
-rw-r--r--test/testcases/tests/level1/core/hc_attrcreatetextnode.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_attrcreatetextnode2.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_attreffectivevalue.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_attrfirstchild.xml52
-rw-r--r--test/testcases/tests/level1/core/hc_attrgetvalue1.xml45
-rw-r--r--test/testcases/tests/level1/core/hc_attrgetvalue2.xml61
-rw-r--r--test/testcases/tests/level1/core/hc_attrhaschildnodes.xml43
-rw-r--r--test/testcases/tests/level1/core/hc_attrinsertbefore1.xml72
-rw-r--r--test/testcases/tests/level1/core/hc_attrinsertbefore2.xml71
-rw-r--r--test/testcases/tests/level1/core/hc_attrinsertbefore3.xml79
-rw-r--r--test/testcases/tests/level1/core/hc_attrinsertbefore4.xml81
-rw-r--r--test/testcases/tests/level1/core/hc_attrinsertbefore5.xml60
-rw-r--r--test/testcases/tests/level1/core/hc_attrinsertbefore6.xml53
-rw-r--r--test/testcases/tests/level1/core/hc_attrinsertbefore7.xml69
-rw-r--r--test/testcases/tests/level1/core/hc_attrlastchild.xml52
-rw-r--r--test/testcases/tests/level1/core/hc_attrname.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_attrnextsiblingnull.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_attrnormalize.xml65
-rw-r--r--test/testcases/tests/level1/core/hc_attrparentnodenull.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_attrprevioussiblingnull.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_attrremovechild1.xml62
-rw-r--r--test/testcases/tests/level1/core/hc_attrremovechild2.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_attrreplacechild1.xml65
-rw-r--r--test/testcases/tests/level1/core/hc_attrreplacechild2.xml74
-rw-r--r--test/testcases/tests/level1/core/hc_attrsetvalue1.xml68
-rw-r--r--test/testcases/tests/level1/core/hc_attrsetvalue2.xml71
-rw-r--r--test/testcases/tests/level1/core/hc_attrspecifiedvalue.xml45
-rw-r--r--test/testcases/tests/level1/core/hc_attrspecifiedvaluechanged.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataappenddata.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataappenddatagetdata.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatadeletedatabegining.xml45
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatadeletedataend.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatadeletedataexceedslength.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatadeletedatagetlengthanddata.xml54
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatadeletedatamiddle.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatagetdata.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatagetlength.xml43
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatainsertdatabeginning.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatainsertdataend.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatainsertdatamiddle.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatareplacedatabegining.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatareplacedataend.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatareplacedataexceedslengthofarg.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatareplacedataexceedslengthofdata.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatareplacedatamiddle.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatasetnodevalue.xml43
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatasubstringexceedsvalue.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_characterdatasubstringvalue.xml45
-rw-r--r--test/testcases/tests/level1/core/hc_commentgetcomment.xml61
-rw-r--r--test/testcases/tests/level1/core/hc_documentcreateattribute.xml45
-rw-r--r--test/testcases/tests/level1/core/hc_documentcreatecomment.xml43
-rw-r--r--test/testcases/tests/level1/core/hc_documentcreatedocumentfragment.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_documentcreateelement.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_documentcreateelementcasesensitive.xml56
-rw-r--r--test/testcases/tests/level1/core/hc_documentcreatetextnode.xml43
-rw-r--r--test/testcases/tests/level1/core/hc_documentgetdoctype.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_documentgetelementsbytagnamelength.xml36
-rw-r--r--test/testcases/tests/level1/core/hc_documentgetelementsbytagnametotallength.xml135
-rw-r--r--test/testcases/tests/level1/core/hc_documentgetelementsbytagnamevalue.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_documentgetimplementation.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_documentgetrootnode.xml40
-rw-r--r--test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.xml36
-rw-r--r--test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateelement.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.xml36
-rw-r--r--test/testcases/tests/level1/core/hc_domimplementationfeaturenoversion.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_domimplementationfeaturenull.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_domimplementationfeaturexml.xml43
-rw-r--r--test/testcases/tests/level1/core/hc_elementaddnewattribute.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_elementassociatedattribute.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_elementchangeattributevalue.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_elementcreatenewattribute.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_elementgetattributenode.xml39
-rw-r--r--test/testcases/tests/level1/core/hc_elementgetattributenodenull.xml41
-rw-r--r--test/testcases/tests/level1/core/hc_elementgetelementempty.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_elementgetelementsbytagname.xml39
-rw-r--r--test/testcases/tests/level1/core/hc_elementgetelementsbytagnameaccessnodelist.xml61
-rw-r--r--test/testcases/tests/level1/core/hc_elementgetelementsbytagnamenomatch.xml37
-rw-r--r--test/testcases/tests/level1/core/hc_elementgetelementsbytagnamespecialvalue.xml56
-rw-r--r--test/testcases/tests/level1/core/hc_elementgettagname.xml39
-rw-r--r--test/testcases/tests/level1/core/hc_elementinuseattributeerr.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_elementinvalidcharacterexception.xml45
-rw-r--r--test/testcases/tests/level1/core/hc_elementinvalidcharacterexception1.xml38
-rw-r--r--test/testcases/tests/level1/core/hc_elementnormalize.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_elementnormalize2.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_elementnotfounderr.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_elementremoveattribute.xml40
-rw-r--r--test/testcases/tests/level1/core/hc_elementremoveattributeaftercreate.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_elementremoveattributenode.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_elementreplaceattributewithself.xml43
-rw-r--r--test/testcases/tests/level1/core/hc_elementreplaceexistingattribute.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_elementreplaceexistingattributegevalue.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_elementretrieveallattributes.xml59
-rw-r--r--test/testcases/tests/level1/core/hc_elementretrieveattrvalue.xml40
-rw-r--r--test/testcases/tests/level1/core/hc_elementretrievetagname.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_elementsetattributenodenull.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_elementwrongdocumenterr.xml56
-rw-r--r--test/testcases/tests/level1/core/hc_entitiesremovenameditem1.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_entitiessetnameditem1.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapchildnoderange.xml60
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapgetnameditem.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapinuseattributeerr.xml57
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapnotfounderr.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapnumberofnodes.xml45
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapremovenameditem.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapreturnattrnode.xml53
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapreturnfirstitem.xml63
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapreturnlastitem.xml65
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapreturnnull.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapsetnameditem.xml56
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapsetnameditemreturnvalue.xml56
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapsetnameditemthatexists.xml58
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapsetnameditemwithnewvalue.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_namednodemapwrongdocumenterr.xml57
-rw-r--r--test/testcases/tests/level1/core/hc_nodeappendchild.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_nodeappendchildchildexists.xml72
-rw-r--r--test/testcases/tests/level1/core/hc_nodeappendchilddocfragment.xml74
-rw-r--r--test/testcases/tests/level1/core/hc_nodeappendchildgetnodename.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_nodeappendchildinvalidnodetype.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_nodeappendchildnewchilddiffdocument.xml53
-rw-r--r--test/testcases/tests/level1/core/hc_nodeappendchildnodeancestor.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_nodeattributenodeattribute.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_nodeattributenodename.xml41
-rw-r--r--test/testcases/tests/level1/core/hc_nodeattributenodetype.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_nodeattributenodevalue.xml43
-rw-r--r--test/testcases/tests/level1/core/hc_nodechildnodes.xml63
-rw-r--r--test/testcases/tests/level1/core/hc_nodechildnodesappendchild.xml73
-rw-r--r--test/testcases/tests/level1/core/hc_nodechildnodesempty.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_nodecloneattributescopied.xml62
-rw-r--r--test/testcases/tests/level1/core/hc_nodeclonefalsenocopytext.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_nodeclonegetparentnull.xml42
-rw-r--r--test/testcases/tests/level1/core/hc_nodeclonenodefalse.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_nodeclonenodetrue.xml61
-rw-r--r--test/testcases/tests/level1/core/hc_nodeclonetruecopytext.xml45
-rw-r--r--test/testcases/tests/level1/core/hc_nodecommentnodeattributes.xml52
-rw-r--r--test/testcases/tests/level1/core/hc_nodecommentnodename.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_nodecommentnodetype.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_nodecommentnodevalue.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_nodedocumentfragmentnodename.xml39
-rw-r--r--test/testcases/tests/level1/core/hc_nodedocumentfragmentnodetype.xml39
-rw-r--r--test/testcases/tests/level1/core/hc_nodedocumentfragmentnodevalue.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_nodedocumentnodeattribute.xml38
-rw-r--r--test/testcases/tests/level1/core/hc_nodedocumentnodename.xml37
-rw-r--r--test/testcases/tests/level1/core/hc_nodedocumentnodetype.xml36
-rw-r--r--test/testcases/tests/level1/core/hc_nodedocumentnodevalue.xml38
-rw-r--r--test/testcases/tests/level1/core/hc_nodeelementnodeattributes.xml59
-rw-r--r--test/testcases/tests/level1/core/hc_nodeelementnodename.xml41
-rw-r--r--test/testcases/tests/level1/core/hc_nodeelementnodetype.xml36
-rw-r--r--test/testcases/tests/level1/core/hc_nodeelementnodevalue.xml33
-rw-r--r--test/testcases/tests/level1/core/hc_nodegetfirstchild.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_nodegetfirstchildnull.xml41
-rw-r--r--test/testcases/tests/level1/core/hc_nodegetlastchild.xml41
-rw-r--r--test/testcases/tests/level1/core/hc_nodegetlastchildnull.xml42
-rw-r--r--test/testcases/tests/level1/core/hc_nodegetnextsibling.xml41
-rw-r--r--test/testcases/tests/level1/core/hc_nodegetnextsiblingnull.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_nodegetownerdocument.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_nodegetownerdocumentnull.xml40
-rw-r--r--test/testcases/tests/level1/core/hc_nodegetprevioussibling.xml41
-rw-r--r--test/testcases/tests/level1/core/hc_nodegetprevioussiblingnull.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_nodehaschildnodes.xml39
-rw-r--r--test/testcases/tests/level1/core/hc_nodehaschildnodesfalse.xml42
-rw-r--r--test/testcases/tests/level1/core/hc_nodeinsertbefore.xml68
-rw-r--r--test/testcases/tests/level1/core/hc_nodeinsertbeforedocfragment.xml64
-rw-r--r--test/testcases/tests/level1/core/hc_nodeinsertbeforeinvalidnodetype.xml55
-rw-r--r--test/testcases/tests/level1/core/hc_nodeinsertbeforenewchilddiffdocument.xml55
-rw-r--r--test/testcases/tests/level1/core/hc_nodeinsertbeforenewchildexists.xml68
-rw-r--r--test/testcases/tests/level1/core/hc_nodeinsertbeforenodeancestor.xml53
-rw-r--r--test/testcases/tests/level1/core/hc_nodeinsertbeforenodename.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_nodeinsertbeforerefchildnonexistent.xml53
-rw-r--r--test/testcases/tests/level1/core/hc_nodeinsertbeforerefchildnull.xml53
-rw-r--r--test/testcases/tests/level1/core/hc_nodelistindexequalzero.xml53
-rw-r--r--test/testcases/tests/level1/core/hc_nodelistindexgetlength.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_nodelistindexgetlengthofemptylist.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_nodelistindexnotzero.xml52
-rw-r--r--test/testcases/tests/level1/core/hc_nodelistreturnfirstitem.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_nodelistreturnlastitem.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_nodelisttraverselist.xml65
-rw-r--r--test/testcases/tests/level1/core/hc_nodeparentnode.xml41
-rw-r--r--test/testcases/tests/level1/core/hc_nodeparentnodenull.xml38
-rw-r--r--test/testcases/tests/level1/core/hc_noderemovechild.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_noderemovechildgetnodename.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_noderemovechildnode.xml73
-rw-r--r--test/testcases/tests/level1/core/hc_noderemovechildoldchildnonexistent.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_nodereplacechild.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_nodereplacechildinvalidnodetype.xml55
-rw-r--r--test/testcases/tests/level1/core/hc_nodereplacechildnewchilddiffdocument.xml55
-rw-r--r--test/testcases/tests/level1/core/hc_nodereplacechildnewchildexists.xml67
-rw-r--r--test/testcases/tests/level1/core/hc_nodereplacechildnodeancestor.xml53
-rw-r--r--test/testcases/tests/level1/core/hc_nodereplacechildnodename.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_nodereplacechildoldchildnonexistent.xml51
-rw-r--r--test/testcases/tests/level1/core/hc_nodetextnodeattribute.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_nodetextnodename.xml37
-rw-r--r--test/testcases/tests/level1/core/hc_nodetextnodetype.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_nodetextnodevalue.xml43
-rw-r--r--test/testcases/tests/level1/core/hc_nodevalue01.xml37
-rw-r--r--test/testcases/tests/level1/core/hc_nodevalue02.xml38
-rw-r--r--test/testcases/tests/level1/core/hc_nodevalue03.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_nodevalue04.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_nodevalue05.xml37
-rw-r--r--test/testcases/tests/level1/core/hc_nodevalue06.xml35
-rw-r--r--test/testcases/tests/level1/core/hc_nodevalue07.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_nodevalue08.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_notationsremovenameditem1.xml44
-rw-r--r--test/testcases/tests/level1/core/hc_notationssetnameditem1.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_textindexsizeerrnegativeoffset.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_textindexsizeerroffsetoutofbounds.xml50
-rw-r--r--test/testcases/tests/level1/core/hc_textparseintolistofelements.xml75
-rw-r--r--test/testcases/tests/level1/core/hc_textsplittextfour.xml46
-rw-r--r--test/testcases/tests/level1/core/hc_textsplittextone.xml49
-rw-r--r--test/testcases/tests/level1/core/hc_textsplittextthree.xml48
-rw-r--r--test/testcases/tests/level1/core/hc_textsplittexttwo.xml47
-rw-r--r--test/testcases/tests/level1/core/hc_textwithnomarkup.xml47
-rw-r--r--test/testcases/tests/level1/core/metadata.xml15
-rw-r--r--test/testcases/tests/level1/core/namednodemapchildnoderange.xml49
-rw-r--r--test/testcases/tests/level1/core/namednodemapgetnameditem.xml46
-rw-r--r--test/testcases/tests/level1/core/namednodemapinuseattributeerr.xml57
-rw-r--r--test/testcases/tests/level1/core/namednodemapnotfounderr.xml49
-rw-r--r--test/testcases/tests/level1/core/namednodemapnumberofnodes.xml45
-rw-r--r--test/testcases/tests/level1/core/namednodemapremovenameditem.xml54
-rw-r--r--test/testcases/tests/level1/core/namednodemapremovenameditemgetvalue.xml56
-rw-r--r--test/testcases/tests/level1/core/namednodemapremovenameditemreturnnodevalue.xml47
-rw-r--r--test/testcases/tests/level1/core/namednodemapreturnattrnode.xml55
-rw-r--r--test/testcases/tests/level1/core/namednodemapreturnfirstitem.xml51
-rw-r--r--test/testcases/tests/level1/core/namednodemapreturnlastitem.xml51
-rw-r--r--test/testcases/tests/level1/core/namednodemapreturnnull.xml45
-rw-r--r--test/testcases/tests/level1/core/namednodemapsetnameditem.xml56
-rw-r--r--test/testcases/tests/level1/core/namednodemapsetnameditemreturnvalue.xml56
-rw-r--r--test/testcases/tests/level1/core/namednodemapsetnameditemthatexists.xml59
-rw-r--r--test/testcases/tests/level1/core/namednodemapsetnameditemwithnewvalue.xml50
-rw-r--r--test/testcases/tests/level1/core/namednodemapwrongdocumenterr.xml56
-rw-r--r--test/testcases/tests/level1/core/nodeappendchild.xml49
-rw-r--r--test/testcases/tests/level1/core/nodeappendchildchildexists.xml60
-rw-r--r--test/testcases/tests/level1/core/nodeappendchilddocfragment.xml70
-rw-r--r--test/testcases/tests/level1/core/nodeappendchildgetnodename.xml46
-rw-r--r--test/testcases/tests/level1/core/nodeappendchildinvalidnodetype.xml49
-rw-r--r--test/testcases/tests/level1/core/nodeappendchildnewchilddiffdocument.xml53
-rw-r--r--test/testcases/tests/level1/core/nodeappendchildnodeancestor.xml50
-rw-r--r--test/testcases/tests/level1/core/nodeappendchildnomodificationallowederr.xml61
-rw-r--r--test/testcases/tests/level1/core/nodeappendchildnomodificationallowederrEE.xml46
-rw-r--r--test/testcases/tests/level1/core/nodeattributenodeattribute.xml46
-rw-r--r--test/testcases/tests/level1/core/nodeattributenodename.xml50
-rw-r--r--test/testcases/tests/level1/core/nodeattributenodetype.xml48
-rw-r--r--test/testcases/tests/level1/core/nodeattributenodevalue.xml50
-rw-r--r--test/testcases/tests/level1/core/nodecdatasectionnodeattribute.xml50
-rw-r--r--test/testcases/tests/level1/core/nodecdatasectionnodename.xml48
-rw-r--r--test/testcases/tests/level1/core/nodecdatasectionnodetype.xml47
-rw-r--r--test/testcases/tests/level1/core/nodecdatasectionnodevalue.xml51
-rw-r--r--test/testcases/tests/level1/core/nodechildnodes.xml53
-rw-r--r--test/testcases/tests/level1/core/nodechildnodesappendchild.xml44
-rw-r--r--test/testcases/tests/level1/core/nodechildnodesempty.xml47
-rw-r--r--test/testcases/tests/level1/core/nodecloneattributescopied.xml54
-rw-r--r--test/testcases/tests/level1/core/nodeclonefalsenocopytext.xml46
-rw-r--r--test/testcases/tests/level1/core/nodeclonegetparentnull.xml42
-rw-r--r--test/testcases/tests/level1/core/nodeclonenodefalse.xml49
-rw-r--r--test/testcases/tests/level1/core/nodeclonenodetrue.xml83
-rw-r--r--test/testcases/tests/level1/core/nodeclonetruecopytext.xml42
-rw-r--r--test/testcases/tests/level1/core/nodecommentnodeattributes.xml50
-rw-r--r--test/testcases/tests/level1/core/nodecommentnodename.xml47
-rw-r--r--test/testcases/tests/level1/core/nodecommentnodetype.xml46
-rw-r--r--test/testcases/tests/level1/core/nodecommentnodevalue.xml46
-rw-r--r--test/testcases/tests/level1/core/nodedocumentfragmentnodename.xml39
-rw-r--r--test/testcases/tests/level1/core/nodedocumentfragmentnodetype.xml39
-rw-r--r--test/testcases/tests/level1/core/nodedocumentfragmentnodevalue.xml48
-rw-r--r--test/testcases/tests/level1/core/nodedocumentnodeattribute.xml34
-rw-r--r--test/testcases/tests/level1/core/nodedocumentnodename.xml38
-rw-r--r--test/testcases/tests/level1/core/nodedocumentnodetype.xml36
-rw-r--r--test/testcases/tests/level1/core/nodedocumentnodevalue.xml38
-rw-r--r--test/testcases/tests/level1/core/nodedocumenttypenodename.xml40
-rw-r--r--test/testcases/tests/level1/core/nodedocumenttypenodetype.xml34
-rw-r--r--test/testcases/tests/level1/core/nodedocumenttypenodevalue.xml33
-rw-r--r--test/testcases/tests/level1/core/nodeelementnodeattributes.xml52
-rw-r--r--test/testcases/tests/level1/core/nodeelementnodename.xml52
-rw-r--r--test/testcases/tests/level1/core/nodeelementnodetype.xml36
-rw-r--r--test/testcases/tests/level1/core/nodeelementnodevalue.xml33
-rw-r--r--test/testcases/tests/level1/core/nodeentitynodeattributes.xml40
-rw-r--r--test/testcases/tests/level1/core/nodeentitynodename.xml39
-rw-r--r--test/testcases/tests/level1/core/nodeentitynodetype.xml40
-rw-r--r--test/testcases/tests/level1/core/nodeentitynodevalue.xml40
-rw-r--r--test/testcases/tests/level1/core/nodeentityreferencenodeattributes.xml43
-rw-r--r--test/testcases/tests/level1/core/nodeentityreferencenodename.xml49
-rw-r--r--test/testcases/tests/level1/core/nodeentityreferencenodetype.xml47
-rw-r--r--test/testcases/tests/level1/core/nodeentityreferencenodevalue.xml49
-rw-r--r--test/testcases/tests/level1/core/nodeentitysetnodevalue.xml43
-rw-r--r--test/testcases/tests/level1/core/nodegetfirstchild.xml41
-rw-r--r--test/testcases/tests/level1/core/nodegetfirstchildnull.xml52
-rw-r--r--test/testcases/tests/level1/core/nodegetlastchild.xml41
-rw-r--r--test/testcases/tests/level1/core/nodegetlastchildnull.xml52
-rw-r--r--test/testcases/tests/level1/core/nodegetnextsibling.xml41
-rw-r--r--test/testcases/tests/level1/core/nodegetnextsiblingnull.xml48
-rw-r--r--test/testcases/tests/level1/core/nodegetownerdocument.xml50
-rw-r--r--test/testcases/tests/level1/core/nodegetownerdocumentnull.xml31
-rw-r--r--test/testcases/tests/level1/core/nodegetprevioussibling.xml41
-rw-r--r--test/testcases/tests/level1/core/nodegetprevioussiblingnull.xml48
-rw-r--r--test/testcases/tests/level1/core/nodehaschildnodes.xml39
-rw-r--r--test/testcases/tests/level1/core/nodehaschildnodesfalse.xml46
-rw-r--r--test/testcases/tests/level1/core/nodeinsertbefore.xml87
-rw-r--r--test/testcases/tests/level1/core/nodeinsertbeforedocfragment.xml63
-rw-r--r--test/testcases/tests/level1/core/nodeinsertbeforeinvalidnodetype.xml53
-rw-r--r--test/testcases/tests/level1/core/nodeinsertbeforenewchilddiffdocument.xml54
-rw-r--r--test/testcases/tests/level1/core/nodeinsertbeforenewchildexists.xml89
-rw-r--r--test/testcases/tests/level1/core/nodeinsertbeforenodeancestor.xml54
-rw-r--r--test/testcases/tests/level1/core/nodeinsertbeforenodename.xml49
-rw-r--r--test/testcases/tests/level1/core/nodeinsertbeforenomodificationallowederr.xml62
-rw-r--r--test/testcases/tests/level1/core/nodeinsertbeforenomodificationallowederrEE.xml47
-rw-r--r--test/testcases/tests/level1/core/nodeinsertbeforerefchildnonexistent.xml52
-rw-r--r--test/testcases/tests/level1/core/nodeinsertbeforerefchildnull.xml52
-rw-r--r--test/testcases/tests/level1/core/nodelistindexequalzero.xml43
-rw-r--r--test/testcases/tests/level1/core/nodelistindexgetlength.xml44
-rw-r--r--test/testcases/tests/level1/core/nodelistindexgetlengthofemptylist.xml47
-rw-r--r--test/testcases/tests/level1/core/nodelistindexnotzero.xml52
-rw-r--r--test/testcases/tests/level1/core/nodelistreturnfirstitem.xml46
-rw-r--r--test/testcases/tests/level1/core/nodelistreturnlastitem.xml48
-rw-r--r--test/testcases/tests/level1/core/nodelisttraverselist.xml78
-rw-r--r--test/testcases/tests/level1/core/nodenotationnodeattributes.xml44
-rw-r--r--test/testcases/tests/level1/core/nodenotationnodename.xml45
-rw-r--r--test/testcases/tests/level1/core/nodenotationnodetype.xml44
-rw-r--r--test/testcases/tests/level1/core/nodenotationnodevalue.xml45
-rw-r--r--test/testcases/tests/level1/core/nodeparentnode.xml47
-rw-r--r--test/testcases/tests/level1/core/nodeparentnodenull.xml37
-rw-r--r--test/testcases/tests/level1/core/nodeprocessinginstructionnodeattributes.xml44
-rw-r--r--test/testcases/tests/level1/core/nodeprocessinginstructionnodename.xml46
-rw-r--r--test/testcases/tests/level1/core/nodeprocessinginstructionnodetype.xml46
-rw-r--r--test/testcases/tests/level1/core/nodeprocessinginstructionnodevalue.xml40
-rw-r--r--test/testcases/tests/level1/core/nodeprocessinginstructionsetnodevalue.xml43
-rw-r--r--test/testcases/tests/level1/core/noderemovechild.xml45
-rw-r--r--test/testcases/tests/level1/core/noderemovechildgetnodename.xml51
-rw-r--r--test/testcases/tests/level1/core/noderemovechildnode.xml57
-rw-r--r--test/testcases/tests/level1/core/noderemovechildnomodificationallowederr.xml59
-rw-r--r--test/testcases/tests/level1/core/noderemovechildnomodificationallowederrEE.xml47
-rw-r--r--test/testcases/tests/level1/core/noderemovechildoldchildnonexistent.xml49
-rw-r--r--test/testcases/tests/level1/core/nodereplacechild.xml50
-rw-r--r--test/testcases/tests/level1/core/nodereplacechildinvalidnodetype.xml53
-rw-r--r--test/testcases/tests/level1/core/nodereplacechildnewchilddiffdocument.xml54
-rw-r--r--test/testcases/tests/level1/core/nodereplacechildnewchildexists.xml84
-rw-r--r--test/testcases/tests/level1/core/nodereplacechildnodeancestor.xml54
-rw-r--r--test/testcases/tests/level1/core/nodereplacechildnodename.xml54
-rw-r--r--test/testcases/tests/level1/core/nodereplacechildnomodificationallowederr.xml60
-rw-r--r--test/testcases/tests/level1/core/nodereplacechildnomodificationallowederrEE.xml48
-rw-r--r--test/testcases/tests/level1/core/nodereplacechildoldchildnonexistent.xml51
-rw-r--r--test/testcases/tests/level1/core/nodesetnodevaluenomodificationallowederr.xml62
-rw-r--r--test/testcases/tests/level1/core/nodesetnodevaluenomodificationallowederrEE.xml42
-rw-r--r--test/testcases/tests/level1/core/nodetextnodeattribute.xml44
-rw-r--r--test/testcases/tests/level1/core/nodetextnodename.xml50
-rw-r--r--test/testcases/tests/level1/core/nodetextnodetype.xml48
-rw-r--r--test/testcases/tests/level1/core/nodetextnodevalue.xml42
-rw-r--r--test/testcases/tests/level1/core/nodevalue01.xml37
-rw-r--r--test/testcases/tests/level1/core/nodevalue02.xml38
-rw-r--r--test/testcases/tests/level1/core/nodevalue03.xml38
-rw-r--r--test/testcases/tests/level1/core/nodevalue04.xml38
-rw-r--r--test/testcases/tests/level1/core/nodevalue05.xml37
-rw-r--r--test/testcases/tests/level1/core/nodevalue06.xml35
-rw-r--r--test/testcases/tests/level1/core/nodevalue07.xml44
-rw-r--r--test/testcases/tests/level1/core/nodevalue08.xml44
-rw-r--r--test/testcases/tests/level1/core/nodevalue09.xml36
-rw-r--r--test/testcases/tests/level1/core/notationgetnotationname.xml43
-rw-r--r--test/testcases/tests/level1/core/notationgetpublicid.xml40
-rw-r--r--test/testcases/tests/level1/core/notationgetpublicidnull.xml45
-rw-r--r--test/testcases/tests/level1/core/notationgetsystemid.xml45
-rw-r--r--test/testcases/tests/level1/core/notationgetsystemidnull.xml41
-rw-r--r--test/testcases/tests/level1/core/processinginstructiongetdata.xml43
-rw-r--r--test/testcases/tests/level1/core/processinginstructiongettarget.xml42
-rw-r--r--test/testcases/tests/level1/core/processinginstructionsetdatanomodificationallowederr.xml53
-rw-r--r--test/testcases/tests/level1/core/processinginstructionsetdatanomodificationallowederrEE.xml57
-rw-r--r--test/testcases/tests/level1/core/textindexsizeerrnegativeoffset.xml49
-rw-r--r--test/testcases/tests/level1/core/textindexsizeerroffsetoutofbounds.xml50
-rw-r--r--test/testcases/tests/level1/core/textparseintolistofelements.xml74
-rw-r--r--test/testcases/tests/level1/core/textsplittextfour.xml46
-rw-r--r--test/testcases/tests/level1/core/textsplittextnomodificationallowederr.xml62
-rw-r--r--test/testcases/tests/level1/core/textsplittextnomodificationallowederrEE.xml43
-rw-r--r--test/testcases/tests/level1/core/textsplittextone.xml49
-rw-r--r--test/testcases/tests/level1/core/textsplittextthree.xml48
-rw-r--r--test/testcases/tests/level1/core/textsplittexttwo.xml47
-rw-r--r--test/testcases/tests/level1/core/textwithnomarkup.xml47
-rw-r--r--test/testcases/tests/level1/html/.cvsignore2
-rw-r--r--test/testcases/tests/level1/html/CVS/Entries642
-rw-r--r--test/testcases/tests/level1/html/CVS/Repository1
-rw-r--r--test/testcases/tests/level1/html/CVS/Root1
-rw-r--r--test/testcases/tests/level1/html/CVS/Template0
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement04.xml41
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement05.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement06.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement07.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement08.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement09.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement10.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement11.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement12.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement13.xml37
-rw-r--r--test/testcases/tests/level1/html/HTMLAnchorElement14.xml37
-rw-r--r--test/testcases/tests/level1/html/HTMLAppletElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLAppletElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLAppletElement03.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAppletElement04.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAppletElement05.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAppletElement06.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAppletElement07.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLAppletElement08.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAppletElement09.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLAppletElement10.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAppletElement11.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLAreaElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLAreaElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLAreaElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLAreaElement04.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAreaElement05.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAreaElement06.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLAreaElement07.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLAreaElement08.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLBRElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLBaseElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLBaseElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLBaseFontElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLBaseFontElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLBaseFontElement03.xml49
-rw-r--r--test/testcases/tests/level1/html/HTMLBodyElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLBodyElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLBodyElement03.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLBodyElement04.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLBodyElement05.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLBodyElement06.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLButtonElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLButtonElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLButtonElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLButtonElement04.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLButtonElement05.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLButtonElement06.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLButtonElement07.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLButtonElement08.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection01.xml49
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection02.xml49
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection03.xml49
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection04.xml59
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection05.xml46
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection06.xml50
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection07.xml49
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection08.xml49
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection09.xml47
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection10.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection11.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLCollection12.xml50
-rw-r--r--test/testcases/tests/level1/html/HTMLDirectoryElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLDivElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLDlistElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument01.xml38
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument02.xml40
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument03.xml40
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument04.xml39
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument05.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument07.xml41
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument08.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument09.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument10.xml41
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument11.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument12.xml38
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument13.xml39
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument14.xml40
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument15.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument16.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument17.xml41
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument18.xml32
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument19.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument20.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLDocument21.xml60
-rw-r--r--test/testcases/tests/level1/html/HTMLElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement03.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement04.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement05.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement06.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement07.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement08.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement09.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement10.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement100.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement101.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement102.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement103.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement104.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement105.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement106.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement107.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement108.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement109.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement11.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement110.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement111.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement112.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement113.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement114.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement115.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement116.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement117.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement118.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement119.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement12.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement120.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement121.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement122.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement123.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement124.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement125.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement126.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement127.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement128.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement129.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement13.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement130.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement131.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement132.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement133.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement134.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement135.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement136.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement137.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement138.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement139.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement14.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement140.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement141.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement142.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement143.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement144.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement145.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement15.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement16.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement17.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement18.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement19.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement20.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement21.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement22.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement23.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement24.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement25.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement26.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement27.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement28.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement29.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement30.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement31.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement32.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement33.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement34.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement35.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement36.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement37.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement38.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement39.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement40.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement41.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement42.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement43.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement44.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement45.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement46.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement47.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement48.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement49.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement50.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement51.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement52.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement53.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement54.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement55.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement56.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement57.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement58.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement59.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement60.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement61.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement62.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement63.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement64.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement65.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement66.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement67.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement68.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement69.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement70.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement71.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement72.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement73.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement74.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement75.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement76.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement77.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement78.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement79.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement80.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement81.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement82.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement83.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement84.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement85.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement86.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement87.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement88.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement89.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement90.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement91.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement92.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement93.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement94.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement95.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement96.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement97.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement98.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLElement99.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLFieldSetElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLFieldSetElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLFontElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLFontElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLFontElement03.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLFormElement01.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLFormElement02.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLFormElement03.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLFormElement04.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLFormElement05.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLFormElement06.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLFormElement07.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLFormElement08.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLFormElement09.xml37
-rw-r--r--test/testcases/tests/level1/html/HTMLFormElement10.xml37
-rw-r--r--test/testcases/tests/level1/html/HTMLFrameElement01.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLFrameElement02.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLFrameElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLFrameElement04.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLFrameElement05.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLFrameElement06.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLFrameElement07.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLFrameElement08.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLFrameSetElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLFrameSetElement02.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLHRElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLHRElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLHRElement03.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLHRElement04.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLHeadElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLHeadingElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLHeadingElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLHeadingElement03.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLHeadingElement04.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLHeadingElement05.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLHeadingElement06.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLHtmlElement01.xml47
-rw-r--r--test/testcases/tests/level1/html/HTMLIFrameElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLIFrameElement02.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLIFrameElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLIFrameElement04.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLIFrameElement05.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLIFrameElement06.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLIFrameElement07.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLIFrameElement08.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLIFrameElement09.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLIFrameElement10.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement04.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement05.xml49
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement06.xml52
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement07.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement08.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement09.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement10.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement11.xml52
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement12.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLImageElement14.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement02.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement03.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement04.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement05.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement06.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement07.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement08.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement09.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement10.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement11.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement12.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement13.xml54
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement14.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement15.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement16.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement17.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement18.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement19.xml37
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement20.xml37
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement21.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLInputElement22.xml38
-rw-r--r--test/testcases/tests/level1/html/HTMLIsIndexElement01.xml50
-rw-r--r--test/testcases/tests/level1/html/HTMLIsIndexElement02.xml50
-rw-r--r--test/testcases/tests/level1/html/HTMLIsIndexElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLLIElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLLIElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLLabelElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLLabelElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLLabelElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLLabelElement04.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLLegendElement01.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLLegendElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLLegendElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLLegendElement04.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLLinkElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLLinkElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLLinkElement03.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLLinkElement04.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLLinkElement05.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLLinkElement06.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLLinkElement07.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLLinkElement08.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLLinkElement09.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLMapElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLMapElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLMenuElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLMetaElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLMetaElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLMetaElement03.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLMetaElement04.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLModElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLModElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLModElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLModElement04.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLOListElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLOListElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLOListElement03.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement03.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement04.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement05.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement06.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement07.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement08.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement09.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement10.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement11.xml53
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement12.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement13.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement14.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement15.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement16.xml53
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement17.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement18.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLObjectElement19.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLOptGroupElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLOptGroupElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLOptionElement01.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLOptionElement02.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLOptionElement03.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLOptionElement04.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLOptionElement05.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLOptionElement06.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLOptionElement07.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLOptionElement08.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLOptionElement09.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLParagraphElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLParamElement01.xml41
-rw-r--r--test/testcases/tests/level1/html/HTMLParamElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLParamElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLParamElement04.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLPreElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLQuoteElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLQuoteElement02.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLScriptElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLScriptElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLScriptElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLScriptElement04.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLScriptElement05.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLScriptElement06.xml38
-rw-r--r--test/testcases/tests/level1/html/HTMLScriptElement07.xml38
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement02.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement03.xml49
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement04.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement05.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement06.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement07.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement08.xml59
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement09.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement10.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement11.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement12.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement13.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement14.xml37
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement15.xml37
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement16.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement17.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement18.xml57
-rw-r--r--test/testcases/tests/level1/html/HTMLSelectElement19.xml61
-rw-r--r--test/testcases/tests/level1/html/HTMLStyleElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLStyleElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLStyleElement03.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCaptionElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement02.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement03.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement04.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement05.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement06.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement07.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement08.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement09.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement10.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement11.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement12.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement13.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement14.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement15.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement16.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement17.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement18.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement19.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement20.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement21.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement22.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement23.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement24.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement25.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement26.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement27.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement28.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement29.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableCellElement30.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement02.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement03.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement04.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement05.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement06.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement07.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement08.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement09.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement10.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement11.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableColElement12.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement01.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement02.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement03.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement04.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement05.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement06.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement07.xml57
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement08.xml54
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement09.xml57
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement10.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement11.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement12.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement13.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement14.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement15.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement16.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement17.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement18.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement19.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement20.xml50
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement21.xml62
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement22.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement23.xml50
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement24.xml62
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement25.xml49
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement26.xml52
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement27.xml47
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement28.xml57
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement29.xml61
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement30.xml64
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement31.xml65
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement32.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLTableElement33.xml50
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement01.xml46
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement02.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement03.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement04.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement05.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement06.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement07.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement08.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement09.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement10.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement11.xml67
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement12.xml66
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement13.xml66
-rw-r--r--test/testcases/tests/level1/html/HTMLTableRowElement14.xml66
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement02.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement03.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement04.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement05.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement06.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement07.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement08.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement09.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement10.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement11.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement12.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement13.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement14.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement15.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement16.xml52
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement17.xml52
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement18.xml52
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement19.xml53
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement20.xml53
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement21.xml54
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement22.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement23.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLTableSectionElement24.xml51
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement01.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement02.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement03.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement04.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement05.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement06.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement07.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement08.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement09.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement10.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement11.xml45
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement12.xml44
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement13.xml37
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement14.xml37
-rw-r--r--test/testcases/tests/level1/html/HTMLTextAreaElement15.xml37
-rw-r--r--test/testcases/tests/level1/html/HTMLTitleElement01.xml42
-rw-r--r--test/testcases/tests/level1/html/HTMLUListElement01.xml43
-rw-r--r--test/testcases/tests/level1/html/HTMLUListElement02.xml42
-rw-r--r--test/testcases/tests/level1/html/alltests.xml659
-rw-r--r--test/testcases/tests/level1/html/anchor01.xml40
-rw-r--r--test/testcases/tests/level1/html/anchor02.xml40
-rw-r--r--test/testcases/tests/level1/html/anchor03.xml40
-rw-r--r--test/testcases/tests/level1/html/anchor04.xml40
-rw-r--r--test/testcases/tests/level1/html/anchor05.xml40
-rw-r--r--test/testcases/tests/level1/html/anchor06.xml40
-rw-r--r--test/testcases/tests/level1/html/area01.xml39
-rw-r--r--test/testcases/tests/level1/html/area02.xml39
-rw-r--r--test/testcases/tests/level1/html/area03.xml39
-rw-r--r--test/testcases/tests/level1/html/area04.xml39
-rw-r--r--test/testcases/tests/level1/html/basefont01.xml39
-rw-r--r--test/testcases/tests/level1/html/body01.xml40
-rw-r--r--test/testcases/tests/level1/html/button01.xml39
-rw-r--r--test/testcases/tests/level1/html/button02.xml42
-rw-r--r--test/testcases/tests/level1/html/button03.xml42
-rw-r--r--test/testcases/tests/level1/html/button04.xml42
-rw-r--r--test/testcases/tests/level1/html/button05.xml40
-rw-r--r--test/testcases/tests/level1/html/button06.xml40
-rw-r--r--test/testcases/tests/level1/html/button07.xml40
-rw-r--r--test/testcases/tests/level1/html/button08.xml40
-rw-r--r--test/testcases/tests/level1/html/button09.xml40
-rw-r--r--test/testcases/tests/level1/html/dlist01.xml39
-rw-r--r--test/testcases/tests/level1/html/doc01.xml34
-rw-r--r--test/testcases/tests/level1/html/files/.cvsignore6
-rw-r--r--test/testcases/tests/level1/html/files/CVS/Entries196
-rw-r--r--test/testcases/tests/level1/html/files/CVS/Repository1
-rw-r--r--test/testcases/tests/level1/html/files/CVS/Root1
-rw-r--r--test/testcases/tests/level1/html/files/CVS/Template0
-rw-r--r--test/testcases/tests/level1/html/files/anchor.html12
-rw-r--r--test/testcases/tests/level1/html/files/anchor.xhtml14
-rw-r--r--test/testcases/tests/level1/html/files/anchor.xml14
-rw-r--r--test/testcases/tests/level1/html/files/anchor2.html13
-rw-r--r--test/testcases/tests/level1/html/files/anchor2.xhtml14
-rw-r--r--test/testcases/tests/level1/html/files/anchor2.xml14
-rw-r--r--test/testcases/tests/level1/html/files/applet.html12
-rw-r--r--test/testcases/tests/level1/html/files/applet.xhtml15
-rw-r--r--test/testcases/tests/level1/html/files/applet.xml15
-rw-r--r--test/testcases/tests/level1/html/files/applet2.html12
-rw-r--r--test/testcases/tests/level1/html/files/applet2.xhtml15
-rw-r--r--test/testcases/tests/level1/html/files/applet2.xml15
-rw-r--r--test/testcases/tests/level1/html/files/area.html14
-rw-r--r--test/testcases/tests/level1/html/files/area.xhtml17
-rw-r--r--test/testcases/tests/level1/html/files/area.xml17
-rw-r--r--test/testcases/tests/level1/html/files/area2.html15
-rw-r--r--test/testcases/tests/level1/html/files/area2.xhtml16
-rw-r--r--test/testcases/tests/level1/html/files/area2.xml16
-rw-r--r--test/testcases/tests/level1/html/files/base.html11
-rw-r--r--test/testcases/tests/level1/html/files/base.xhtml13
-rw-r--r--test/testcases/tests/level1/html/files/base.xml13
-rw-r--r--test/testcases/tests/level1/html/files/base2.html15
-rw-r--r--test/testcases/tests/level1/html/files/base2.xhtml16
-rw-r--r--test/testcases/tests/level1/html/files/base2.xml16
-rw-r--r--test/testcases/tests/level1/html/files/basefont.html12
-rw-r--r--test/testcases/tests/level1/html/files/basefont.xhtml14
-rw-r--r--test/testcases/tests/level1/html/files/basefont.xml14
-rw-r--r--test/testcases/tests/level1/html/files/body.html10
-rw-r--r--test/testcases/tests/level1/html/files/body.xhtml12
-rw-r--r--test/testcases/tests/level1/html/files/body.xml13
-rw-r--r--test/testcases/tests/level1/html/files/br.html12
-rw-r--r--test/testcases/tests/level1/html/files/br.xhtml14
-rw-r--r--test/testcases/tests/level1/html/files/br.xml14
-rw-r--r--test/testcases/tests/level1/html/files/button.html21
-rw-r--r--test/testcases/tests/level1/html/files/button.xhtml24
-rw-r--r--test/testcases/tests/level1/html/files/button.xml24
-rw-r--r--test/testcases/tests/level1/html/files/collection.html79
-rw-r--r--test/testcases/tests/level1/html/files/collection.xhtml82
-rw-r--r--test/testcases/tests/level1/html/files/collection.xml82
-rw-r--r--test/testcases/tests/level1/html/files/directory.html14
-rw-r--r--test/testcases/tests/level1/html/files/directory.xhtml16
-rw-r--r--test/testcases/tests/level1/html/files/directory.xml16
-rw-r--r--test/testcases/tests/level1/html/files/div.html10
-rw-r--r--test/testcases/tests/level1/html/files/div.xhtml12
-rw-r--r--test/testcases/tests/level1/html/files/div.xml12
-rw-r--r--test/testcases/tests/level1/html/files/dl.html15
-rw-r--r--test/testcases/tests/level1/html/files/dl.xhtml17
-rw-r--r--test/testcases/tests/level1/html/files/dl.xml17
-rw-r--r--test/testcases/tests/level1/html/files/document.html36
-rw-r--r--test/testcases/tests/level1/html/files/document.xhtml39
-rw-r--r--test/testcases/tests/level1/html/files/document.xml39
-rw-r--r--test/testcases/tests/level1/html/files/element.html81
-rw-r--r--test/testcases/tests/level1/html/files/element.xhtml83
-rw-r--r--test/testcases/tests/level1/html/files/element.xml83
-rw-r--r--test/testcases/tests/level1/html/files/fieldset.html23
-rw-r--r--test/testcases/tests/level1/html/files/fieldset.xhtml25
-rw-r--r--test/testcases/tests/level1/html/files/fieldset.xml25
-rw-r--r--test/testcases/tests/level1/html/files/font.html10
-rw-r--r--test/testcases/tests/level1/html/files/font.xhtml12
-rw-r--r--test/testcases/tests/level1/html/files/font.xml12
-rw-r--r--test/testcases/tests/level1/html/files/form.html17
-rw-r--r--test/testcases/tests/level1/html/files/form.xhtml18
-rw-r--r--test/testcases/tests/level1/html/files/form.xml18
-rw-r--r--test/testcases/tests/level1/html/files/form2.html17
-rw-r--r--test/testcases/tests/level1/html/files/form2.xhtml18
-rw-r--r--test/testcases/tests/level1/html/files/form2.xml18
-rw-r--r--test/testcases/tests/level1/html/files/form3.html17
-rw-r--r--test/testcases/tests/level1/html/files/form3.xhtml18
-rw-r--r--test/testcases/tests/level1/html/files/form3.xml18
-rw-r--r--test/testcases/tests/level1/html/files/frame.html14
-rw-r--r--test/testcases/tests/level1/html/files/frame.xhtml15
-rw-r--r--test/testcases/tests/level1/html/files/frame.xml15
-rw-r--r--test/testcases/tests/level1/html/files/frameset.html14
-rw-r--r--test/testcases/tests/level1/html/files/frameset.xhtml15
-rw-r--r--test/testcases/tests/level1/html/files/frameset.xml15
-rw-r--r--test/testcases/tests/level1/html/files/head.html11
-rw-r--r--test/testcases/tests/level1/html/files/head.xhtml13
-rw-r--r--test/testcases/tests/level1/html/files/head.xml13
-rw-r--r--test/testcases/tests/level1/html/files/heading.html16
-rw-r--r--test/testcases/tests/level1/html/files/heading.xhtml18
-rw-r--r--test/testcases/tests/level1/html/files/heading.xml18
-rw-r--r--test/testcases/tests/level1/html/files/hr.html11
-rw-r--r--test/testcases/tests/level1/html/files/hr.xhtml13
-rw-r--r--test/testcases/tests/level1/html/files/hr.xml13
-rw-r--r--test/testcases/tests/level1/html/files/html.html12
-rw-r--r--test/testcases/tests/level1/html/files/html.xhtml14
-rw-r--r--test/testcases/tests/level1/html/files/html.xml14
-rw-r--r--test/testcases/tests/level1/html/files/iframe.html10
-rw-r--r--test/testcases/tests/level1/html/files/iframe.xhtml12
-rw-r--r--test/testcases/tests/level1/html/files/iframe.xml12
-rw-r--r--test/testcases/tests/level1/html/files/img.html13
-rw-r--r--test/testcases/tests/level1/html/files/img.xhtml15
-rw-r--r--test/testcases/tests/level1/html/files/img.xml15
-rw-r--r--test/testcases/tests/level1/html/files/input.html60
-rw-r--r--test/testcases/tests/level1/html/files/input.xhtml62
-rw-r--r--test/testcases/tests/level1/html/files/input.xml62
-rw-r--r--test/testcases/tests/level1/html/files/isindex.html14
-rw-r--r--test/testcases/tests/level1/html/files/isindex.xhtml15
-rw-r--r--test/testcases/tests/level1/html/files/isindex.xml15
-rw-r--r--test/testcases/tests/level1/html/files/label.html21
-rw-r--r--test/testcases/tests/level1/html/files/label.xhtml22
-rw-r--r--test/testcases/tests/level1/html/files/label.xml22
-rw-r--r--test/testcases/tests/level1/html/files/legend.html22
-rw-r--r--test/testcases/tests/level1/html/files/legend.xhtml23
-rw-r--r--test/testcases/tests/level1/html/files/legend.xml23
-rw-r--r--test/testcases/tests/level1/html/files/li.html23
-rw-r--r--test/testcases/tests/level1/html/files/li.xhtml25
-rw-r--r--test/testcases/tests/level1/html/files/li.xml25
-rw-r--r--test/testcases/tests/level1/html/files/link.html15
-rw-r--r--test/testcases/tests/level1/html/files/link.xhtml17
-rw-r--r--test/testcases/tests/level1/html/files/link.xml17
-rw-r--r--test/testcases/tests/level1/html/files/link2.html15
-rw-r--r--test/testcases/tests/level1/html/files/link2.xhtml17
-rw-r--r--test/testcases/tests/level1/html/files/link2.xml17
-rw-r--r--test/testcases/tests/level1/html/files/map.html16
-rw-r--r--test/testcases/tests/level1/html/files/map.xhtml18
-rw-r--r--test/testcases/tests/level1/html/files/map.xml18
-rw-r--r--test/testcases/tests/level1/html/files/menu.html15
-rw-r--r--test/testcases/tests/level1/html/files/menu.xhtml17
-rw-r--r--test/testcases/tests/level1/html/files/menu.xml17
-rw-r--r--test/testcases/tests/level1/html/files/meta.html13
-rw-r--r--test/testcases/tests/level1/html/files/meta.xhtml16
-rw-r--r--test/testcases/tests/level1/html/files/meta.xml16
-rw-r--r--test/testcases/tests/level1/html/files/mod.html15
-rw-r--r--test/testcases/tests/level1/html/files/mod.xhtml17
-rw-r--r--test/testcases/tests/level1/html/files/mod.xml17
-rw-r--r--test/testcases/tests/level1/html/files/object.html18
-rw-r--r--test/testcases/tests/level1/html/files/object.xhtml20
-rw-r--r--test/testcases/tests/level1/html/files/object.xml20
-rw-r--r--test/testcases/tests/level1/html/files/object2.html17
-rw-r--r--test/testcases/tests/level1/html/files/object2.xhtml20
-rw-r--r--test/testcases/tests/level1/html/files/object2.xml20
-rw-r--r--test/testcases/tests/level1/html/files/olist.html32
-rw-r--r--test/testcases/tests/level1/html/files/olist.xhtml34
-rw-r--r--test/testcases/tests/level1/html/files/olist.xml34
-rw-r--r--test/testcases/tests/level1/html/files/optgroup.html25
-rw-r--r--test/testcases/tests/level1/html/files/optgroup.xhtml27
-rw-r--r--test/testcases/tests/level1/html/files/optgroup.xml27
-rw-r--r--test/testcases/tests/level1/html/files/option.html36
-rw-r--r--test/testcases/tests/level1/html/files/option.xhtml33
-rw-r--r--test/testcases/tests/level1/html/files/option.xml33
-rw-r--r--test/testcases/tests/level1/html/files/paragraph.html13
-rw-r--r--test/testcases/tests/level1/html/files/paragraph.xhtml15
-rw-r--r--test/testcases/tests/level1/html/files/paragraph.xml15
-rw-r--r--test/testcases/tests/level1/html/files/param.html14
-rw-r--r--test/testcases/tests/level1/html/files/param.xhtml17
-rw-r--r--test/testcases/tests/level1/html/files/param.xml17
-rw-r--r--test/testcases/tests/level1/html/files/pre.html17
-rw-r--r--test/testcases/tests/level1/html/files/pre.xhtml19
-rw-r--r--test/testcases/tests/level1/html/files/pre.xml19
-rw-r--r--test/testcases/tests/level1/html/files/quote.html16
-rw-r--r--test/testcases/tests/level1/html/files/quote.xhtml18
-rw-r--r--test/testcases/tests/level1/html/files/quote.xml18
-rw-r--r--test/testcases/tests/level1/html/files/right.pngbin0 -> 137 bytes
-rw-r--r--test/testcases/tests/level1/html/files/script.html11
-rw-r--r--test/testcases/tests/level1/html/files/script.xhtml13
-rw-r--r--test/testcases/tests/level1/html/files/script.xml13
-rw-r--r--test/testcases/tests/level1/html/files/select.html44
-rw-r--r--test/testcases/tests/level1/html/files/select.xhtml41
-rw-r--r--test/testcases/tests/level1/html/files/select.xml41
-rw-r--r--test/testcases/tests/level1/html/files/style.html12
-rw-r--r--test/testcases/tests/level1/html/files/style.xhtml14
-rw-r--r--test/testcases/tests/level1/html/files/style.xml14
-rw-r--r--test/testcases/tests/level1/html/files/table.html78
-rw-r--r--test/testcases/tests/level1/html/files/table.xhtml81
-rw-r--r--test/testcases/tests/level1/html/files/table.xml81
-rw-r--r--test/testcases/tests/level1/html/files/table1.html12
-rw-r--r--test/testcases/tests/level1/html/files/table1.xhtml15
-rw-r--r--test/testcases/tests/level1/html/files/table1.xml15
-rw-r--r--test/testcases/tests/level1/html/files/tablecaption.html25
-rw-r--r--test/testcases/tests/level1/html/files/tablecaption.xhtml21
-rw-r--r--test/testcases/tests/level1/html/files/tablecaption.xml21
-rw-r--r--test/testcases/tests/level1/html/files/tablecell.html23
-rw-r--r--test/testcases/tests/level1/html/files/tablecell.xhtml26
-rw-r--r--test/testcases/tests/level1/html/files/tablecell.xml26
-rw-r--r--test/testcases/tests/level1/html/files/tablecol.html35
-rw-r--r--test/testcases/tests/level1/html/files/tablecol.xhtml29
-rw-r--r--test/testcases/tests/level1/html/files/tablecol.xml29
-rw-r--r--test/testcases/tests/level1/html/files/tablerow.html59
-rw-r--r--test/testcases/tests/level1/html/files/tablerow.xhtml62
-rw-r--r--test/testcases/tests/level1/html/files/tablerow.xml62
-rw-r--r--test/testcases/tests/level1/html/files/tablesection.html62
-rw-r--r--test/testcases/tests/level1/html/files/tablesection.xhtml65
-rw-r--r--test/testcases/tests/level1/html/files/tablesection.xml65
-rw-r--r--test/testcases/tests/level1/html/files/textarea.html26
-rw-r--r--test/testcases/tests/level1/html/files/textarea.xhtml27
-rw-r--r--test/testcases/tests/level1/html/files/textarea.xml27
-rw-r--r--test/testcases/tests/level1/html/files/title.html13
-rw-r--r--test/testcases/tests/level1/html/files/title.xhtml15
-rw-r--r--test/testcases/tests/level1/html/files/title.xml15
-rw-r--r--test/testcases/tests/level1/html/files/ulist.html36
-rw-r--r--test/testcases/tests/level1/html/files/ulist.xhtml38
-rw-r--r--test/testcases/tests/level1/html/files/ulist.xml38
-rw-r--r--test/testcases/tests/level1/html/files/w3c_main.pngbin0 -> 5904 bytes
-rw-r--r--test/testcases/tests/level1/html/hasFeature01.xml31
-rw-r--r--test/testcases/tests/level1/html/index.htm240
-rw-r--r--test/testcases/tests/level1/html/metadata.xml15
-rw-r--r--test/testcases/tests/level1/html/object01.xml40
-rw-r--r--test/testcases/tests/level1/html/object02.xml40
-rw-r--r--test/testcases/tests/level1/html/object03.xml40
-rw-r--r--test/testcases/tests/level1/html/object04.xml40
-rw-r--r--test/testcases/tests/level1/html/object05.xml40
-rw-r--r--test/testcases/tests/level1/html/object06.xml40
-rw-r--r--test/testcases/tests/level1/html/object07.xml39
-rw-r--r--test/testcases/tests/level1/html/object08.xml49
-rw-r--r--test/testcases/tests/level1/html/object09.xml40
-rw-r--r--test/testcases/tests/level1/html/object10.xml40
-rw-r--r--test/testcases/tests/level1/html/object11.xml40
-rw-r--r--test/testcases/tests/level1/html/object12.xml39
-rw-r--r--test/testcases/tests/level1/html/object13.xml49
-rw-r--r--test/testcases/tests/level1/html/object14.xml39
-rw-r--r--test/testcases/tests/level1/html/object15.xml40
-rw-r--r--test/testcases/tests/level1/html/table01.xml40
-rw-r--r--test/testcases/tests/level1/html/table02.xml42
-rw-r--r--test/testcases/tests/level1/html/table03.xml42
-rw-r--r--test/testcases/tests/level1/html/table04.xml42
-rw-r--r--test/testcases/tests/level1/html/table06.xml42
-rw-r--r--test/testcases/tests/level1/html/table07.xml44
-rw-r--r--test/testcases/tests/level1/html/table08.xml42
-rw-r--r--test/testcases/tests/level1/html/table09.xml42
-rw-r--r--test/testcases/tests/level1/html/table10.xml42
-rw-r--r--test/testcases/tests/level1/html/table12.xml42
-rw-r--r--test/testcases/tests/level1/html/table15.xml44
-rw-r--r--test/testcases/tests/level1/html/table17.xml42
-rw-r--r--test/testcases/tests/level1/html/table18.xml40
-rw-r--r--test/testcases/tests/level1/html/table19.xml41
-rw-r--r--test/testcases/tests/level1/html/table20.xml40
-rw-r--r--test/testcases/tests/level1/html/table21.xml40
-rw-r--r--test/testcases/tests/level1/html/table22.xml40
-rw-r--r--test/testcases/tests/level1/html/table23.xml40
-rw-r--r--test/testcases/tests/level1/html/table24.xml40
-rw-r--r--test/testcases/tests/level1/html/table25.xml40
-rw-r--r--test/testcases/tests/level1/html/table26.xml39
-rw-r--r--test/testcases/tests/level1/html/table27.xml40
-rw-r--r--test/testcases/tests/level1/html/table28.xml40
-rw-r--r--test/testcases/tests/level1/html/table29.xml40
-rw-r--r--test/testcases/tests/level1/html/table30.xml40
-rw-r--r--test/testcases/tests/level1/html/table31.xml40
-rw-r--r--test/testcases/tests/level1/html/table32.xml40
-rw-r--r--test/testcases/tests/level1/html/table33.xml40
-rw-r--r--test/testcases/tests/level1/html/table34.xml40
-rw-r--r--test/testcases/tests/level1/html/table35.xml40
-rw-r--r--test/testcases/tests/level1/html/table36.xml40
-rw-r--r--test/testcases/tests/level1/html/table37.xml39
-rw-r--r--test/testcases/tests/level1/html/table38.xml40
-rw-r--r--test/testcases/tests/level1/html/table39.xml40
-rw-r--r--test/testcases/tests/level1/html/table40.xml40
-rw-r--r--test/testcases/tests/level1/html/table41.xml40
-rw-r--r--test/testcases/tests/level1/html/table42.xml40
-rw-r--r--test/testcases/tests/level1/html/table43.xml40
-rw-r--r--test/testcases/tests/level1/html/table44.xml40
-rw-r--r--test/testcases/tests/level1/html/table45.xml40
-rw-r--r--test/testcases/tests/level1/html/table46.xml40
-rw-r--r--test/testcases/tests/level1/html/table47.xml40
-rw-r--r--test/testcases/tests/level1/html/table48.xml40
-rw-r--r--test/testcases/tests/level1/html/table49.xml40
-rw-r--r--test/testcases/tests/level1/html/table50.xml40
-rw-r--r--test/testcases/tests/level1/html/table51.xml40
-rw-r--r--test/testcases/tests/level1/html/table52.xml40
-rw-r--r--test/testcases/tests/level1/html/table53.xml40
-rw-r--r--test/testcases/tests/level2/CVS/Entries3
-rw-r--r--test/testcases/tests/level2/CVS/Repository1
-rw-r--r--test/testcases/tests/level2/CVS/Root1
-rw-r--r--test/testcases/tests/level2/CVS/Template0
-rw-r--r--test/testcases/tests/level2/core/.cvsignore2
-rw-r--r--test/testcases/tests/level2/core/CVS/Entries287
-rw-r--r--test/testcases/tests/level2/core/CVS/Repository1
-rw-r--r--test/testcases/tests/level2/core/CVS/Root1
-rw-r--r--test/testcases/tests/level2/core/CVS/Template0
-rw-r--r--test/testcases/tests/level2/core/alltests.xml301
-rw-r--r--test/testcases/tests/level2/core/attrgetownerelement01.xml52
-rw-r--r--test/testcases/tests/level2/core/attrgetownerelement02.xml47
-rw-r--r--test/testcases/tests/level2/core/attrgetownerelement03.xml40
-rw-r--r--test/testcases/tests/level2/core/attrgetownerelement04.xml40
-rw-r--r--test/testcases/tests/level2/core/attrgetownerelement05.xml55
-rw-r--r--test/testcases/tests/level2/core/createAttributeNS01.xml48
-rw-r--r--test/testcases/tests/level2/core/createAttributeNS02.xml47
-rw-r--r--test/testcases/tests/level2/core/createAttributeNS03.xml78
-rw-r--r--test/testcases/tests/level2/core/createAttributeNS04.xml50
-rw-r--r--test/testcases/tests/level2/core/createAttributeNS05.xml44
-rw-r--r--test/testcases/tests/level2/core/createAttributeNS06.xml40
-rw-r--r--test/testcases/tests/level2/core/createDocument01.xml53
-rw-r--r--test/testcases/tests/level2/core/createDocument02.xml50
-rw-r--r--test/testcases/tests/level2/core/createDocument03.xml51
-rw-r--r--test/testcases/tests/level2/core/createDocument04.xml53
-rw-r--r--test/testcases/tests/level2/core/createDocument05.xml82
-rw-r--r--test/testcases/tests/level2/core/createDocument06.xml54
-rw-r--r--test/testcases/tests/level2/core/createDocument07.xml52
-rw-r--r--test/testcases/tests/level2/core/createDocument08.xml40
-rw-r--r--test/testcases/tests/level2/core/createDocumentType01.xml52
-rw-r--r--test/testcases/tests/level2/core/createDocumentType02.xml81
-rw-r--r--test/testcases/tests/level2/core/createDocumentType03.xml51
-rw-r--r--test/testcases/tests/level2/core/createDocumentType04.xml41
-rw-r--r--test/testcases/tests/level2/core/createElementNS01.xml48
-rw-r--r--test/testcases/tests/level2/core/createElementNS02.xml47
-rw-r--r--test/testcases/tests/level2/core/createElementNS03.xml80
-rw-r--r--test/testcases/tests/level2/core/createElementNS04.xml50
-rw-r--r--test/testcases/tests/level2/core/createElementNS05.xml44
-rw-r--r--test/testcases/tests/level2/core/createElementNS06.xml42
-rw-r--r--test/testcases/tests/level2/core/documentcreateattributeNS01.xml47
-rw-r--r--test/testcases/tests/level2/core/documentcreateattributeNS02.xml65
-rw-r--r--test/testcases/tests/level2/core/documentcreateattributeNS03.xml59
-rw-r--r--test/testcases/tests/level2/core/documentcreateattributeNS04.xml54
-rw-r--r--test/testcases/tests/level2/core/documentcreateattributeNS05.xml49
-rw-r--r--test/testcases/tests/level2/core/documentcreateattributeNS06.xml50
-rw-r--r--test/testcases/tests/level2/core/documentcreateattributeNS07.xml45
-rw-r--r--test/testcases/tests/level2/core/documentcreateelementNS01.xml55
-rw-r--r--test/testcases/tests/level2/core/documentcreateelementNS02.xml44
-rw-r--r--test/testcases/tests/level2/core/documentcreateelementNS05.xml44
-rw-r--r--test/testcases/tests/level2/core/documentcreateelementNS06.xml51
-rw-r--r--test/testcases/tests/level2/core/documentgetelementbyid01.xml41
-rw-r--r--test/testcases/tests/level2/core/documentgetelementsbytagnameNS01.xml48
-rw-r--r--test/testcases/tests/level2/core/documentgetelementsbytagnameNS02.xml51
-rw-r--r--test/testcases/tests/level2/core/documentgetelementsbytagnameNS03.xml41
-rw-r--r--test/testcases/tests/level2/core/documentgetelementsbytagnameNS04.xml44
-rw-r--r--test/testcases/tests/level2/core/documentgetelementsbytagnameNS05.xml43
-rw-r--r--test/testcases/tests/level2/core/documentimportnode01.xml64
-rw-r--r--test/testcases/tests/level2/core/documentimportnode02.xml65
-rw-r--r--test/testcases/tests/level2/core/documentimportnode03.xml62
-rw-r--r--test/testcases/tests/level2/core/documentimportnode04.xml67
-rw-r--r--test/testcases/tests/level2/core/documentimportnode05.xml62
-rw-r--r--test/testcases/tests/level2/core/documentimportnode06.xml45
-rw-r--r--test/testcases/tests/level2/core/documentimportnode07.xml48
-rw-r--r--test/testcases/tests/level2/core/documentimportnode08.xml51
-rw-r--r--test/testcases/tests/level2/core/documentimportnode09.xml54
-rw-r--r--test/testcases/tests/level2/core/documentimportnode10.xml54
-rw-r--r--test/testcases/tests/level2/core/documentimportnode11.xml53
-rw-r--r--test/testcases/tests/level2/core/documentimportnode12.xml56
-rw-r--r--test/testcases/tests/level2/core/documentimportnode13.xml52
-rw-r--r--test/testcases/tests/level2/core/documentimportnode14.xml61
-rw-r--r--test/testcases/tests/level2/core/documentimportnode15.xml50
-rw-r--r--test/testcases/tests/level2/core/documentimportnode17.xml50
-rw-r--r--test/testcases/tests/level2/core/documentimportnode18.xml53
-rw-r--r--test/testcases/tests/level2/core/documentimportnode19.xml83
-rw-r--r--test/testcases/tests/level2/core/documentimportnode20.xml81
-rw-r--r--test/testcases/tests/level2/core/documentimportnode21.xml91
-rw-r--r--test/testcases/tests/level2/core/documentimportnode22.xml92
-rw-r--r--test/testcases/tests/level2/core/documenttypeinternalSubset01.xml43
-rw-r--r--test/testcases/tests/level2/core/documenttypepublicid01.xml43
-rw-r--r--test/testcases/tests/level2/core/documenttypesystemid01.xml44
-rw-r--r--test/testcases/tests/level2/core/domimplementationcreatedocument03.xml60
-rw-r--r--test/testcases/tests/level2/core/domimplementationcreatedocument04.xml49
-rw-r--r--test/testcases/tests/level2/core/domimplementationcreatedocument05.xml49
-rw-r--r--test/testcases/tests/level2/core/domimplementationcreatedocument07.xml46
-rw-r--r--test/testcases/tests/level2/core/domimplementationcreatedocumenttype01.xml60
-rw-r--r--test/testcases/tests/level2/core/domimplementationcreatedocumenttype02.xml66
-rw-r--r--test/testcases/tests/level2/core/domimplementationcreatedocumenttype04.xml65
-rw-r--r--test/testcases/tests/level2/core/domimplementationfeaturecore.xml44
-rw-r--r--test/testcases/tests/level2/core/domimplementationfeaturexmlversion2.xml45
-rw-r--r--test/testcases/tests/level2/core/domimplementationhasfeature01.xml70
-rw-r--r--test/testcases/tests/level2/core/domimplementationhasfeature02.xml41
-rw-r--r--test/testcases/tests/level2/core/elementgetattributenodens01.xml67
-rw-r--r--test/testcases/tests/level2/core/elementgetattributenodens02.xml48
-rw-r--r--test/testcases/tests/level2/core/elementgetattributenodens03.xml48
-rw-r--r--test/testcases/tests/level2/core/elementgetattributens02.xml45
-rw-r--r--test/testcases/tests/level2/core/elementgetelementsbytagnamens02.xml42
-rw-r--r--test/testcases/tests/level2/core/elementgetelementsbytagnamens04.xml63
-rw-r--r--test/testcases/tests/level2/core/elementgetelementsbytagnamens05.xml43
-rw-r--r--test/testcases/tests/level2/core/elementhasattribute01.xml39
-rw-r--r--test/testcases/tests/level2/core/elementhasattribute02.xml44
-rw-r--r--test/testcases/tests/level2/core/elementhasattribute03.xml47
-rw-r--r--test/testcases/tests/level2/core/elementhasattribute04.xml44
-rw-r--r--test/testcases/tests/level2/core/elementhasattributens01.xml45
-rw-r--r--test/testcases/tests/level2/core/elementhasattributens02.xml51
-rw-r--r--test/testcases/tests/level2/core/elementhasattributens03.xml52
-rw-r--r--test/testcases/tests/level2/core/elementremoveattributens01.xml50
-rw-r--r--test/testcases/tests/level2/core/elementsetattributenodens01.xml78
-rw-r--r--test/testcases/tests/level2/core/elementsetattributenodens02.xml63
-rw-r--r--test/testcases/tests/level2/core/elementsetattributenodens03.xml57
-rw-r--r--test/testcases/tests/level2/core/elementsetattributenodens04.xml53
-rw-r--r--test/testcases/tests/level2/core/elementsetattributenodens05.xml53
-rw-r--r--test/testcases/tests/level2/core/elementsetattributenodens06.xml57
-rw-r--r--test/testcases/tests/level2/core/elementsetattributens01.xml51
-rw-r--r--test/testcases/tests/level2/core/elementsetattributens02.xml53
-rw-r--r--test/testcases/tests/level2/core/elementsetattributens03.xml57
-rw-r--r--test/testcases/tests/level2/core/elementsetattributens04.xml60
-rw-r--r--test/testcases/tests/level2/core/elementsetattributens05.xml46
-rw-r--r--test/testcases/tests/level2/core/elementsetattributens08.xml56
-rw-r--r--test/testcases/tests/level2/core/elementsetattributensurinull.xml49
-rw-r--r--test/testcases/tests/level2/core/files/.cvsignore0
-rw-r--r--test/testcases/tests/level2/core/files/CVS/Entries21
-rw-r--r--test/testcases/tests/level2/core/files/CVS/Repository1
-rw-r--r--test/testcases/tests/level2/core/files/CVS/Root1
-rw-r--r--test/testcases/tests/level2/core/files/CVS/Template0
-rw-r--r--test/testcases/tests/level2/core/files/hc_staff.html48
-rw-r--r--test/testcases/tests/level2/core/files/hc_staff.svg72
-rw-r--r--test/testcases/tests/level2/core/files/hc_staff.xhtml60
-rw-r--r--test/testcases/tests/level2/core/files/hc_staff.xml60
-rw-r--r--test/testcases/tests/level2/core/files/internalSubset01.js0
-rw-r--r--test/testcases/tests/level2/core/files/nodtdstaff.svg11
-rw-r--r--test/testcases/tests/level2/core/files/nodtdstaff.xml11
-rw-r--r--test/testcases/tests/level2/core/files/staff.dtd17
-rw-r--r--test/testcases/tests/level2/core/files/staff.svg72
-rw-r--r--test/testcases/tests/level2/core/files/staff.xml57
-rw-r--r--test/testcases/tests/level2/core/files/staff2.dtd24
-rw-r--r--test/testcases/tests/level2/core/files/staff2.svg13
-rw-r--r--test/testcases/tests/level2/core/files/staff2.xml13
-rw-r--r--test/testcases/tests/level2/core/files/staffNS.dtd45
-rw-r--r--test/testcases/tests/level2/core/files/staffNS.svg73
-rw-r--r--test/testcases/tests/level2/core/files/staffNS.xml59
-rw-r--r--test/testcases/tests/level2/core/files/svgtest.js0
-rw-r--r--test/testcases/tests/level2/core/files/svgunit.js0
-rw-r--r--test/testcases/tests/level2/core/files/xhtml1-strict.dtd65
-rw-r--r--test/testcases/tests/level2/core/getAttributeNS01.xml50
-rw-r--r--test/testcases/tests/level2/core/getAttributeNS02.xml55
-rw-r--r--test/testcases/tests/level2/core/getAttributeNS03.xml48
-rw-r--r--test/testcases/tests/level2/core/getAttributeNS04.xml53
-rw-r--r--test/testcases/tests/level2/core/getAttributeNS05.xml47
-rw-r--r--test/testcases/tests/level2/core/getAttributeNodeNS01.xml48
-rw-r--r--test/testcases/tests/level2/core/getAttributeNodeNS02.xml49
-rw-r--r--test/testcases/tests/level2/core/getElementById01.xml45
-rw-r--r--test/testcases/tests/level2/core/getElementById02.xml40
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS01.xml42
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS02.xml52
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS03.xml67
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS04.xml57
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS05.xml44
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS06.xml44
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS07.xml43
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS08.xml47
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS09.xml58
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS10.xml72
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS11.xml61
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS12.xml45
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS13.xml46
-rw-r--r--test/testcases/tests/level2/core/getElementsByTagNameNS14.xml45
-rw-r--r--test/testcases/tests/level2/core/getNamedItemNS01.xml51
-rw-r--r--test/testcases/tests/level2/core/getNamedItemNS02.xml51
-rw-r--r--test/testcases/tests/level2/core/getNamedItemNS03.xml43
-rw-r--r--test/testcases/tests/level2/core/getNamedItemNS04.xml43
-rw-r--r--test/testcases/tests/level2/core/hasAttribute01.xml42
-rw-r--r--test/testcases/tests/level2/core/hasAttribute02.xml45
-rw-r--r--test/testcases/tests/level2/core/hasAttribute03.xml42
-rw-r--r--test/testcases/tests/level2/core/hasAttribute04.xml45
-rw-r--r--test/testcases/tests/level2/core/hasAttributeNS01.xml47
-rw-r--r--test/testcases/tests/level2/core/hasAttributeNS02.xml46
-rw-r--r--test/testcases/tests/level2/core/hasAttributeNS03.xml47
-rw-r--r--test/testcases/tests/level2/core/hasAttributeNS04.xml50
-rw-r--r--test/testcases/tests/level2/core/hasAttributeNS05.xml48
-rw-r--r--test/testcases/tests/level2/core/hasAttributes01.xml42
-rw-r--r--test/testcases/tests/level2/core/hasAttributes02.xml42
-rw-r--r--test/testcases/tests/level2/core/hc_entitiesremovenameditemns1.xml47
-rw-r--r--test/testcases/tests/level2/core/hc_entitiessetnameditemns1.xml49
-rw-r--r--test/testcases/tests/level2/core/hc_namednodemapinvalidtype1.xml42
-rw-r--r--test/testcases/tests/level2/core/hc_nodedocumentfragmentnormalize1.xml44
-rw-r--r--test/testcases/tests/level2/core/hc_nodedocumentfragmentnormalize2.xml39
-rw-r--r--test/testcases/tests/level2/core/hc_notationsremovenameditemns1.xml47
-rw-r--r--test/testcases/tests/level2/core/hc_notationssetnameditemns1.xml49
-rw-r--r--test/testcases/tests/level2/core/importNode01.xml82
-rw-r--r--test/testcases/tests/level2/core/importNode02.xml55
-rw-r--r--test/testcases/tests/level2/core/importNode03.xml56
-rw-r--r--test/testcases/tests/level2/core/importNode04.xml57
-rw-r--r--test/testcases/tests/level2/core/importNode05.xml62
-rw-r--r--test/testcases/tests/level2/core/importNode06.xml59
-rw-r--r--test/testcases/tests/level2/core/importNode07.xml62
-rw-r--r--test/testcases/tests/level2/core/importNode08.xml56
-rw-r--r--test/testcases/tests/level2/core/importNode09.xml68
-rw-r--r--test/testcases/tests/level2/core/importNode10.xml59
-rw-r--r--test/testcases/tests/level2/core/importNode11.xml57
-rw-r--r--test/testcases/tests/level2/core/importNode12.xml65
-rw-r--r--test/testcases/tests/level2/core/importNode13.xml62
-rw-r--r--test/testcases/tests/level2/core/importNode14.xml59
-rw-r--r--test/testcases/tests/level2/core/importNode15.xml56
-rw-r--r--test/testcases/tests/level2/core/importNode16.xml50
-rw-r--r--test/testcases/tests/level2/core/importNode17.xml48
-rw-r--r--test/testcases/tests/level2/core/internalSubset01.xml42
-rw-r--r--test/testcases/tests/level2/core/isSupported01.xml46
-rw-r--r--test/testcases/tests/level2/core/isSupported02.xml46
-rw-r--r--test/testcases/tests/level2/core/isSupported04.xml48
-rw-r--r--test/testcases/tests/level2/core/isSupported05.xml48
-rw-r--r--test/testcases/tests/level2/core/isSupported06.xml48
-rw-r--r--test/testcases/tests/level2/core/isSupported07.xml48
-rw-r--r--test/testcases/tests/level2/core/isSupported09.xml48
-rw-r--r--test/testcases/tests/level2/core/isSupported10.xml48
-rw-r--r--test/testcases/tests/level2/core/isSupported11.xml48
-rw-r--r--test/testcases/tests/level2/core/isSupported12.xml73
-rw-r--r--test/testcases/tests/level2/core/isSupported13.xml36
-rw-r--r--test/testcases/tests/level2/core/isSupported14.xml37
-rw-r--r--test/testcases/tests/level2/core/localName01.xml50
-rw-r--r--test/testcases/tests/level2/core/localName02.xml43
-rw-r--r--test/testcases/tests/level2/core/localName03.xml47
-rw-r--r--test/testcases/tests/level2/core/localName04.xml46
-rw-r--r--test/testcases/tests/level2/core/metadata.xml18
-rw-r--r--test/testcases/tests/level2/core/namednodemapgetnameditemns01.xml54
-rw-r--r--test/testcases/tests/level2/core/namednodemapgetnameditemns02.xml48
-rw-r--r--test/testcases/tests/level2/core/namednodemapgetnameditemns03.xml52
-rw-r--r--test/testcases/tests/level2/core/namednodemapgetnameditemns04.xml53
-rw-r--r--test/testcases/tests/level2/core/namednodemapgetnameditemns05.xml46
-rw-r--r--test/testcases/tests/level2/core/namednodemapgetnameditemns06.xml56
-rw-r--r--test/testcases/tests/level2/core/namednodemapremovenameditemns01.xml45
-rw-r--r--test/testcases/tests/level2/core/namednodemapremovenameditemns02.xml55
-rw-r--r--test/testcases/tests/level2/core/namednodemapremovenameditemns03.xml53
-rw-r--r--test/testcases/tests/level2/core/namednodemapremovenameditemns04.xml49
-rw-r--r--test/testcases/tests/level2/core/namednodemapremovenameditemns05.xml63
-rw-r--r--test/testcases/tests/level2/core/namednodemapremovenameditemns06.xml49
-rw-r--r--test/testcases/tests/level2/core/namednodemapremovenameditemns07.xml49
-rw-r--r--test/testcases/tests/level2/core/namednodemapremovenameditemns08.xml52
-rw-r--r--test/testcases/tests/level2/core/namednodemapremovenameditemns09.xml49
-rw-r--r--test/testcases/tests/level2/core/namednodemapsetnameditemns01.xml54
-rw-r--r--test/testcases/tests/level2/core/namednodemapsetnameditemns02.xml52
-rw-r--r--test/testcases/tests/level2/core/namednodemapsetnameditemns03.xml65
-rw-r--r--test/testcases/tests/level2/core/namednodemapsetnameditemns04.xml60
-rw-r--r--test/testcases/tests/level2/core/namednodemapsetnameditemns05.xml61
-rw-r--r--test/testcases/tests/level2/core/namednodemapsetnameditemns06.xml53
-rw-r--r--test/testcases/tests/level2/core/namednodemapsetnameditemns07.xml62
-rw-r--r--test/testcases/tests/level2/core/namednodemapsetnameditemns08.xml62
-rw-r--r--test/testcases/tests/level2/core/namednodemapsetnameditemns09.xml55
-rw-r--r--test/testcases/tests/level2/core/namednodemapsetnameditemns10.xml59
-rw-r--r--test/testcases/tests/level2/core/namednodemapsetnameditemns11.xml59
-rw-r--r--test/testcases/tests/level2/core/namespaceURI01.xml50
-rw-r--r--test/testcases/tests/level2/core/namespaceURI02.xml48
-rw-r--r--test/testcases/tests/level2/core/namespaceURI03.xml45
-rw-r--r--test/testcases/tests/level2/core/namespaceURI04.xml54
-rw-r--r--test/testcases/tests/level2/core/nodegetlocalname03.xml56
-rw-r--r--test/testcases/tests/level2/core/nodegetnamespaceuri03.xml59
-rw-r--r--test/testcases/tests/level2/core/nodegetownerdocument01.xml44
-rw-r--r--test/testcases/tests/level2/core/nodegetownerdocument02.xml52
-rw-r--r--test/testcases/tests/level2/core/nodegetprefix03.xml56
-rw-r--r--test/testcases/tests/level2/core/nodehasattributes01.xml45
-rw-r--r--test/testcases/tests/level2/core/nodehasattributes02.xml39
-rw-r--r--test/testcases/tests/level2/core/nodehasattributes03.xml41
-rw-r--r--test/testcases/tests/level2/core/nodehasattributes04.xml58
-rw-r--r--test/testcases/tests/level2/core/nodeissupported01.xml70
-rw-r--r--test/testcases/tests/level2/core/nodeissupported02.xml70
-rw-r--r--test/testcases/tests/level2/core/nodeissupported03.xml41
-rw-r--r--test/testcases/tests/level2/core/nodeissupported04.xml42
-rw-r--r--test/testcases/tests/level2/core/nodeissupported05.xml41
-rw-r--r--test/testcases/tests/level2/core/nodenormalize01.xml153
-rw-r--r--test/testcases/tests/level2/core/nodesetprefix01.xml50
-rw-r--r--test/testcases/tests/level2/core/nodesetprefix02.xml56
-rw-r--r--test/testcases/tests/level2/core/nodesetprefix03.xml42
-rw-r--r--test/testcases/tests/level2/core/nodesetprefix04.xml51
-rw-r--r--test/testcases/tests/level2/core/nodesetprefix05.xml53
-rw-r--r--test/testcases/tests/level2/core/nodesetprefix06.xml43
-rw-r--r--test/testcases/tests/level2/core/nodesetprefix07.xml44
-rw-r--r--test/testcases/tests/level2/core/nodesetprefix08.xml46
-rw-r--r--test/testcases/tests/level2/core/nodesetprefix09.xml42
-rw-r--r--test/testcases/tests/level2/core/normalize01.xml55
-rw-r--r--test/testcases/tests/level2/core/ownerDocument01.xml38
-rw-r--r--test/testcases/tests/level2/core/ownerElement01.xml48
-rw-r--r--test/testcases/tests/level2/core/ownerElement02.xml41
-rw-r--r--test/testcases/tests/level2/core/prefix01.xml43
-rw-r--r--test/testcases/tests/level2/core/prefix02.xml48
-rw-r--r--test/testcases/tests/level2/core/prefix03.xml44
-rw-r--r--test/testcases/tests/level2/core/prefix04.xml42
-rw-r--r--test/testcases/tests/level2/core/prefix05.xml53
-rw-r--r--test/testcases/tests/level2/core/prefix06.xml49
-rw-r--r--test/testcases/tests/level2/core/prefix07.xml47
-rw-r--r--test/testcases/tests/level2/core/prefix08.xml63
-rw-r--r--test/testcases/tests/level2/core/prefix09.xml53
-rw-r--r--test/testcases/tests/level2/core/prefix10.xml49
-rw-r--r--test/testcases/tests/level2/core/prefix11.xml57
-rw-r--r--test/testcases/tests/level2/core/publicId01.xml41
-rw-r--r--test/testcases/tests/level2/core/removeAttributeNS01.xml64
-rw-r--r--test/testcases/tests/level2/core/removeAttributeNS02.xml66
-rw-r--r--test/testcases/tests/level2/core/removeNamedItemNS01.xml52
-rw-r--r--test/testcases/tests/level2/core/removeNamedItemNS02.xml56
-rw-r--r--test/testcases/tests/level2/core/removeNamedItemNS03.xml71
-rw-r--r--test/testcases/tests/level2/core/setAttributeNS01.xml50
-rw-r--r--test/testcases/tests/level2/core/setAttributeNS02.xml49
-rw-r--r--test/testcases/tests/level2/core/setAttributeNS03.xml67
-rw-r--r--test/testcases/tests/level2/core/setAttributeNS04.xml63
-rw-r--r--test/testcases/tests/level2/core/setAttributeNS05.xml54
-rw-r--r--test/testcases/tests/level2/core/setAttributeNS06.xml51
-rw-r--r--test/testcases/tests/level2/core/setAttributeNS07.xml52
-rw-r--r--test/testcases/tests/level2/core/setAttributeNS09.xml63
-rw-r--r--test/testcases/tests/level2/core/setAttributeNS10.xml43
-rw-r--r--test/testcases/tests/level2/core/setAttributeNodeNS01.xml65
-rw-r--r--test/testcases/tests/level2/core/setAttributeNodeNS02.xml69
-rw-r--r--test/testcases/tests/level2/core/setAttributeNodeNS03.xml52
-rw-r--r--test/testcases/tests/level2/core/setAttributeNodeNS04.xml54
-rw-r--r--test/testcases/tests/level2/core/setAttributeNodeNS05.xml60
-rw-r--r--test/testcases/tests/level2/core/setNamedItemNS01.xml61
-rw-r--r--test/testcases/tests/level2/core/setNamedItemNS02.xml60
-rw-r--r--test/testcases/tests/level2/core/setNamedItemNS03.xml57
-rw-r--r--test/testcases/tests/level2/core/setNamedItemNS04.xml73
-rw-r--r--test/testcases/tests/level2/core/setNamedItemNS05.xml55
-rw-r--r--test/testcases/tests/level2/core/systemId01.xml42
-rw-r--r--test/testcases/tests/level2/events/.cvsignore2
-rw-r--r--test/testcases/tests/level2/events/CVS/Entries30
-rw-r--r--test/testcases/tests/level2/events/CVS/Repository1
-rw-r--r--test/testcases/tests/level2/events/CVS/Root1
-rw-r--r--test/testcases/tests/level2/events/CVS/Template0
-rw-r--r--test/testcases/tests/level2/events/DocumentEventCast01.xml33
-rw-r--r--test/testcases/tests/level2/events/EventTargetCast01.xml33
-rw-r--r--test/testcases/tests/level2/events/alltests.xml46
-rw-r--r--test/testcases/tests/level2/events/createEvent01.xml34
-rw-r--r--test/testcases/tests/level2/events/createEvent02.xml36
-rw-r--r--test/testcases/tests/level2/events/createEvent03.xml36
-rw-r--r--test/testcases/tests/level2/events/createEvent04.xml36
-rw-r--r--test/testcases/tests/level2/events/createEvent05.xml36
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent01.xml38
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent02.xml41
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent03.xml42
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent04.xml42
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent05.xml42
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent06.xml42
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent07.xml42
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent08.xml49
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent09.xml49
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent10.xml50
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent11.xml45
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent12.xml50
-rw-r--r--test/testcases/tests/level2/events/dispatchEvent13.xml84
-rw-r--r--test/testcases/tests/level2/events/files/.cvsignore0
-rw-r--r--test/testcases/tests/level2/events/files/CVS/Entries10
-rw-r--r--test/testcases/tests/level2/events/files/CVS/Repository1
-rw-r--r--test/testcases/tests/level2/events/files/CVS/Root1
-rw-r--r--test/testcases/tests/level2/events/files/CVS/Template0
-rw-r--r--test/testcases/tests/level2/events/files/hc_staff.html48
-rw-r--r--test/testcases/tests/level2/events/files/hc_staff.svg72
-rw-r--r--test/testcases/tests/level2/events/files/hc_staff.xhtml60
-rw-r--r--test/testcases/tests/level2/events/files/hc_staff.xml60
-rw-r--r--test/testcases/tests/level2/events/files/staff.dtd17
-rw-r--r--test/testcases/tests/level2/events/files/svgtest.js0
-rw-r--r--test/testcases/tests/level2/events/files/svgunit.js0
-rw-r--r--test/testcases/tests/level2/events/files/xhtml1-strict.dtd65
-rw-r--r--test/testcases/tests/level2/events/initEvent01.xml48
-rw-r--r--test/testcases/tests/level2/events/initEvent02.xml48
-rw-r--r--test/testcases/tests/level2/events/initEvent03.xml55
-rw-r--r--test/testcases/tests/level2/events/initEvent04.xml50
-rw-r--r--test/testcases/tests/level2/events/initEvent05.xml50
-rw-r--r--test/testcases/tests/level2/events/initEvent06.xml57
-rw-r--r--test/testcases/tests/level2/events/metadata.xml20
-rw-r--r--test/testcases/tests/level2/html/.cvsignore2
-rw-r--r--test/testcases/tests/level2/html/CVS/Entries65
-rw-r--r--test/testcases/tests/level2/html/CVS/Repository1
-rw-r--r--test/testcases/tests/level2/html/CVS/Root1
-rw-r--r--test/testcases/tests/level2/html/CVS/Template0
-rw-r--r--test/testcases/tests/level2/html/HTMLAppletElement07.xml42
-rw-r--r--test/testcases/tests/level2/html/HTMLAppletElement09.xml42
-rw-r--r--test/testcases/tests/level2/html/HTMLBaseFontElement03.xml41
-rw-r--r--test/testcases/tests/level2/html/HTMLBodyElement07.xml38
-rw-r--r--test/testcases/tests/level2/html/HTMLBodyElement08.xml38
-rw-r--r--test/testcases/tests/level2/html/HTMLBodyElement09.xml40
-rw-r--r--test/testcases/tests/level2/html/HTMLBodyElement10.xml40
-rw-r--r--test/testcases/tests/level2/html/HTMLBodyElement11.xml38
-rw-r--r--test/testcases/tests/level2/html/HTMLBodyElement12.xml38
-rw-r--r--test/testcases/tests/level2/html/HTMLDocument22.xml36
-rw-r--r--test/testcases/tests/level2/html/HTMLDocument23.xml36
-rw-r--r--test/testcases/tests/level2/html/HTMLDocument24.xml38
-rw-r--r--test/testcases/tests/level2/html/HTMLDocument25.xml38
-rw-r--r--test/testcases/tests/level2/html/HTMLDocument26.xml36
-rw-r--r--test/testcases/tests/level2/html/HTMLDocument27.xml36
-rw-r--r--test/testcases/tests/level2/html/HTMLFrameElement09.xml42
-rw-r--r--test/testcases/tests/level2/html/HTMLIFrameElement11.xml39
-rw-r--r--test/testcases/tests/level2/html/HTMLImageElement05.xml41
-rw-r--r--test/testcases/tests/level2/html/HTMLImageElement06.xml42
-rw-r--r--test/testcases/tests/level2/html/HTMLImageElement11.xml42
-rw-r--r--test/testcases/tests/level2/html/HTMLImageElement12.xml41
-rw-r--r--test/testcases/tests/level2/html/HTMLInputElement13.xml43
-rw-r--r--test/testcases/tests/level2/html/HTMLObjectElement11.xml43
-rw-r--r--test/testcases/tests/level2/html/HTMLObjectElement16.xml43
-rw-r--r--test/testcases/tests/level2/html/HTMLObjectElement20.xml40
-rw-r--r--test/testcases/tests/level2/html/HTMLOptionsCollection01.xml46
-rw-r--r--test/testcases/tests/level2/html/HTMLOptionsCollection02.xml54
-rw-r--r--test/testcases/tests/level2/html/HTMLOptionsCollection03.xml54
-rw-r--r--test/testcases/tests/level2/html/HTMLOptionsCollection04.xml54
-rw-r--r--test/testcases/tests/level2/html/HTMLOptionsCollection05.xml55
-rw-r--r--test/testcases/tests/level2/html/HTMLOptionsCollection06.xml52
-rw-r--r--test/testcases/tests/level2/html/HTMLOptionsCollection07.xml54
-rw-r--r--test/testcases/tests/level2/html/HTMLSelectElement20.xml56
-rw-r--r--test/testcases/tests/level2/html/HTMLTableElement34.xml48
-rw-r--r--test/testcases/tests/level2/html/HTMLTableElement35.xml48
-rw-r--r--test/testcases/tests/level2/html/HTMLTableElement36.xml47
-rw-r--r--test/testcases/tests/level2/html/HTMLTableElement37.xml48
-rw-r--r--test/testcases/tests/level2/html/HTMLTableElement38.xml47
-rw-r--r--test/testcases/tests/level2/html/HTMLTableElement39.xml62
-rw-r--r--test/testcases/tests/level2/html/HTMLTableElement40.xml50
-rw-r--r--test/testcases/tests/level2/html/HTMLTableRowElement15.xml48
-rw-r--r--test/testcases/tests/level2/html/HTMLTableRowElement16.xml48
-rw-r--r--test/testcases/tests/level2/html/HTMLTableRowElement17.xml47
-rw-r--r--test/testcases/tests/level2/html/HTMLTableRowElement18.xml47
-rw-r--r--test/testcases/tests/level2/html/HTMLTableRowElement19.xml47
-rw-r--r--test/testcases/tests/level2/html/HTMLTableRowElement20.xml68
-rw-r--r--test/testcases/tests/level2/html/HTMLTableRowElement21.xml67
-rw-r--r--test/testcases/tests/level2/html/HTMLTableSectionElement25.xml48
-rw-r--r--test/testcases/tests/level2/html/HTMLTableSectionElement26.xml48
-rw-r--r--test/testcases/tests/level2/html/HTMLTableSectionElement27.xml48
-rw-r--r--test/testcases/tests/level2/html/HTMLTableSectionElement28.xml48
-rw-r--r--test/testcases/tests/level2/html/HTMLTableSectionElement29.xml47
-rw-r--r--test/testcases/tests/level2/html/HTMLTableSectionElement30.xml55
-rw-r--r--test/testcases/tests/level2/html/HTMLTableSectionElement31.xml53
-rw-r--r--test/testcases/tests/level2/html/alltests.xml707
-rw-r--r--test/testcases/tests/level2/html/files/.cvsignore6
-rw-r--r--test/testcases/tests/level2/html/files/CVS/Entries11
-rw-r--r--test/testcases/tests/level2/html/files/CVS/Repository1
-rw-r--r--test/testcases/tests/level2/html/files/CVS/Root1
-rw-r--r--test/testcases/tests/level2/html/files/CVS/Template0
-rw-r--r--test/testcases/tests/level2/html/files/frame2.html16
-rw-r--r--test/testcases/tests/level2/html/files/frame2.xhtml17
-rw-r--r--test/testcases/tests/level2/html/files/frame2.xml16
-rw-r--r--test/testcases/tests/level2/html/files/iframe2.html13
-rw-r--r--test/testcases/tests/level2/html/files/iframe2.xhtml15
-rw-r--r--test/testcases/tests/level2/html/files/iframe2.xml15
-rw-r--r--test/testcases/tests/level2/html/files/optionscollection.html36
-rw-r--r--test/testcases/tests/level2/html/files/optionscollection.xhtml33
-rw-r--r--test/testcases/tests/level2/html/files/optionscollection.xml33
-rw-r--r--test/testcases/tests/level2/html/hasFeature02.xml31
-rw-r--r--test/testcases/tests/level2/html/hasFeature03.xml33
-rw-r--r--test/testcases/tests/level2/html/hasFeature04.xml33
-rw-r--r--test/testcases/tests/level2/html/hasFeature05.xml31
-rw-r--r--test/testcases/tests/level2/html/hasFeature06.xml31
-rw-r--r--test/testcases/tests/level2/html/metadata.xml15
-rw-r--r--test/testcases/tests/level2/html/object08.xml40
-rw-r--r--test/testcases/tests/level2/html/object13.xml40
-rw-r--r--test/testcases/tests/level3/CVS/Entries5
-rw-r--r--test/testcases/tests/level3/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/CVS/Root1
-rw-r--r--test/testcases/tests/level3/CVS/Template0
-rw-r--r--test/testcases/tests/level3/core/.cvsignore3
-rw-r--r--test/testcases/tests/level3/core/CVS/Entries726
-rw-r--r--test/testcases/tests/level3/core/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/core/CVS/Root1
-rw-r--r--test/testcases/tests/level3/core/CVS/Template0
-rw-r--r--test/testcases/tests/level3/core/alltests.xml745
-rw-r--r--test/testcases/tests/level3/core/attrgetschematypeinfo01.xml51
-rw-r--r--test/testcases/tests/level3/core/attrgetschematypeinfo02.xml51
-rw-r--r--test/testcases/tests/level3/core/attrgetschematypeinfo03.xml51
-rw-r--r--test/testcases/tests/level3/core/attrgetschematypeinfo04.xml51
-rw-r--r--test/testcases/tests/level3/core/attrgetschematypeinfo05.xml51
-rw-r--r--test/testcases/tests/level3/core/attrgetschematypeinfo06.xml50
-rw-r--r--test/testcases/tests/level3/core/attrgetschematypeinfo07.xml54
-rw-r--r--test/testcases/tests/level3/core/attrgetschematypeinfo08.xml50
-rw-r--r--test/testcases/tests/level3/core/attrisid01.xml44
-rw-r--r--test/testcases/tests/level3/core/attrisid02.xml49
-rw-r--r--test/testcases/tests/level3/core/attrisid03.xml47
-rw-r--r--test/testcases/tests/level3/core/attrisid04.xml47
-rw-r--r--test/testcases/tests/level3/core/attrisid05.xml54
-rw-r--r--test/testcases/tests/level3/core/attrisid06.xml37
-rw-r--r--test/testcases/tests/level3/core/attrisid07.xml58
-rw-r--r--test/testcases/tests/level3/core/canonicalform01.xml80
-rw-r--r--test/testcases/tests/level3/core/canonicalform02.xml67
-rw-r--r--test/testcases/tests/level3/core/canonicalform03.xml62
-rw-r--r--test/testcases/tests/level3/core/canonicalform04.xml53
-rw-r--r--test/testcases/tests/level3/core/canonicalform05.xml107
-rw-r--r--test/testcases/tests/level3/core/canonicalform06.xml92
-rw-r--r--test/testcases/tests/level3/core/canonicalform07.xml81
-rw-r--r--test/testcases/tests/level3/core/canonicalform08.xml112
-rw-r--r--test/testcases/tests/level3/core/canonicalform09.xml92
-rw-r--r--test/testcases/tests/level3/core/canonicalform10.xml59
-rw-r--r--test/testcases/tests/level3/core/canonicalform11.xml63
-rw-r--r--test/testcases/tests/level3/core/canonicalform12.xml51
-rw-r--r--test/testcases/tests/level3/core/cdatasections01.xml59
-rw-r--r--test/testcases/tests/level3/core/checkcharacternormalization01.xml63
-rw-r--r--test/testcases/tests/level3/core/checkcharacternormalization02.xml81
-rw-r--r--test/testcases/tests/level3/core/checkcharacternormalization03.xml67
-rw-r--r--test/testcases/tests/level3/core/comments01.xml57
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization01.xml91
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization02.xml83
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization03.xml83
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization04.xml90
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization05.xml90
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization06.xml90
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization07.xml72
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization08.xml72
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization09.xml72
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization10.xml72
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization11.xml73
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization12.xml73
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization13.xml78
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization14.xml77
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization15.xml84
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization16.xml88
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization17.xml81
-rw-r--r--test/testcases/tests/level3/core/datatypenormalization18.xml84
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode01.xml81
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode02.xml95
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode03.xml56
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode04.xml67
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode05.xml71
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode06.xml87
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode07.xml39
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode08.xml50
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode09.xml50
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode10.xml41
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode11.xml49
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode12.xml53
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode13.xml49
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode14.xml64
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode15.xml42
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode16.xml88
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode17.xml45
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode18.xml56
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode19.xml45
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode20.xml56
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode21.xml61
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode22.xml47
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode23.xml51
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode24.xml61
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode25.xml58
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode26.xml64
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode27.xml66
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode28.xml48
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode30.xml42
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode31.xml54
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode32.xml45
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode33.xml54
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode34.xml54
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode35.xml57
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode36.xml67
-rw-r--r--test/testcases/tests/level3/core/documentgetdoctype01.xml59
-rw-r--r--test/testcases/tests/level3/core/documentgetdocumenturi01.xml35
-rw-r--r--test/testcases/tests/level3/core/documentgetdocumenturi02.xml46
-rw-r--r--test/testcases/tests/level3/core/documentgetdocumenturi03.xml51
-rw-r--r--test/testcases/tests/level3/core/documentgetinputencoding01.xml36
-rw-r--r--test/testcases/tests/level3/core/documentgetinputencoding02.xml47
-rw-r--r--test/testcases/tests/level3/core/documentgetinputencoding03.xml36
-rw-r--r--test/testcases/tests/level3/core/documentgetinputencoding04.xml43
-rw-r--r--test/testcases/tests/level3/core/documentgetstricterrorchecking01.xml35
-rw-r--r--test/testcases/tests/level3/core/documentgetstricterrorchecking02.xml46
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlencoding01.xml36
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlencoding02.xml47
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlencoding03.xml36
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlencoding04.xml36
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlencoding05.xml43
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlstandalone01.xml37
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlstandalone02.xml46
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlstandalone03.xml36
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlstandalone04.xml37
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlstandalone05.xml53
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlversion01.xml36
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlversion02.xml48
-rw-r--r--test/testcases/tests/level3/core/documentgetxmlversion03.xml37
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument01.xml51
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument02.xml67
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument03.xml72
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument04.xml67
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument05.xml103
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument06.xml136
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument07.xml116
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument08.xml78
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument09.xml70
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument10.xml75
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument11.xml65
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument12.xml72
-rw-r--r--test/testcases/tests/level3/core/documentnormalizedocument13.xml103
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode01.xml53
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode02.xml52
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode03.xml46
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode04.xml45
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode05.xml46
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode06.xml51
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode07.xml56
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode08.xml57
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode09.xml54
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode10.xml61
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode11.xml51
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode12.xml50
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode13.xml50
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode14.xml51
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode15.xml48
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode16.xml52
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode17.xml59
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode18.xml53
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode19.xml61
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode20.xml52
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode21.xml54
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode22.xml42
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode23.xml44
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode24.xml46
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode25.xml42
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode26.xml43
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode27.xml86
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode28.xml55
-rw-r--r--test/testcases/tests/level3/core/documentrenamenode29.xml42
-rw-r--r--test/testcases/tests/level3/core/documentsetdocumenturi01.xml39
-rw-r--r--test/testcases/tests/level3/core/documentsetdocumenturi02.xml40
-rw-r--r--test/testcases/tests/level3/core/documentsetdocumenturi03.xml50
-rw-r--r--test/testcases/tests/level3/core/documentsetstricterrorchecking01.xml42
-rw-r--r--test/testcases/tests/level3/core/documentsetstricterrorchecking02.xml42
-rw-r--r--test/testcases/tests/level3/core/documentsetstricterrorchecking03.xml37
-rw-r--r--test/testcases/tests/level3/core/documentsetxmlstandalone01.xml37
-rw-r--r--test/testcases/tests/level3/core/documentsetxmlstandalone02.xml51
-rw-r--r--test/testcases/tests/level3/core/documentsetxmlversion01.xml71
-rw-r--r--test/testcases/tests/level3/core/documentsetxmlversion02.xml49
-rw-r--r--test/testcases/tests/level3/core/documentsetxmlversion03.xml49
-rw-r--r--test/testcases/tests/level3/core/documentsetxmlversion05.xml50
-rw-r--r--test/testcases/tests/level3/core/domconfigcanonicalform1.xml67
-rw-r--r--test/testcases/tests/level3/core/domconfigcdatasections1.xml57
-rw-r--r--test/testcases/tests/level3/core/domconfigcheckcharacternormalization1.xml67
-rw-r--r--test/testcases/tests/level3/core/domconfigcomments1.xml56
-rw-r--r--test/testcases/tests/level3/core/domconfigdatatypenormalization1.xml66
-rw-r--r--test/testcases/tests/level3/core/domconfigdatatypenormalization2.xml52
-rw-r--r--test/testcases/tests/level3/core/domconfigelementcontentwhitespace1.xml67
-rw-r--r--test/testcases/tests/level3/core/domconfigentities1.xml57
-rw-r--r--test/testcases/tests/level3/core/domconfigerrorhandler1.xml71
-rw-r--r--test/testcases/tests/level3/core/domconfigerrorhandler2.xml52
-rw-r--r--test/testcases/tests/level3/core/domconfiginfoset1.xml71
-rw-r--r--test/testcases/tests/level3/core/domconfignamespacedeclarations1.xml57
-rw-r--r--test/testcases/tests/level3/core/domconfignamespaces1.xml66
-rw-r--r--test/testcases/tests/level3/core/domconfignamespaces2.xml42
-rw-r--r--test/testcases/tests/level3/core/domconfignormalizecharacters1.xml67
-rw-r--r--test/testcases/tests/level3/core/domconfigparameternames01.xml94
-rw-r--r--test/testcases/tests/level3/core/domconfigschemalocation1.xml63
-rw-r--r--test/testcases/tests/level3/core/domconfigschematype1.xml80
-rw-r--r--test/testcases/tests/level3/core/domconfigsplitcdatasections1.xml57
-rw-r--r--test/testcases/tests/level3/core/domconfigurationcansetparameter01.xml50
-rw-r--r--test/testcases/tests/level3/core/domconfigurationcansetparameter02.xml49
-rw-r--r--test/testcases/tests/level3/core/domconfigurationcansetparameter03.xml54
-rw-r--r--test/testcases/tests/level3/core/domconfigurationcansetparameter04.xml55
-rw-r--r--test/testcases/tests/level3/core/domconfigurationcansetparameter06.xml57
-rw-r--r--test/testcases/tests/level3/core/domconfigurationgetparameter01.xml47
-rw-r--r--test/testcases/tests/level3/core/domconfigurationgetparameter02.xml42
-rw-r--r--test/testcases/tests/level3/core/domconfigvalidate1.xml67
-rw-r--r--test/testcases/tests/level3/core/domconfigvalidateifschema1.xml67
-rw-r--r--test/testcases/tests/level3/core/domconfigwellformed1.xml66
-rw-r--r--test/testcases/tests/level3/core/domimplementationgetfeature01.xml38
-rw-r--r--test/testcases/tests/level3/core/domimplementationgetfeature02.xml39
-rw-r--r--test/testcases/tests/level3/core/domimplementationgetfeature03.xml40
-rw-r--r--test/testcases/tests/level3/core/domimplementationgetfeature05.xml39
-rw-r--r--test/testcases/tests/level3/core/domimplementationgetfeature06.xml38
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry01.xml34
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry02.xml42
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry03.xml41
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry04.xml42
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry05.xml41
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry06.xml45
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry07.xml42
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry08.xml52
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry09.xml52
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry10.xml52
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry11.xml52
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry12.xml71
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry13.xml54
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry14.xml49
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry15.xml50
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry16.xml49
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry17.xml52
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry18.xml43
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry19.xml58
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry20.xml58
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry21.xml58
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry22.xml58
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry23.xml76
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry24.xml40
-rw-r--r--test/testcases/tests/level3/core/domimplementationregistry25.xml43
-rw-r--r--test/testcases/tests/level3/core/domstringlistcontains01.xml42
-rw-r--r--test/testcases/tests/level3/core/domstringlistcontains02.xml59
-rw-r--r--test/testcases/tests/level3/core/domstringlistgetlength01.xml45
-rw-r--r--test/testcases/tests/level3/core/domstringlistitem01.xml49
-rw-r--r--test/testcases/tests/level3/core/domstringlistitem02.xml45
-rw-r--r--test/testcases/tests/level3/core/elementcontentwhitespace01.xml81
-rw-r--r--test/testcases/tests/level3/core/elementcontentwhitespace02.xml72
-rw-r--r--test/testcases/tests/level3/core/elementcontentwhitespace03.xml81
-rw-r--r--test/testcases/tests/level3/core/elementgetschematypeinfo01.xml48
-rw-r--r--test/testcases/tests/level3/core/elementgetschematypeinfo02.xml47
-rw-r--r--test/testcases/tests/level3/core/elementgetschematypeinfo03.xml47
-rw-r--r--test/testcases/tests/level3/core/elementgetschematypeinfo04.xml51
-rw-r--r--test/testcases/tests/level3/core/elementgetschematypeinfo05.xml51
-rw-r--r--test/testcases/tests/level3/core/elementgetschematypeinfo06.xml51
-rw-r--r--test/testcases/tests/level3/core/elementgetschematypeinfo07.xml51
-rw-r--r--test/testcases/tests/level3/core/elementsetidattribute01.xml54
-rw-r--r--test/testcases/tests/level3/core/elementsetidattribute03.xml55
-rw-r--r--test/testcases/tests/level3/core/elementsetidattribute04.xml55
-rw-r--r--test/testcases/tests/level3/core/elementsetidattribute05.xml42
-rw-r--r--test/testcases/tests/level3/core/elementsetidattribute06.xml42
-rw-r--r--test/testcases/tests/level3/core/elementsetidattribute07.xml63
-rw-r--r--test/testcases/tests/level3/core/elementsetidattribute08.xml64
-rw-r--r--test/testcases/tests/level3/core/elementsetidattribute09.xml65
-rw-r--r--test/testcases/tests/level3/core/elementsetidattribute10.xml55
-rw-r--r--test/testcases/tests/level3/core/elementsetidattribute11.xml55
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributenode01.xml53
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributenode02.xml53
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributenode03.xml55
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributenode04.xml55
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributenode05.xml50
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributenode06.xml51
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributenode07.xml61
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributenode08.xml66
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributenode09.xml59
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributenode10.xml58
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens01.xml54
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens02.xml56
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens03.xml54
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens04.xml59
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens05.xml59
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens06.xml42
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens07.xml42
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens08.xml42
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens09.xml51
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens10.xml64
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens11.xml64
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens12.xml70
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens13.xml57
-rw-r--r--test/testcases/tests/level3/core/elementsetidattributens14.xml65
-rw-r--r--test/testcases/tests/level3/core/entities01.xml79
-rw-r--r--test/testcases/tests/level3/core/entities02.xml82
-rw-r--r--test/testcases/tests/level3/core/entities03.xml74
-rw-r--r--test/testcases/tests/level3/core/entities04.xml78
-rw-r--r--test/testcases/tests/level3/core/entitygetinputencoding01.xml42
-rw-r--r--test/testcases/tests/level3/core/entitygetinputencoding02.xml42
-rw-r--r--test/testcases/tests/level3/core/entitygetinputencoding03.xml52
-rw-r--r--test/testcases/tests/level3/core/entitygetinputencoding04.xml48
-rw-r--r--test/testcases/tests/level3/core/entitygetxmlencoding01.xml42
-rw-r--r--test/testcases/tests/level3/core/entitygetxmlencoding02.xml42
-rw-r--r--test/testcases/tests/level3/core/entitygetxmlencoding03.xml45
-rw-r--r--test/testcases/tests/level3/core/entitygetxmlencoding04.xml45
-rw-r--r--test/testcases/tests/level3/core/entitygetxmlversion01.xml42
-rw-r--r--test/testcases/tests/level3/core/entitygetxmlversion02.xml42
-rw-r--r--test/testcases/tests/level3/core/entitygetxmlversion03.xml45
-rw-r--r--test/testcases/tests/level3/core/entitygetxmlversion04.xml45
-rw-r--r--test/testcases/tests/level3/core/files/.cvsignore0
-rw-r--r--test/testcases/tests/level3/core/files/CVS/Entries71
-rw-r--r--test/testcases/tests/level3/core/files/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/core/files/CVS/Root1
-rw-r--r--test/testcases/tests/level3/core/files/CVS/Template0
-rw-r--r--test/testcases/tests/level3/core/files/Yes28
-rw-r--r--test/testcases/tests/level3/core/files/barfoo.svg27
-rw-r--r--test/testcases/tests/level3/core/files/barfoo.xhtml25
-rw-r--r--test/testcases/tests/level3/core/files/barfoo.xml25
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_base.svg37
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_base.xhtml29
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_base.xml29
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_nodefaultns.svg28
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_nodefaultns.xhtml26
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_nodefaultns.xml26
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_standalone_no.svg28
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_standalone_no.xhtml26
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_standalone_no.xml26
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_standalone_yes.svg24
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_standalone_yes.xhtml26
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_standalone_yes.xml26
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_utf16.svgbin0 -> 1892 bytes
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_utf16.xhtmlbin0 -> 1082 bytes
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_utf16.xmlbin0 -> 1222 bytes
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_utf8.svg30
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_utf8.xhtml28
-rw-r--r--test/testcases/tests/level3/core/files/barfoo_utf8.xml28
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform01.svg17
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform01.xhtml14
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform01.xml14
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform02.svg14
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform02.xhtml11
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform02.xml11
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform03.svg22
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform03.xhtml18
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform03.xml18
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform04.svg15
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform04.xhtml13
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform04.xml13
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform05.svg15
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform05.xhtml13
-rw-r--r--test/testcases/tests/level3/core/files/canonicalform05.xml13
-rw-r--r--test/testcases/tests/level3/core/files/datatype_normalization.svg89
-rw-r--r--test/testcases/tests/level3/core/files/datatype_normalization.svg.xsd60
-rw-r--r--test/testcases/tests/level3/core/files/datatype_normalization.xml90
-rw-r--r--test/testcases/tests/level3/core/files/datatype_normalization.xsd212
-rw-r--r--test/testcases/tests/level3/core/files/datatype_normalization2.svg45
-rw-r--r--test/testcases/tests/level3/core/files/datatype_normalization2.svg.xsd60
-rw-r--r--test/testcases/tests/level3/core/files/datatype_normalization2.xhtml33
-rw-r--r--test/testcases/tests/level3/core/files/datatype_normalization2.xml33
-rw-r--r--test/testcases/tests/level3/core/files/datatype_normalization2.xsd99
-rw-r--r--test/testcases/tests/level3/core/files/external_barfoo.svg31
-rw-r--r--test/testcases/tests/level3/core/files/external_barfoo.xhtml33
-rw-r--r--test/testcases/tests/level3/core/files/external_barfoo.xml33
-rw-r--r--test/testcases/tests/level3/core/files/external_foo.entbin0 -> 86 bytes
-rw-r--r--test/testcases/tests/level3/core/files/external_foobr.ent1
-rw-r--r--test/testcases/tests/level3/core/files/external_widget.ent1
-rw-r--r--test/testcases/tests/level3/core/files/hc_nodtdstaff.html10
-rw-r--r--test/testcases/tests/level3/core/files/hc_nodtdstaff.svg10
-rw-r--r--test/testcases/tests/level3/core/files/hc_nodtdstaff.xhtml10
-rw-r--r--test/testcases/tests/level3/core/files/hc_nodtdstaff.xml10
-rw-r--r--test/testcases/tests/level3/core/files/hc_staff.svg87
-rw-r--r--test/testcases/tests/level3/core/files/hc_staff.svg.xsd60
-rw-r--r--test/testcases/tests/level3/core/files/hc_staff.xhtml73
-rw-r--r--test/testcases/tests/level3/core/files/hc_staff.xml73
-rw-r--r--test/testcases/tests/level3/core/files/hc_staff.xsd250
-rw-r--r--test/testcases/tests/level3/core/files/svgtest.js0
-rw-r--r--test/testcases/tests/level3/core/files/svgunit.js0
-rw-r--r--test/testcases/tests/level3/core/files/typeinfo.svg29
-rw-r--r--test/testcases/tests/level3/core/files/typeinfo.svg.xsd60
-rw-r--r--test/testcases/tests/level3/core/files/typeinfo.xhtml18
-rw-r--r--test/testcases/tests/level3/core/files/typeinfo.xml18
-rw-r--r--test/testcases/tests/level3/core/files/typeinfo.xsd107
-rw-r--r--test/testcases/tests/level3/core/files/xhtml1-strict.dtd65
-rw-r--r--test/testcases/tests/level3/core/handleerror01.xml91
-rw-r--r--test/testcases/tests/level3/core/handleerror02.xml72
-rw-r--r--test/testcases/tests/level3/core/hasFeature01.xml33
-rw-r--r--test/testcases/tests/level3/core/hasFeature02.xml32
-rw-r--r--test/testcases/tests/level3/core/hasFeature03.xml32
-rw-r--r--test/testcases/tests/level3/core/hasFeature04.xml33
-rw-r--r--test/testcases/tests/level3/core/infoset01.xml82
-rw-r--r--test/testcases/tests/level3/core/infoset02.xml74
-rw-r--r--test/testcases/tests/level3/core/infoset03.xml83
-rw-r--r--test/testcases/tests/level3/core/infoset04.xml62
-rw-r--r--test/testcases/tests/level3/core/infoset05.xml49
-rw-r--r--test/testcases/tests/level3/core/infoset06.xml88
-rw-r--r--test/testcases/tests/level3/core/infoset07.xml86
-rw-r--r--test/testcases/tests/level3/core/infoset08.xml78
-rw-r--r--test/testcases/tests/level3/core/infoset09.xml59
-rw-r--r--test/testcases/tests/level3/core/metadata.xml19
-rw-r--r--test/testcases/tests/level3/core/namespacedeclarations01.xml49
-rw-r--r--test/testcases/tests/level3/core/namespacedeclarations02.xml49
-rw-r--r--test/testcases/tests/level3/core/nodeappendchild01.xml50
-rw-r--r--test/testcases/tests/level3/core/nodeappendchild02.xml48
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition01.xml44
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition02.xml51
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition03.xml49
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition04.xml36
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition05.xml55
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition06.xml44
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition07.xml45
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition08.xml43
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition09.xml47
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition10.xml41
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition11.xml44
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition12.xml43
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition13.xml47
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition14.xml47
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition15.xml51
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition16.xml54
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition17.xml46
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition18.xml48
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition19.xml55
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition20.xml49
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition21.xml52
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition22.xml50
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition23.xml54
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition24.xml44
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition25.xml46
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition26.xml56
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition27.xml56
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition28.xml60
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition29.xml55
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition30.xml44
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition31.xml51
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition32.xml46
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition33.xml63
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition34.xml52
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition35.xml45
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition36.xml50
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition37.xml49
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition38.xml48
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition39.xml51
-rw-r--r--test/testcases/tests/level3/core/nodecomparedocumentposition40.xml52
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri01.xml40
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri02.xml52
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri03.xml39
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri04.xml42
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri05.xml39
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri06.xml41
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri07.xml50
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri09.xml41
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri10.xml45
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri11.xml53
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri12.xml45
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri13.xml48
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri14.xml57
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri15.xml45
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri16.xml47
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri17.xml45
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri18.xml45
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri19.xml60
-rw-r--r--test/testcases/tests/level3/core/nodegetbaseuri20.xml46
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature01.xml79
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature02.xml79
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature03.xml79
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature04.xml79
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature05.xml79
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature06.xml79
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature07.xml81
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature08.xml81
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature09.xml80
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature10.xml83
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature11.xml79
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature12.xml83
-rw-r--r--test/testcases/tests/level3/core/nodegetfeature13.xml83
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent01.xml37
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent02.xml48
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent03.xml40
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent04.xml47
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent05.xml43
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent06.xml44
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent07.xml43
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent08.xml45
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent09.xml43
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent10.xml44
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent11.xml44
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent12.xml43
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent13.xml42
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent14.xml41
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent15.xml60
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent16.xml64
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent17.xml42
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent18.xml42
-rw-r--r--test/testcases/tests/level3/core/nodegettextcontent19.xml42
-rw-r--r--test/testcases/tests/level3/core/nodegetuserdata01.xml38
-rw-r--r--test/testcases/tests/level3/core/nodegetuserdata02.xml38
-rw-r--r--test/testcases/tests/level3/core/nodegetuserdata03.xml47
-rw-r--r--test/testcases/tests/level3/core/nodegetuserdata04.xml47
-rw-r--r--test/testcases/tests/level3/core/nodegetuserdata05.xml49
-rw-r--r--test/testcases/tests/level3/core/nodegetuserdata06.xml40
-rw-r--r--test/testcases/tests/level3/core/nodegetuserdata07.xml47
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore01.xml54
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore02.xml63
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore03.xml43
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore04.xml41
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore05.xml53
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore06.xml51
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore07.xml49
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore08.xml49
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore09.xml56
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore10.xml57
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore11.xml77
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore12.xml53
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore13.xml59
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore14.xml49
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore15.xml76
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore16.xml53
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore17.xml56
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore18.xml61
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore19.xml47
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore20.xml47
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore21.xml47
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore22.xml49
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore23.xml50
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore24.xml46
-rw-r--r--test/testcases/tests/level3/core/nodeinsertbefore25.xml55
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace01.xml41
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace02.xml52
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace03.xml43
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace04.xml53
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace05.xml54
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace06.xml44
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace07.xml44
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace08.xml45
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace09.xml47
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace10.xml46
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace11.xml53
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace13.xml49
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace14.xml48
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace15.xml50
-rw-r--r--test/testcases/tests/level3/core/nodeisdefaultnamespace16.xml39
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode01.xml40
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode02.xml49
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode03.xml47
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode04.xml40
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode05.xml38
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode06.xml42
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode07.xml42
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode08.xml51
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode09.xml59
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode10.xml42
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode11.xml76
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode12.xml42
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode13.xml59
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode14.xml44
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode15.xml52
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode16.xml47
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode17.xml52
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode18.xml54
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode19.xml43
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode20.xml40
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode21.xml44
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode22.xml54
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode25.xml52
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode26.xml52
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode27.xml48
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode28.xml46
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode29.xml46
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode31.xml46
-rw-r--r--test/testcases/tests/level3/core/nodeisequalnode32.xml46
-rw-r--r--test/testcases/tests/level3/core/nodeissamenode01.xml40
-rw-r--r--test/testcases/tests/level3/core/nodeissamenode02.xml42
-rw-r--r--test/testcases/tests/level3/core/nodeissamenode03.xml42
-rw-r--r--test/testcases/tests/level3/core/nodeissamenode04.xml40
-rw-r--r--test/testcases/tests/level3/core/nodeissamenode05.xml42
-rw-r--r--test/testcases/tests/level3/core/nodeissamenode06.xml46
-rw-r--r--test/testcases/tests/level3/core/nodeissamenode07.xml46
-rw-r--r--test/testcases/tests/level3/core/nodeissamenode08.xml46
-rw-r--r--test/testcases/tests/level3/core/nodeissamenode09.xml43
-rw-r--r--test/testcases/tests/level3/core/nodeissamenode10.xml48
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri01.xml37
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri02.xml50
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri03.xml42
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri04.xml49
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri05.xml52
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri06.xml42
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri07.xml42
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri08.xml46
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri09.xml45
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri10.xml44
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri11.xml53
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri13.xml47
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri14.xml47
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri15.xml49
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri16.xml43
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri17.xml46
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri18.xml46
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri19.xml46
-rw-r--r--test/testcases/tests/level3/core/nodelookupnamespaceuri20.xml49
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix01.xml40
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix02.xml50
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix03.xml42
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix04.xml51
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix05.xml52
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix06.xml42
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix07.xml42
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix08.xml45
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix09.xml48
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix10.xml44
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix11.xml55
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix12.xml44
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix13.xml49
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix14.xml49
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix15.xml51
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix16.xml42
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix17.xml46
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix18.xml48
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix19.xml46
-rw-r--r--test/testcases/tests/level3/core/nodelookupprefix20.xml49
-rw-r--r--test/testcases/tests/level3/core/noderemovechild01.xml42
-rw-r--r--test/testcases/tests/level3/core/noderemovechild02.xml56
-rw-r--r--test/testcases/tests/level3/core/noderemovechild03.xml46
-rw-r--r--test/testcases/tests/level3/core/noderemovechild04.xml49
-rw-r--r--test/testcases/tests/level3/core/noderemovechild05.xml62
-rw-r--r--test/testcases/tests/level3/core/noderemovechild07.xml55
-rw-r--r--test/testcases/tests/level3/core/noderemovechild08.xml45
-rw-r--r--test/testcases/tests/level3/core/noderemovechild09.xml45
-rw-r--r--test/testcases/tests/level3/core/noderemovechild10.xml45
-rw-r--r--test/testcases/tests/level3/core/noderemovechild11.xml47
-rw-r--r--test/testcases/tests/level3/core/noderemovechild12.xml56
-rw-r--r--test/testcases/tests/level3/core/noderemovechild13.xml44
-rw-r--r--test/testcases/tests/level3/core/noderemovechild14.xml45
-rw-r--r--test/testcases/tests/level3/core/noderemovechild15.xml45
-rw-r--r--test/testcases/tests/level3/core/noderemovechild16.xml53
-rw-r--r--test/testcases/tests/level3/core/noderemovechild17.xml51
-rw-r--r--test/testcases/tests/level3/core/noderemovechild18.xml54
-rw-r--r--test/testcases/tests/level3/core/noderemovechild19.xml76
-rw-r--r--test/testcases/tests/level3/core/noderemovechild20.xml56
-rw-r--r--test/testcases/tests/level3/core/noderemovechild21.xml56
-rw-r--r--test/testcases/tests/level3/core/noderemovechild22.xml51
-rw-r--r--test/testcases/tests/level3/core/noderemovechild23.xml51
-rw-r--r--test/testcases/tests/level3/core/noderemovechild24.xml49
-rw-r--r--test/testcases/tests/level3/core/noderemovechild25.xml49
-rw-r--r--test/testcases/tests/level3/core/noderemovechild26.xml49
-rw-r--r--test/testcases/tests/level3/core/noderemovechild27.xml55
-rw-r--r--test/testcases/tests/level3/core/noderemovechild28.xml55
-rw-r--r--test/testcases/tests/level3/core/noderemovechild29.xml55
-rw-r--r--test/testcases/tests/level3/core/noderemovechild30.xml59
-rw-r--r--test/testcases/tests/level3/core/noderemovechild31.xml84
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild01.xml47
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild02.xml41
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild03.xml52
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild04.xml47
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild06.xml53
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild07.xml55
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild08.xml57
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild10.xml61
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild12.xml53
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild13.xml59
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild14.xml59
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild15.xml55
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild16.xml47
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild17.xml55
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild18.xml52
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild19.xml47
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild20.xml48
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild21.xml64
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild22.xml57
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild23.xml78
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild24.xml47
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild25.xml58
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild26.xml48
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild27.xml57
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild28.xml56
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild29.xml47
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild30.xml89
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild31.xml55
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild32.xml59
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild33.xml48
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild34.xml46
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild35.xml48
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild36.xml46
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild37.xml51
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild38.xml87
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild39.xml52
-rw-r--r--test/testcases/tests/level3/core/nodereplacechild40.xml55
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent01.xml42
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent02.xml56
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent03.xml41
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent04.xml45
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent05.xml45
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent06.xml46
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent07.xml45
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent08.xml46
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent10.xml59
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent11.xml62
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent12.xml48
-rw-r--r--test/testcases/tests/level3/core/nodesettextcontent13.xml48
-rw-r--r--test/testcases/tests/level3/core/nodesetuserdata01.xml41
-rw-r--r--test/testcases/tests/level3/core/nodesetuserdata02.xml42
-rw-r--r--test/testcases/tests/level3/core/nodesetuserdata03.xml47
-rw-r--r--test/testcases/tests/level3/core/nodesetuserdata04.xml52
-rw-r--r--test/testcases/tests/level3/core/nodesetuserdata05.xml52
-rw-r--r--test/testcases/tests/level3/core/nodesetuserdata06.xml53
-rw-r--r--test/testcases/tests/level3/core/nodesetuserdata07.xml53
-rw-r--r--test/testcases/tests/level3/core/nodesetuserdata08.xml54
-rw-r--r--test/testcases/tests/level3/core/nodesetuserdata09.xml45
-rw-r--r--test/testcases/tests/level3/core/nodesetuserdata10.xml57
-rw-r--r--test/testcases/tests/level3/core/normalizecharacters01.xml63
-rw-r--r--test/testcases/tests/level3/core/normalizecharacters02.xml67
-rw-r--r--test/testcases/tests/level3/core/normalizecharacters03.xml63
-rw-r--r--test/testcases/tests/level3/core/normalizecharacters04.xml67
-rw-r--r--test/testcases/tests/level3/core/normalizecharacters05.xml63
-rw-r--r--test/testcases/tests/level3/core/normalizecharacters06.xml67
-rw-r--r--test/testcases/tests/level3/core/normalizecharacters07.xml63
-rw-r--r--test/testcases/tests/level3/core/normalizecharacters08.xml67
-rw-r--r--test/testcases/tests/level3/core/splitcdatasections01.xml52
-rw-r--r--test/testcases/tests/level3/core/textiselementcontentwhitespace01.xml38
-rw-r--r--test/testcases/tests/level3/core/textiselementcontentwhitespace02.xml42
-rw-r--r--test/testcases/tests/level3/core/textiselementcontentwhitespace03.xml45
-rw-r--r--test/testcases/tests/level3/core/textiselementcontentwhitespace04.xml57
-rw-r--r--test/testcases/tests/level3/core/textiselementcontentwhitespace05.xml66
-rw-r--r--test/testcases/tests/level3/core/textiselementcontentwhitespace06.xml68
-rw-r--r--test/testcases/tests/level3/core/textreplacewholetext01.xml46
-rw-r--r--test/testcases/tests/level3/core/textreplacewholetext02.xml43
-rw-r--r--test/testcases/tests/level3/core/textreplacewholetext03.xml43
-rw-r--r--test/testcases/tests/level3/core/textreplacewholetext04.xml39
-rw-r--r--test/testcases/tests/level3/core/textreplacewholetext05.xml51
-rw-r--r--test/testcases/tests/level3/core/textreplacewholetext06.xml67
-rw-r--r--test/testcases/tests/level3/core/textreplacewholetext07.xml65
-rw-r--r--test/testcases/tests/level3/core/textreplacewholetext08.xml47
-rw-r--r--test/testcases/tests/level3/core/textwholetext01.xml42
-rw-r--r--test/testcases/tests/level3/core/textwholetext02.xml46
-rw-r--r--test/testcases/tests/level3/core/textwholetext03.xml45
-rw-r--r--test/testcases/tests/level3/core/typeinfogettypename03.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfogettypename04.xml49
-rw-r--r--test/testcases/tests/level3/core/typeinfogettypenamespace01.xml50
-rw-r--r--test/testcases/tests/level3/core/typeinfogettypenamespace03.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfogettypenamespace04.xml48
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom01.xml50
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom02.xml57
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom03.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom04.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom05.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom06.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom07.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom08.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom09.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom10.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom11.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom12.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom13.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom14.xml60
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom15.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom16.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom17.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom18.xml50
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom19.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom20.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom21.xml56
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom22.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom23.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom24.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom25.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom26.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom27.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom28.xml56
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom29.xml45
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom30.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom31.xml45
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom32.xml45
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom33.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom34.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom35.xml45
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom36.xml45
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom37.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom38.xml45
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom39.xml48
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom40.xml49
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom41.xml49
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom42.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom43.xml46
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom44.xml46
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom45.xml46
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom46.xml46
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom47.xml46
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom48.xml46
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom49.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom50.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom51.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom52.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom53.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom54.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom55.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom56.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom57.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom58.xml45
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom59.xml48
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom60.xml44
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom61.xml42
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom62.xml42
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom63.xml51
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom64.xml48
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom65.xml47
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom66.xml50
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom67.xml46
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom68.xml46
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom69.xml46
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom70.xml46
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom71.xml45
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom72.xml46
-rw-r--r--test/testcases/tests/level3/core/typeinfoisderivedfrom73.xml45
-rw-r--r--test/testcases/tests/level3/core/userdatahandler01.xml87
-rw-r--r--test/testcases/tests/level3/core/userdatahandler02.xml79
-rw-r--r--test/testcases/tests/level3/core/userdatahandler03.xml89
-rw-r--r--test/testcases/tests/level3/core/userdatahandler04.xml90
-rw-r--r--test/testcases/tests/level3/core/wellformed01.xml88
-rw-r--r--test/testcases/tests/level3/core/wellformed02.xml77
-rw-r--r--test/testcases/tests/level3/core/wellformed03.xml86
-rw-r--r--test/testcases/tests/level3/core/wellformed04.xml79
-rw-r--r--test/testcases/tests/level3/events/.cvsignore3
-rw-r--r--test/testcases/tests/level3/events/CVS/Entries5
-rw-r--r--test/testcases/tests/level3/events/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/events/CVS/Root1
-rw-r--r--test/testcases/tests/level3/events/CVS/Template0
-rw-r--r--test/testcases/tests/level3/events/alltests.xml21
-rw-r--r--test/testcases/tests/level3/events/files/CVS/Entries3
-rw-r--r--test/testcases/tests/level3/events/files/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/events/files/CVS/Root1
-rw-r--r--test/testcases/tests/level3/events/files/CVS/Template0
-rw-r--r--test/testcases/tests/level3/events/files/staff.dtd17
-rw-r--r--test/testcases/tests/level3/events/files/staff.xml57
-rw-r--r--test/testcases/tests/level3/events/hasFeature01.xml32
-rw-r--r--test/testcases/tests/level3/events/metadata.xml19
-rw-r--r--test/testcases/tests/level3/ls/.cvsignore3
-rw-r--r--test/testcases/tests/level3/ls/CVS/Entries180
-rw-r--r--test/testcases/tests/level3/ls/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/ls/CVS/Root1
-rw-r--r--test/testcases/tests/level3/ls/CVS/Template0
-rw-r--r--test/testcases/tests/level3/ls/CertifiedText1.xml49
-rw-r--r--test/testcases/tests/level3/ls/CharacterStream1.xml84
-rw-r--r--test/testcases/tests/level3/ls/DOMBuilderFilterTest0.xml87
-rw-r--r--test/testcases/tests/level3/ls/DOMBuilderFilterTest1.xml74
-rw-r--r--test/testcases/tests/level3/ls/DOMBuilderFilterTest2.xml74
-rw-r--r--test/testcases/tests/level3/ls/DOMBuilderTest0.xml57
-rw-r--r--test/testcases/tests/level3/ls/DOMBuilderTest1.xml65
-rw-r--r--test/testcases/tests/level3/ls/DOMBuilderTest2.xml67
-rw-r--r--test/testcases/tests/level3/ls/DOMBuilderTest3.xml79
-rw-r--r--test/testcases/tests/level3/ls/DOMBuilderTest4.xml74
-rw-r--r--test/testcases/tests/level3/ls/DOMBuilderTest5.xml81
-rw-r--r--test/testcases/tests/level3/ls/DOMBuilderTest6.xml47
-rw-r--r--test/testcases/tests/level3/ls/DOMBuilderTest8.xml51
-rw-r--r--test/testcases/tests/level3/ls/DOMEntityResolverTest0.xml75
-rw-r--r--test/testcases/tests/level3/ls/DOMEntityResolverTest1.xml79
-rw-r--r--test/testcases/tests/level3/ls/DOMEntityResolverTest2.xml72
-rw-r--r--test/testcases/tests/level3/ls/DOMImplementationLSTest0.xml50
-rw-r--r--test/testcases/tests/level3/ls/DOMImplementationLSTest1.xml52
-rw-r--r--test/testcases/tests/level3/ls/DOMImplementationLSTest2.xml38
-rw-r--r--test/testcases/tests/level3/ls/DOMImplementationLSTest3.xml44
-rw-r--r--test/testcases/tests/level3/ls/DOMImplementationLSTest4.xml45
-rw-r--r--test/testcases/tests/level3/ls/DOMImplementationLSTest5.xml43
-rw-r--r--test/testcases/tests/level3/ls/DOMInputSourceTest0.xml50
-rw-r--r--test/testcases/tests/level3/ls/DOMInputSourceTest1.xml49
-rw-r--r--test/testcases/tests/level3/ls/DOMInputSourceTest2.xml46
-rw-r--r--test/testcases/tests/level3/ls/DOMInputSourceTest3.xml51
-rw-r--r--test/testcases/tests/level3/ls/DOMInputSourceTest4.xml48
-rw-r--r--test/testcases/tests/level3/ls/DOMInputSourceTest5.xml88
-rw-r--r--test/testcases/tests/level3/ls/DOMInputSourceTest6.xml55
-rw-r--r--test/testcases/tests/level3/ls/DOMWriterFilterTest0.xml95
-rw-r--r--test/testcases/tests/level3/ls/DOMWriterFilterTest1.xml90
-rw-r--r--test/testcases/tests/level3/ls/DOMWriterFilterTest2.xml99
-rw-r--r--test/testcases/tests/level3/ls/DOMWriterFilterTest3.xml87
-rw-r--r--test/testcases/tests/level3/ls/DOMWriterTest0.xml52
-rw-r--r--test/testcases/tests/level3/ls/DOMWriterTest1.xml65
-rw-r--r--test/testcases/tests/level3/ls/DOMWriterTest2.xml61
-rw-r--r--test/testcases/tests/level3/ls/DOMWriterTest3.xml61
-rw-r--r--test/testcases/tests/level3/ls/DOMWriterTest4.xml54
-rw-r--r--test/testcases/tests/level3/ls/DOMWriterTest5.xml88
-rw-r--r--test/testcases/tests/level3/ls/DOMWriterTest6.xml89
-rw-r--r--test/testcases/tests/level3/ls/GetFeature1.xml44
-rw-r--r--test/testcases/tests/level3/ls/GetFeature2.xml44
-rw-r--r--test/testcases/tests/level3/ls/HasFeature01.xml39
-rw-r--r--test/testcases/tests/level3/ls/HasFeature02.xml40
-rw-r--r--test/testcases/tests/level3/ls/HasFeature03.xml42
-rw-r--r--test/testcases/tests/level3/ls/HasFeature04.xml41
-rw-r--r--test/testcases/tests/level3/ls/HasFeature05.xml43
-rw-r--r--test/testcases/tests/level3/ls/LSParserConfig1.xml61
-rw-r--r--test/testcases/tests/level3/ls/LSParserConfig2.xml88
-rw-r--r--test/testcases/tests/level3/ls/LSParserConfig3.xml57
-rw-r--r--test/testcases/tests/level3/ls/LSParserConfig4.xml65
-rw-r--r--test/testcases/tests/level3/ls/LSParserConfig5.xml65
-rw-r--r--test/testcases/tests/level3/ls/LSParserConfig6.xml71
-rw-r--r--test/testcases/tests/level3/ls/LSParserConfig7.xml65
-rw-r--r--test/testcases/tests/level3/ls/LSParserConfig8.xml56
-rw-r--r--test/testcases/tests/level3/ls/LSParserConfig9.xml65
-rw-r--r--test/testcases/tests/level3/ls/LSSerializerConfig1.xml71
-rw-r--r--test/testcases/tests/level3/ls/LSSerializerConfig10.xml56
-rw-r--r--test/testcases/tests/level3/ls/LSSerializerConfig2.xml83
-rw-r--r--test/testcases/tests/level3/ls/LSSerializerConfig3.xml64
-rw-r--r--test/testcases/tests/level3/ls/LSSerializerConfig4.xml56
-rw-r--r--test/testcases/tests/level3/ls/LSSerializerConfig5.xml64
-rw-r--r--test/testcases/tests/level3/ls/LSSerializerConfig6.xml64
-rw-r--r--test/testcases/tests/level3/ls/LSSerializerConfig7.xml56
-rw-r--r--test/testcases/tests/level3/ls/LSSerializerConfig8.xml64
-rw-r--r--test/testcases/tests/level3/ls/LSSerializerConfig9.xml67
-rw-r--r--test/testcases/tests/level3/ls/SystemId1.xml87
-rw-r--r--test/testcases/tests/level3/ls/SystemId2.xml87
-rw-r--r--test/testcases/tests/level3/ls/alltests.xml213
-rw-r--r--test/testcases/tests/level3/ls/canonicalform01.xml58
-rw-r--r--test/testcases/tests/level3/ls/canonicalform03.xml57
-rw-r--r--test/testcases/tests/level3/ls/canonicalform04.xml53
-rw-r--r--test/testcases/tests/level3/ls/canonicalform05.xml56
-rw-r--r--test/testcases/tests/level3/ls/canonicalform06.xml61
-rw-r--r--test/testcases/tests/level3/ls/canonicalform08.xml113
-rw-r--r--test/testcases/tests/level3/ls/canonicalform09.xml93
-rw-r--r--test/testcases/tests/level3/ls/canonicalform10.xml61
-rw-r--r--test/testcases/tests/level3/ls/canonicalform11.xml65
-rw-r--r--test/testcases/tests/level3/ls/canonicalform12.xml50
-rw-r--r--test/testcases/tests/level3/ls/canonicalform13.xml61
-rw-r--r--test/testcases/tests/level3/ls/cdatasections01.xml53
-rw-r--r--test/testcases/tests/level3/ls/cdatasections02.xml53
-rw-r--r--test/testcases/tests/level3/ls/cdatasections03.xml52
-rw-r--r--test/testcases/tests/level3/ls/cdatasections04.xml52
-rw-r--r--test/testcases/tests/level3/ls/checkcharacternormalization01.xml46
-rw-r--r--test/testcases/tests/level3/ls/checkcharacternormalization02.xml71
-rw-r--r--test/testcases/tests/level3/ls/checkcharacternormalization03.xml50
-rw-r--r--test/testcases/tests/level3/ls/checkcharacternormalization04.xml75
-rw-r--r--test/testcases/tests/level3/ls/comments01.xml51
-rw-r--r--test/testcases/tests/level3/ls/comments02.xml51
-rw-r--r--test/testcases/tests/level3/ls/comments03.xml52
-rw-r--r--test/testcases/tests/level3/ls/comments04.xml52
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization01.xml93
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization02.xml86
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization03.xml86
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization04.xml93
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization05.xml93
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization06.xml94
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization07.xml74
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization08.xml75
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization09.xml75
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization10.xml74
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization11.xml75
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization12.xml75
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization13.xml80
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization14.xml80
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization15.xml86
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization16.xml90
-rw-r--r--test/testcases/tests/level3/ls/datatypenormalization17.xml76
-rw-r--r--test/testcases/tests/level3/ls/disallowdoctype01.xml71
-rw-r--r--test/testcases/tests/level3/ls/discarddefaultcontent01.xml48
-rw-r--r--test/testcases/tests/level3/ls/discarddefaultcontent02.xml48
-rw-r--r--test/testcases/tests/level3/ls/dom3tests.ent78
-rw-r--r--test/testcases/tests/level3/ls/elementcontentwhitespace01.xml60
-rw-r--r--test/testcases/tests/level3/ls/elementcontentwhitespace02.xml59
-rw-r--r--test/testcases/tests/level3/ls/elementcontentwhitespace03.xml60
-rw-r--r--test/testcases/tests/level3/ls/encoding01.xml42
-rw-r--r--test/testcases/tests/level3/ls/entities01.xml54
-rw-r--r--test/testcases/tests/level3/ls/entities02.xml62
-rw-r--r--test/testcases/tests/level3/ls/entities03.xml53
-rw-r--r--test/testcases/tests/level3/ls/entities04.xml54
-rw-r--r--test/testcases/tests/level3/ls/entities05.xml62
-rw-r--r--test/testcases/tests/level3/ls/entities06.xml53
-rw-r--r--test/testcases/tests/level3/ls/entities07.xml63
-rw-r--r--test/testcases/tests/level3/ls/entities08.xml62
-rw-r--r--test/testcases/tests/level3/ls/entities09.xml45
-rw-r--r--test/testcases/tests/level3/ls/files/CVS/Entries37
-rw-r--r--test/testcases/tests/level3/ls/files/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/ls/files/CVS/Root1
-rw-r--r--test/testcases/tests/level3/ls/files/CVS/Template0
-rw-r--r--test/testcases/tests/level3/ls/files/canonicalform01.xml14
-rw-r--r--test/testcases/tests/level3/ls/files/canonicalform02.xml11
-rw-r--r--test/testcases/tests/level3/ls/files/canonicalform03.xml18
-rw-r--r--test/testcases/tests/level3/ls/files/characternormalization1.xml4
-rw-r--r--test/testcases/tests/level3/ls/files/datatype_normalization.svg.xsd60
-rw-r--r--test/testcases/tests/level3/ls/files/datatype_normalization.xml90
-rw-r--r--test/testcases/tests/level3/ls/files/datatype_normalization.xsd212
-rw-r--r--test/testcases/tests/level3/ls/files/datatype_normalization2.xml33
-rw-r--r--test/testcases/tests/level3/ls/files/datatype_normalization2.xsd99
-rw-r--r--test/testcases/tests/level3/ls/files/hc_staff.svg87
-rw-r--r--test/testcases/tests/level3/ls/files/hc_staff.svg.xsd60
-rw-r--r--test/testcases/tests/level3/ls/files/hc_staff.xhtml73
-rw-r--r--test/testcases/tests/level3/ls/files/hc_staff.xml73
-rw-r--r--test/testcases/tests/level3/ls/files/hc_staff.xsd250
-rw-r--r--test/testcases/tests/level3/ls/files/namespaces1.xml1
-rw-r--r--test/testcases/tests/level3/ls/files/pibase.xml10
-rw-r--r--test/testcases/tests/level3/ls/files/schematype1.xml2
-rw-r--r--test/testcases/tests/level3/ls/files/subdir/CVS/Entries2
-rw-r--r--test/testcases/tests/level3/ls/files/subdir/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/ls/files/subdir/CVS/Root1
-rw-r--r--test/testcases/tests/level3/ls/files/subdir/CVS/Template0
-rw-r--r--test/testcases/tests/level3/ls/files/subdir/myentity.ent5
-rw-r--r--test/testcases/tests/level3/ls/files/svgtest.js0
-rw-r--r--test/testcases/tests/level3/ls/files/svgunit.js0
-rw-r--r--test/testcases/tests/level3/ls/files/test0.svg11
-rw-r--r--test/testcases/tests/level3/ls/files/test0.xml5
-rw-r--r--test/testcases/tests/level3/ls/files/test1.xml1
-rw-r--r--test/testcases/tests/level3/ls/files/test2.xml1
-rw-r--r--test/testcases/tests/level3/ls/files/test3.xml12
-rw-r--r--test/testcases/tests/level3/ls/files/test4.xml13
-rw-r--r--test/testcases/tests/level3/ls/files/test5.xml1
-rw-r--r--test/testcases/tests/level3/ls/files/test7.xml18
-rw-r--r--test/testcases/tests/level3/ls/files/testpdf.pdf5
-rw-r--r--test/testcases/tests/level3/ls/files/testsvg.dtd13
-rw-r--r--test/testcases/tests/level3/ls/files/unsupportedencoding1.xml2
-rw-r--r--test/testcases/tests/level3/ls/files/validate1.xml4
-rw-r--r--test/testcases/tests/level3/ls/files/validateschema1.xml23
-rw-r--r--test/testcases/tests/level3/ls/files/wellformed1.xml8
-rw-r--r--test/testcases/tests/level3/ls/files/wellformed2.xml8
-rw-r--r--test/testcases/tests/level3/ls/files/wellformed3.xml7
-rw-r--r--test/testcases/tests/level3/ls/files/xhtml1-strict.dtd65
-rw-r--r--test/testcases/tests/level3/ls/infoset01.xml51
-rw-r--r--test/testcases/tests/level3/ls/infoset02.xml54
-rw-r--r--test/testcases/tests/level3/ls/infoset03.xml76
-rw-r--r--test/testcases/tests/level3/ls/infoset04.xml53
-rw-r--r--test/testcases/tests/level3/ls/infoset05.xml52
-rw-r--r--test/testcases/tests/level3/ls/infoset06.xml59
-rw-r--r--test/testcases/tests/level3/ls/infoset07.xml51
-rw-r--r--test/testcases/tests/level3/ls/infoset08.xml49
-rw-r--r--test/testcases/tests/level3/ls/metadata.xml19
-rw-r--r--test/testcases/tests/level3/ls/namespacedeclarations01.xml53
-rw-r--r--test/testcases/tests/level3/ls/namespacedeclarations02.xml52
-rw-r--r--test/testcases/tests/level3/ls/namespaces01.xml49
-rw-r--r--test/testcases/tests/level3/ls/namespaces02.xml54
-rw-r--r--test/testcases/tests/level3/ls/newline01.xml39
-rw-r--r--test/testcases/tests/level3/ls/newline02.xml40
-rw-r--r--test/testcases/tests/level3/ls/newline03.xml43
-rw-r--r--test/testcases/tests/level3/ls/noinputspecified01.xml65
-rw-r--r--test/testcases/tests/level3/ls/nooutputspecified01.xml67
-rw-r--r--test/testcases/tests/level3/ls/normalizecharacters01.xml50
-rw-r--r--test/testcases/tests/level3/ls/normalizecharacters02.xml54
-rw-r--r--test/testcases/tests/level3/ls/normalizecharacters03.xml52
-rw-r--r--test/testcases/tests/level3/ls/normalizecharacters04.xml46
-rw-r--r--test/testcases/tests/level3/ls/schemalocation01.xml70
-rw-r--r--test/testcases/tests/level3/ls/schemalocation02.xml83
-rw-r--r--test/testcases/tests/level3/ls/schemalocation03.xml67
-rw-r--r--test/testcases/tests/level3/ls/schemalocation04.xml71
-rw-r--r--test/testcases/tests/level3/ls/schematype01.xml74
-rw-r--r--test/testcases/tests/level3/ls/schematype02.xml64
-rw-r--r--test/testcases/tests/level3/ls/schematype03.xml64
-rw-r--r--test/testcases/tests/level3/ls/schematype04.xml65
-rw-r--r--test/testcases/tests/level3/ls/splitcdatasections01.xml53
-rw-r--r--test/testcases/tests/level3/ls/splitcdatasections02.xml76
-rw-r--r--test/testcases/tests/level3/ls/unsupportedencoding01.xml64
-rw-r--r--test/testcases/tests/level3/ls/validate01.xml51
-rw-r--r--test/testcases/tests/level3/ls/validate02.xml67
-rw-r--r--test/testcases/tests/level3/ls/validate03.xml51
-rw-r--r--test/testcases/tests/level3/ls/validate04.xml67
-rw-r--r--test/testcases/tests/level3/ls/validate05.xml43
-rw-r--r--test/testcases/tests/level3/ls/validate06.xml51
-rw-r--r--test/testcases/tests/level3/ls/validate07.xml58
-rw-r--r--test/testcases/tests/level3/ls/validate08.xml59
-rw-r--r--test/testcases/tests/level3/ls/validateifschema01.xml51
-rw-r--r--test/testcases/tests/level3/ls/validateifschema02.xml57
-rw-r--r--test/testcases/tests/level3/ls/validateifschema03.xml51
-rw-r--r--test/testcases/tests/level3/ls/validateifschema04.xml67
-rw-r--r--test/testcases/tests/level3/ls/wellformed01.xml68
-rw-r--r--test/testcases/tests/level3/ls/wellformed02.xml68
-rw-r--r--test/testcases/tests/level3/ls/wellformed03.xml68
-rw-r--r--test/testcases/tests/level3/ls/writeToURI1.xml69
-rw-r--r--test/testcases/tests/level3/ls/writeToURI2.xml69
-rw-r--r--test/testcases/tests/level3/ls/xmldeclaration01.xml48
-rw-r--r--test/testcases/tests/level3/ls/xmldeclaration02.xml48
-rw-r--r--test/testcases/tests/level3/validation/.cvsignore3
-rw-r--r--test/testcases/tests/level3/validation/CVS/Entries47
-rw-r--r--test/testcases/tests/level3/validation/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/validation/CVS/Root1
-rw-r--r--test/testcases/tests/level3/validation/CVS/Template0
-rw-r--r--test/testcases/tests/level3/validation/allowedAttributes.xml45
-rw-r--r--test/testcases/tests/level3/validation/allowedChildren.xml46
-rw-r--r--test/testcases/tests/level3/validation/allowedFirstChildren.xml42
-rw-r--r--test/testcases/tests/level3/validation/allowedNextSiblings.xml45
-rw-r--r--test/testcases/tests/level3/validation/allowedParents.xml45
-rw-r--r--test/testcases/tests/level3/validation/allowedPreviousSiblings.xml44
-rw-r--r--test/testcases/tests/level3/validation/alltests.xml69
-rw-r--r--test/testcases/tests/level3/validation/canAppendChildFalse.xml42
-rw-r--r--test/testcases/tests/level3/validation/canAppendChildTrue.xml42
-rw-r--r--test/testcases/tests/level3/validation/canAppendData.xml43
-rw-r--r--test/testcases/tests/level3/validation/canDeleteData.xml43
-rw-r--r--test/testcases/tests/level3/validation/canInsertBeforeFalse.xml47
-rw-r--r--test/testcases/tests/level3/validation/canInsertBeforeTrue.xml51
-rw-r--r--test/testcases/tests/level3/validation/canInsertData.xml44
-rw-r--r--test/testcases/tests/level3/validation/canRemoveAttributeFalse.xml40
-rw-r--r--test/testcases/tests/level3/validation/canRemoveAttributeNS.xml42
-rw-r--r--test/testcases/tests/level3/validation/canRemoveAttributeNode.xml41
-rw-r--r--test/testcases/tests/level3/validation/canRemoveAttributeTrue.xml40
-rw-r--r--test/testcases/tests/level3/validation/canRemoveChildFalse.xml47
-rw-r--r--test/testcases/tests/level3/validation/canRemoveChildTrue.xml46
-rw-r--r--test/testcases/tests/level3/validation/canReplaceChildFalse.xml46
-rw-r--r--test/testcases/tests/level3/validation/canReplaceChildTrue.xml47
-rw-r--r--test/testcases/tests/level3/validation/canReplaceDataFalse.xml43
-rw-r--r--test/testcases/tests/level3/validation/canReplaceDataTrue.xml43
-rw-r--r--test/testcases/tests/level3/validation/canSetAttributeFalse.xml40
-rw-r--r--test/testcases/tests/level3/validation/canSetAttributeNS.xml42
-rw-r--r--test/testcases/tests/level3/validation/canSetAttributeNode.xml42
-rw-r--r--test/testcases/tests/level3/validation/canSetAttributeTrue.xml40
-rw-r--r--test/testcases/tests/level3/validation/canSetData.xml43
-rw-r--r--test/testcases/tests/level3/validation/contentType.xml39
-rw-r--r--test/testcases/tests/level3/validation/defaultValue.xml42
-rw-r--r--test/testcases/tests/level3/validation/definedElements.xml42
-rw-r--r--test/testcases/tests/level3/validation/enumeratedValues.xml46
-rw-r--r--test/testcases/tests/level3/validation/files/CVS/Entries3
-rw-r--r--test/testcases/tests/level3/validation/files/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/validation/files/CVS/Root1
-rw-r--r--test/testcases/tests/level3/validation/files/CVS/Template0
-rw-r--r--test/testcases/tests/level3/validation/files/book.xml10
-rw-r--r--test/testcases/tests/level3/validation/files/book.xsd52
-rw-r--r--test/testcases/tests/level3/validation/getFeature01.xml44
-rw-r--r--test/testcases/tests/level3/validation/getFeature02.xml41
-rw-r--r--test/testcases/tests/level3/validation/hasFeature01.xml39
-rw-r--r--test/testcases/tests/level3/validation/hasFeature02.xml40
-rw-r--r--test/testcases/tests/level3/validation/hasFeature03.xml42
-rw-r--r--test/testcases/tests/level3/validation/hasFeature04.xml41
-rw-r--r--test/testcases/tests/level3/validation/isElementDefined.xml43
-rw-r--r--test/testcases/tests/level3/validation/isElementDefinedNS.xml43
-rw-r--r--test/testcases/tests/level3/validation/metadata.xml19
-rw-r--r--test/testcases/tests/level3/validation/nodeValidity.xml39
-rw-r--r--test/testcases/tests/level3/validation/requiredAttributes.xml44
-rw-r--r--test/testcases/tests/level3/validation/validateDocument.xml36
-rw-r--r--test/testcases/tests/level3/xpath/.cvsignore3
-rw-r--r--test/testcases/tests/level3/xpath/Attribute_Nodes.xml118
-rw-r--r--test/testcases/tests/level3/xpath/Attribute_Nodes_xmlns.xml94
-rw-r--r--test/testcases/tests/level3/xpath/CVS/Entries70
-rw-r--r--test/testcases/tests/level3/xpath/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/xpath/CVS/Root1
-rw-r--r--test/testcases/tests/level3/xpath/CVS/Template0
-rw-r--r--test/testcases/tests/level3/xpath/Comment_Nodes.xml104
-rw-r--r--test/testcases/tests/level3/xpath/Conformance_Expressions.xml280
-rw-r--r--test/testcases/tests/level3/xpath/Conformance_ID.xml98
-rw-r--r--test/testcases/tests/level3/xpath/Conformance_hasFeature_3.xml47
-rw-r--r--test/testcases/tests/level3/xpath/Conformance_hasFeature_empty.xml47
-rw-r--r--test/testcases/tests/level3/xpath/Conformance_hasFeature_null.xml48
-rw-r--r--test/testcases/tests/level3/xpath/Conformance_isSupported_3.xml46
-rw-r--r--test/testcases/tests/level3/xpath/Conformance_isSupported_empty.xml48
-rw-r--r--test/testcases/tests/level3/xpath/Conformance_isSupported_null.xml45
-rw-r--r--test/testcases/tests/level3/xpath/Element_Nodes.xml104
-rw-r--r--test/testcases/tests/level3/xpath/Processing_Instruction_Nodes.xml105
-rw-r--r--test/testcases/tests/level3/xpath/Text_Nodes.xml150
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluatorCast01.xml36
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_INVALID_EXPRESSION_ERR.xml50
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NAMESPACE_ERR_01.xml49
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NAMESPACE_ERR_02.xml55
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NS.xml53
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_no_NS.xml46
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_all.xml110
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_document.xml44
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_documentElement.xml48
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_INVALID_EXPRESSION_ERR.xml56
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_NAMESPACE_ERR.xml57
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_NOT_SUPPORTED_ERR.xml58
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_TYPE_ERR.xml44
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_WRONG_DOCUMENT_ERR.xml60
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_document.xml46
-rw-r--r--test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_documentElement.xml46
-rw-r--r--test/testcases/tests/level3/xpath/XPathExpression_evaluate_NOT_SUPPORTED_ERR.xml64
-rw-r--r--test/testcases/tests/level3/xpath/XPathExpression_evaluate_WRONG_DOCUMENT_ERR.xml66
-rw-r--r--test/testcases/tests/level3/xpath/XPathExpression_evaluate_document.xml58
-rw-r--r--test/testcases/tests/level3/xpath/XPathExpression_evaluate_documentElement.xml62
-rw-r--r--test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_nist_dmstc.xml119
-rw-r--r--test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_null.xml86
-rw-r--r--test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_prefix.xml99
-rw-r--r--test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_xml.xml88
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_TYPE_ERR.xml457
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_booleanValue_false.xml100
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_booleanValue_true.xml100
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ANY_TYPE.xml108
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ANY_UNORDERED_NODE_TYPE.xml108
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_BOOLEAN_TYPE.xml108
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_FIRST_ORDERED_NODE_TYPE.xml108
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_NUMBER_TYPE.xml108
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ORDERED_NODE_ITERATOR_TYPE.xml116
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ORDERED_NODE_SNAPSHOT_TYPE.xml108
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_STRING_TYPE.xml108
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_UNORDERED_NODE_ITERATOR_TYPE.xml116
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_UNORDERED_NODE_SNAPSHOT_TYPE.xml108
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_iterateNext_INVALID_STATE_ERR.xml113
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_iteratorNext_ORDERED_NODE_ITERATOR_TYPE.xml160
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_iteratorNext_UNORDERED_NODE_ITERATOR_TYPE.xml112
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_numberValue.xml95
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_resultType.xml179
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_singleNodeValue_ANY_UNORDERED_NODE_TYPE.xml99
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_singleNodeValue_FIRST_ORDERED_NODE_TYPE.xml100
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_null.xml101
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_order.xml151
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_count.xml114
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_null.xml101
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_snapshotLength_ORDERED_NODE_SNAPSHOT_TYPE.xml98
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_snapshotLength_UNORDERED_NODE_SNAPSHOT_TYPE.xml98
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_stringValue.xml97
-rw-r--r--test/testcases/tests/level3/xpath/alltests.xml89
-rw-r--r--test/testcases/tests/level3/xpath/dom3xpathents.ent16
-rw-r--r--test/testcases/tests/level3/xpath/files/CVS/Entries11
-rw-r--r--test/testcases/tests/level3/xpath/files/CVS/Repository1
-rw-r--r--test/testcases/tests/level3/xpath/files/CVS/Root1
-rw-r--r--test/testcases/tests/level3/xpath/files/CVS/Template0
-rw-r--r--test/testcases/tests/level3/xpath/files/internaldtd.svg29
-rw-r--r--test/testcases/tests/level3/xpath/files/internaldtd.xml12
-rw-r--r--test/testcases/tests/level3/xpath/files/staff.dtd17
-rw-r--r--test/testcases/tests/level3/xpath/files/staff.svg72
-rw-r--r--test/testcases/tests/level3/xpath/files/staff.xml57
-rw-r--r--test/testcases/tests/level3/xpath/files/staffNS.dtd47
-rw-r--r--test/testcases/tests/level3/xpath/files/staffNS.svg73
-rw-r--r--test/testcases/tests/level3/xpath/files/staffNS.xml44
-rw-r--r--test/testcases/tests/level3/xpath/files/svgtest.js0
-rw-r--r--test/testcases/tests/level3/xpath/files/svgunit.js0
-rw-r--r--test/testcases/tests/level3/xpath/metadata.xml19
-rw-r--r--test/testcases/tests/submittedtests/CVS/Entries1
-rw-r--r--test/testcases/tests/submittedtests/CVS/Repository1
-rw-r--r--test/testcases/tests/submittedtests/CVS/Root1
-rw-r--r--test/testcases/tests/submittedtests/CVS/Template0
-rw-r--r--test/testcases/tests/submittedtests/netscapeHTML/CVS/Entries1
-rw-r--r--test/testcases/tests/submittedtests/netscapeHTML/CVS/Repository1
-rw-r--r--test/testcases/tests/submittedtests/netscapeHTML/CVS/Root1
-rw-r--r--test/testcases/tests/submittedtests/netscapeHTML/CVS/Template0
-rw-r--r--test/testcases/tests/validation/CVS/Entries1
-rw-r--r--test/testcases/tests/validation/CVS/Repository1
-rw-r--r--test/testcases/tests/validation/CVS/Root1
-rw-r--r--test/testcases/tests/validation/CVS/Template0
-rw-r--r--test/testcases/tests/validation/files/CVS/Entries1
-rw-r--r--test/testcases/tests/validation/files/CVS/Repository1
-rw-r--r--test/testcases/tests/validation/files/CVS/Root1
-rw-r--r--test/testcases/tests/validation/files/CVS/Template0
3060 files changed, 147514 insertions, 0 deletions
diff --git a/test/testcases/tests/CVS/Entries b/test/testcases/tests/CVS/Entries
new file mode 100644
index 0000000..3823ab2
--- /dev/null
+++ b/test/testcases/tests/CVS/Entries
@@ -0,0 +1,5 @@
+D/level1////
+D/level2////
+D/level3////
+D/submittedtests////
+D/validation////
diff --git a/test/testcases/tests/CVS/Repository b/test/testcases/tests/CVS/Repository
new file mode 100644
index 0000000..25af10a
--- /dev/null
+++ b/test/testcases/tests/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests
diff --git a/test/testcases/tests/CVS/Root b/test/testcases/tests/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/CVS/Template b/test/testcases/tests/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/CVS/Template
diff --git a/test/testcases/tests/level1/CVS/Entries b/test/testcases/tests/level1/CVS/Entries
new file mode 100644
index 0000000..1254121
--- /dev/null
+++ b/test/testcases/tests/level1/CVS/Entries
@@ -0,0 +1,2 @@
+D/core////
+D/html////
diff --git a/test/testcases/tests/level1/CVS/Repository b/test/testcases/tests/level1/CVS/Repository
new file mode 100644
index 0000000..ffe8b1f
--- /dev/null
+++ b/test/testcases/tests/level1/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level1
diff --git a/test/testcases/tests/level1/CVS/Root b/test/testcases/tests/level1/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level1/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level1/CVS/Template b/test/testcases/tests/level1/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level1/CVS/Template
diff --git a/test/testcases/tests/level1/core/.cvsignore b/test/testcases/tests/level1/core/.cvsignore
new file mode 100644
index 0000000..46fbb92
--- /dev/null
+++ b/test/testcases/tests/level1/core/.cvsignore
@@ -0,0 +1,2 @@
+dom1.dtd
+dom1.xsd
diff --git a/test/testcases/tests/level1/core/.nodeappendchild.xml.swp b/test/testcases/tests/level1/core/.nodeappendchild.xml.swp
new file mode 100644
index 0000000..1611a6e
--- /dev/null
+++ b/test/testcases/tests/level1/core/.nodeappendchild.xml.swp
Binary files differ
diff --git a/test/testcases/tests/level1/core/CVS/Entries b/test/testcases/tests/level1/core/CVS/Entries
new file mode 100644
index 0000000..7b3371c
--- /dev/null
+++ b/test/testcases/tests/level1/core/CVS/Entries
@@ -0,0 +1,531 @@
+D/files////
+/.cvsignore/1.1/Fri Apr 3 02:48:04 2009//
+/alltests.xml/1.22/Fri Apr 3 02:48:03 2009//
+/attrcreatedocumentfragment.xml/1.9/Fri Apr 3 02:48:04 2009//
+/attrcreatetextnode.xml/1.9/Fri Apr 3 02:48:03 2009//
+/attrcreatetextnode2.xml/1.5/Fri Apr 3 02:48:03 2009//
+/attrdefaultvalue.xml/1.7/Fri Apr 3 02:48:03 2009//
+/attreffectivevalue.xml/1.6/Fri Apr 3 02:48:03 2009//
+/attrentityreplacement.xml/1.7/Fri Apr 3 02:48:04 2009//
+/attrname.xml/1.6/Fri Apr 3 02:48:04 2009//
+/attrnextsiblingnull.xml/1.7/Fri Apr 3 02:48:04 2009//
+/attrnotspecifiedvalue.xml/1.8/Fri Apr 3 02:48:03 2009//
+/attrparentnodenull.xml/1.7/Fri Apr 3 02:48:04 2009//
+/attrprevioussiblingnull.xml/1.7/Fri Apr 3 02:48:04 2009//
+/attrremovechild1.xml/1.3/Fri Apr 3 02:48:04 2009//
+/attrreplacechild1.xml/1.3/Fri Apr 3 02:48:04 2009//
+/attrsetvaluenomodificationallowederr.xml/1.9/Fri Apr 3 02:48:04 2009//
+/attrsetvaluenomodificationallowederrEE.xml/1.9/Fri Apr 3 02:48:03 2009//
+/attrspecifiedvalue.xml/1.6/Fri Apr 3 02:48:03 2009//
+/attrspecifiedvaluechanged.xml/1.6/Fri Apr 3 02:48:04 2009//
+/attrspecifiedvalueremove.xml/1.8/Fri Apr 3 02:48:04 2009//
+/cdatasectiongetdata.xml/1.13/Fri Apr 3 02:48:03 2009//
+/cdatasectionnormalize.xml/1.11/Fri Apr 3 02:48:03 2009//
+/characterdataappenddata.xml/1.6/Fri Apr 3 02:48:03 2009//
+/characterdataappenddatagetdata.xml/1.7/Fri Apr 3 02:48:04 2009//
+/characterdataappenddatanomodificationallowederr.xml/1.12/Fri Apr 3 02:48:04 2009//
+/characterdataappenddatanomodificationallowederrEE.xml/1.8/Fri Apr 3 02:48:04 2009//
+/characterdatadeletedatabegining.xml/1.8/Fri Apr 3 02:48:04 2009//
+/characterdatadeletedataend.xml/1.7/Fri Apr 3 02:48:04 2009//
+/characterdatadeletedataexceedslength.xml/1.7/Fri Apr 3 02:48:04 2009//
+/characterdatadeletedatagetlengthanddata.xml/1.8/Fri Apr 3 02:48:03 2009//
+/characterdatadeletedatamiddle.xml/1.7/Fri Apr 3 02:48:04 2009//
+/characterdatadeletedatanomodificationallowederr.xml/1.12/Fri Apr 3 02:48:04 2009//
+/characterdatadeletedatanomodificationallowederrEE.xml/1.8/Fri Apr 3 02:48:04 2009//
+/characterdatagetdata.xml/1.7/Fri Apr 3 02:48:03 2009//
+/characterdatagetlength.xml/1.6/Fri Apr 3 02:48:03 2009//
+/characterdataindexsizeerrdeletedatacountnegative.xml/1.9/Fri Apr 3 02:48:03 2009//
+/characterdataindexsizeerrdeletedataoffsetgreater.xml/1.7/Fri Apr 3 02:48:03 2009//
+/characterdataindexsizeerrdeletedataoffsetnegative.xml/1.7/Fri Apr 3 02:48:04 2009//
+/characterdataindexsizeerrinsertdataoffsetgreater.xml/1.9/Fri Apr 3 02:48:04 2009//
+/characterdataindexsizeerrinsertdataoffsetnegative.xml/1.9/Fri Apr 3 02:48:04 2009//
+/characterdataindexsizeerrreplacedatacountnegative.xml/1.9/Fri Apr 3 02:48:03 2009//
+/characterdataindexsizeerrreplacedataoffsetgreater.xml/1.9/Fri Apr 3 02:48:04 2009//
+/characterdataindexsizeerrreplacedataoffsetnegative.xml/1.7/Fri Apr 3 02:48:04 2009//
+/characterdataindexsizeerrsubstringcountnegative.xml/1.8/Fri Apr 3 02:48:03 2009//
+/characterdataindexsizeerrsubstringnegativeoffset.xml/1.8/Fri Apr 3 02:48:03 2009//
+/characterdataindexsizeerrsubstringoffsetgreater.xml/1.8/Fri Apr 3 02:48:03 2009//
+/characterdatainsertdatabeginning.xml/1.8/Fri Apr 3 02:48:03 2009//
+/characterdatainsertdataend.xml/1.7/Fri Apr 3 02:48:04 2009//
+/characterdatainsertdatamiddle.xml/1.7/Fri Apr 3 02:48:04 2009//
+/characterdatainsertdatanomodificationallowederr.xml/1.12/Fri Apr 3 02:48:04 2009//
+/characterdatainsertdatanomodificationallowederrEE.xml/1.8/Fri Apr 3 02:48:04 2009//
+/characterdatareplacedatabegining.xml/1.8/Fri Apr 3 02:48:04 2009//
+/characterdatareplacedataend.xml/1.7/Fri Apr 3 02:48:04 2009//
+/characterdatareplacedataexceedslengthofarg.xml/1.7/Fri Apr 3 02:48:03 2009//
+/characterdatareplacedataexceedslengthofdata.xml/1.7/Fri Apr 3 02:48:03 2009//
+/characterdatareplacedatamiddle.xml/1.7/Fri Apr 3 02:48:04 2009//
+/characterdatareplacedatanomodificationallowederr.xml/1.13/Fri Apr 3 02:48:03 2009//
+/characterdatareplacedatanomodificationallowederrEE.xml/1.8/Fri Apr 3 02:48:04 2009//
+/characterdatasetdatanomodificationallowederr.xml/1.11/Fri Apr 3 02:48:04 2009//
+/characterdatasetdatanomodificationallowederrEE.xml/1.8/Fri Apr 3 02:48:04 2009//
+/characterdatasetnodevalue.xml/1.4/Fri Apr 3 02:48:03 2009//
+/characterdatasubstringexceedsvalue.xml/1.7/Fri Apr 3 02:48:03 2009//
+/characterdatasubstringvalue.xml/1.7/Fri Apr 3 02:48:04 2009//
+/commentgetcomment.xml/1.6/Fri Apr 3 02:48:04 2009//
+/documentcreateattribute.xml/1.8/Fri Apr 3 02:48:03 2009//
+/documentcreatecdatasection.xml/1.12/Fri Apr 3 02:48:04 2009//
+/documentcreatecomment.xml/1.8/Fri Apr 3 02:48:04 2009//
+/documentcreatedocumentfragment.xml/1.8/Fri Apr 3 02:48:04 2009//
+/documentcreateelement.xml/1.10/Fri Apr 3 02:48:03 2009//
+/documentcreateelementcasesensitive.xml/1.7/Fri Apr 3 02:48:04 2009//
+/documentcreateelementdefaultattr.xml/1.10/Fri Apr 3 02:48:03 2009//
+/documentcreateentityreference.xml/1.15/Fri Apr 3 02:48:04 2009//
+/documentcreateentityreferenceknown.xml/1.14/Fri Apr 3 02:48:04 2009//
+/documentcreateprocessinginstruction.xml/1.12/Fri Apr 3 02:48:03 2009//
+/documentcreatetextnode.xml/1.8/Fri Apr 3 02:48:03 2009//
+/documentgetdoctype.xml/1.13/Fri Apr 3 02:48:04 2009//
+/documentgetdoctypenodtd.xml/1.10/Fri Apr 3 02:48:04 2009//
+/documentgetelementsbytagnamelength.xml/1.6/Fri Apr 3 02:48:04 2009//
+/documentgetelementsbytagnametotallength.xml/1.7/Fri Apr 3 02:48:04 2009//
+/documentgetelementsbytagnamevalue.xml/1.7/Fri Apr 3 02:48:03 2009//
+/documentgetimplementation.xml/1.6/Fri Apr 3 02:48:04 2009//
+/documentgetrootnode.xml/1.8/Fri Apr 3 02:48:04 2009//
+/documentinvalidcharacterexceptioncreateattribute.xml/1.8/Fri Apr 3 02:48:04 2009//
+/documentinvalidcharacterexceptioncreateelement.xml/1.8/Fri Apr 3 02:48:03 2009//
+/documentinvalidcharacterexceptioncreateentref.xml/1.13/Fri Apr 3 02:48:04 2009//
+/documentinvalidcharacterexceptioncreateentref1.xml/1.3/Fri Apr 3 02:48:04 2009//
+/documentinvalidcharacterexceptioncreatepi.xml/1.13/Fri Apr 3 02:48:03 2009//
+/documentinvalidcharacterexceptioncreatepi1.xml/1.3/Fri Apr 3 02:48:03 2009//
+/documenttypegetdoctype.xml/1.10/Fri Apr 3 02:48:03 2009//
+/documenttypegetentities.xml/1.13/Fri Apr 3 02:48:03 2009//
+/documenttypegetentitieslength.xml/1.9/Fri Apr 3 02:48:03 2009//
+/documenttypegetentitiestype.xml/1.9/Fri Apr 3 02:48:04 2009//
+/documenttypegetnotations.xml/1.10/Fri Apr 3 02:48:04 2009//
+/documenttypegetnotationstype.xml/1.8/Fri Apr 3 02:48:03 2009//
+/domimplementationfeaturenoversion.xml/1.7/Fri Apr 3 02:48:04 2009//
+/domimplementationfeaturenull.xml/1.5/Fri Apr 3 02:48:03 2009//
+/domimplementationfeaturexml.xml/1.7/Fri Apr 3 02:48:04 2009//
+/elementaddnewattribute.xml/1.6/Fri Apr 3 02:48:04 2009//
+/elementassociatedattribute.xml/1.6/Fri Apr 3 02:48:04 2009//
+/elementchangeattributevalue.xml/1.6/Fri Apr 3 02:48:03 2009//
+/elementcreatenewattribute.xml/1.7/Fri Apr 3 02:48:03 2009//
+/elementgetattributenode.xml/1.6/Fri Apr 3 02:48:04 2009//
+/elementgetattributenodenull.xml/1.5/Fri Apr 3 02:48:04 2009//
+/elementgetelementempty.xml/1.6/Fri Apr 3 02:48:04 2009//
+/elementgetelementsbytagname.xml/1.6/Fri Apr 3 02:48:03 2009//
+/elementgetelementsbytagnameaccessnodelist.xml/1.10/Fri Apr 3 02:48:03 2009//
+/elementgetelementsbytagnamenomatch.xml/1.6/Fri Apr 3 02:48:03 2009//
+/elementgetelementsbytagnamespecialvalue.xml/1.8/Fri Apr 3 02:48:04 2009//
+/elementgettagname.xml/1.8/Fri Apr 3 02:48:04 2009//
+/elementinuseattributeerr.xml/1.9/Fri Apr 3 02:48:04 2009//
+/elementinvalidcharacterexception.xml/1.6/Fri Apr 3 02:48:04 2009//
+/elementnormalize.xml/1.7/Fri Apr 3 02:48:04 2009//
+/elementnotfounderr.xml/1.7/Fri Apr 3 02:48:04 2009//
+/elementremoveattribute.xml/1.8/Fri Apr 3 02:48:04 2009//
+/elementremoveattributeaftercreate.xml/1.6/Fri Apr 3 02:48:03 2009//
+/elementremoveattributenode.xml/1.6/Fri Apr 3 02:48:03 2009//
+/elementremoveattributenodenomodificationallowederr.xml/1.9/Fri Apr 3 02:48:04 2009//
+/elementremoveattributenodenomodificationallowederrEE.xml/1.10/Fri Apr 3 02:48:03 2009//
+/elementremoveattributenomodificationallowederr.xml/1.8/Fri Apr 3 02:48:04 2009//
+/elementremoveattributenomodificationallowederrEE.xml/1.10/Fri Apr 3 02:48:03 2009//
+/elementremoveattributerestoredefaultvalue.xml/1.9/Fri Apr 3 02:48:04 2009//
+/elementreplaceattributewithself.xml/1.3/Fri Apr 3 02:48:04 2009//
+/elementreplaceexistingattribute.xml/1.6/Fri Apr 3 02:48:04 2009//
+/elementreplaceexistingattributegevalue.xml/1.8/Fri Apr 3 02:48:04 2009//
+/elementretrieveallattributes.xml/1.7/Fri Apr 3 02:48:04 2009//
+/elementretrieveattrvalue.xml/1.7/Fri Apr 3 02:48:03 2009//
+/elementretrievetagname.xml/1.6/Fri Apr 3 02:48:04 2009//
+/elementsetattributenodenomodificationallowederr.xml/1.12/Fri Apr 3 02:48:03 2009//
+/elementsetattributenodenomodificationallowederrEE.xml/1.9/Fri Apr 3 02:48:03 2009//
+/elementsetattributenodenull.xml/1.5/Fri Apr 3 02:48:04 2009//
+/elementsetattributenomodificationallowederr.xml/1.10/Fri Apr 3 02:48:03 2009//
+/elementsetattributenomodificationallowederrEE.xml/1.8/Fri Apr 3 02:48:03 2009//
+/elementwrongdocumenterr.xml/1.6/Fri Apr 3 02:48:03 2009//
+/entitygetentityname.xml/1.10/Fri Apr 3 02:48:03 2009//
+/entitygetpublicid.xml/1.12/Fri Apr 3 02:48:03 2009//
+/entitygetpublicidnull.xml/1.10/Fri Apr 3 02:48:03 2009//
+/hc_attrappendchild1.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrappendchild2.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrappendchild3.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrappendchild4.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrappendchild5.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_attrappendchild6.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_attrchildnodes1.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrchildnodes2.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrclonenode1.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrcreatedocumentfragment.xml/1.5/Fri Apr 3 02:48:03 2009//
+/hc_attrcreatetextnode.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrcreatetextnode2.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_attreffectivevalue.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrfirstchild.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrgetvalue1.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrgetvalue2.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrhaschildnodes.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_attrinsertbefore1.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrinsertbefore2.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrinsertbefore3.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_attrinsertbefore4.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrinsertbefore5.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_attrinsertbefore6.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrinsertbefore7.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrlastchild.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrname.xml/1.5/Fri Apr 3 02:48:04 2009//
+/hc_attrnextsiblingnull.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_attrnormalize.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_attrparentnodenull.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrprevioussiblingnull.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrremovechild1.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrremovechild2.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_attrreplacechild1.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrreplacechild2.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_attrsetvalue1.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_attrsetvalue2.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_attrspecifiedvalue.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_attrspecifiedvaluechanged.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_characterdataappenddata.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_characterdataappenddatagetdata.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_characterdatadeletedatabegining.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_characterdatadeletedataend.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_characterdatadeletedataexceedslength.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_characterdatadeletedatagetlengthanddata.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_characterdatadeletedatamiddle.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_characterdatagetdata.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_characterdatagetlength.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_characterdataindexsizeerrdeletedatacountnegative.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_characterdataindexsizeerrdeletedataoffsetgreater.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_characterdataindexsizeerrdeletedataoffsetnegative.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_characterdataindexsizeerrinsertdataoffsetgreater.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_characterdataindexsizeerrinsertdataoffsetnegative.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_characterdataindexsizeerrreplacedatacountnegative.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_characterdataindexsizeerrreplacedataoffsetgreater.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_characterdataindexsizeerrreplacedataoffsetnegative.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_characterdataindexsizeerrsubstringcountnegative.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_characterdataindexsizeerrsubstringnegativeoffset.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_characterdataindexsizeerrsubstringoffsetgreater.xml/1.4/Fri Apr 3 02:48:04 2009//
+/hc_characterdatainsertdatabeginning.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_characterdatainsertdataend.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_characterdatainsertdatamiddle.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_characterdatareplacedatabegining.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_characterdatareplacedataend.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_characterdatareplacedataexceedslengthofarg.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_characterdatareplacedataexceedslengthofdata.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_characterdatareplacedatamiddle.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_characterdatasetnodevalue.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_characterdatasubstringexceedsvalue.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_characterdatasubstringvalue.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_commentgetcomment.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_documentcreateattribute.xml/1.5/Fri Apr 3 02:48:03 2009//
+/hc_documentcreatecomment.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_documentcreatedocumentfragment.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_documentcreateelement.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_documentcreateelementcasesensitive.xml/1.5/Fri Apr 3 02:48:04 2009//
+/hc_documentcreatetextnode.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_documentgetdoctype.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_documentgetelementsbytagnamelength.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_documentgetelementsbytagnametotallength.xml/1.8/Fri Apr 3 02:48:03 2009//
+/hc_documentgetelementsbytagnamevalue.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_documentgetimplementation.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_documentgetrootnode.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_documentinvalidcharacterexceptioncreateattribute.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_documentinvalidcharacterexceptioncreateattribute1.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_documentinvalidcharacterexceptioncreateelement.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_documentinvalidcharacterexceptioncreateelement1.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_domimplementationfeaturenoversion.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_domimplementationfeaturenull.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_domimplementationfeaturexml.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_elementaddnewattribute.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_elementassociatedattribute.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_elementchangeattributevalue.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_elementcreatenewattribute.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_elementgetattributenode.xml/1.4/Fri Apr 3 02:48:04 2009//
+/hc_elementgetattributenodenull.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_elementgetelementempty.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_elementgetelementsbytagname.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_elementgetelementsbytagnameaccessnodelist.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_elementgetelementsbytagnamenomatch.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_elementgetelementsbytagnamespecialvalue.xml/1.5/Fri Apr 3 02:48:03 2009//
+/hc_elementgettagname.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_elementinuseattributeerr.xml/1.4/Fri Apr 3 02:48:03 2009//
+/hc_elementinvalidcharacterexception.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_elementinvalidcharacterexception1.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_elementnormalize.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_elementnormalize2.xml/1.4/Fri Apr 3 02:48:04 2009//
+/hc_elementnotfounderr.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_elementremoveattribute.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_elementremoveattributeaftercreate.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_elementremoveattributenode.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_elementreplaceattributewithself.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_elementreplaceexistingattribute.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_elementreplaceexistingattributegevalue.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_elementretrieveallattributes.xml/1.6/Fri Apr 3 02:48:03 2009//
+/hc_elementretrieveattrvalue.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_elementretrievetagname.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_elementsetattributenodenull.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_elementwrongdocumenterr.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_entitiesremovenameditem1.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_entitiessetnameditem1.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_namednodemapchildnoderange.xml/1.5/Fri Apr 3 02:48:04 2009//
+/hc_namednodemapgetnameditem.xml/1.4/Fri Apr 3 02:48:04 2009//
+/hc_namednodemapinuseattributeerr.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_namednodemapnotfounderr.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_namednodemapnumberofnodes.xml/1.5/Fri Apr 3 02:48:03 2009//
+/hc_namednodemapremovenameditem.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_namednodemapreturnattrnode.xml/1.5/Fri Apr 3 02:48:04 2009//
+/hc_namednodemapreturnfirstitem.xml/1.5/Fri Apr 3 02:48:03 2009//
+/hc_namednodemapreturnlastitem.xml/1.5/Fri Apr 3 02:48:04 2009//
+/hc_namednodemapreturnnull.xml/1.4/Fri Apr 3 02:48:04 2009//
+/hc_namednodemapsetnameditem.xml/1.4/Fri Apr 3 02:48:03 2009//
+/hc_namednodemapsetnameditemreturnvalue.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_namednodemapsetnameditemthatexists.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_namednodemapsetnameditemwithnewvalue.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_namednodemapwrongdocumenterr.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_nodeappendchild.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_nodeappendchildchildexists.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_nodeappendchilddocfragment.xml/1.5/Fri Apr 3 02:48:03 2009//
+/hc_nodeappendchildgetnodename.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_nodeappendchildinvalidnodetype.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodeappendchildnewchilddiffdocument.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodeappendchildnodeancestor.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodeattributenodeattribute.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodeattributenodename.xml/1.4/Fri Apr 3 02:48:03 2009//
+/hc_nodeattributenodetype.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodeattributenodevalue.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodechildnodes.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_nodechildnodesappendchild.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_nodechildnodesempty.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodecloneattributescopied.xml/1.7/Fri Apr 3 02:48:03 2009//
+/hc_nodeclonefalsenocopytext.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_nodeclonegetparentnull.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodeclonenodefalse.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodeclonenodetrue.xml/1.5/Fri Apr 3 02:48:03 2009//
+/hc_nodeclonetruecopytext.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodecommentnodeattributes.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_nodecommentnodename.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodecommentnodetype.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodecommentnodevalue.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodedocumentfragmentnodename.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodedocumentfragmentnodetype.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodedocumentfragmentnodevalue.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodedocumentnodeattribute.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodedocumentnodename.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodedocumentnodetype.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodedocumentnodevalue.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodeelementnodeattributes.xml/1.6/Fri Apr 3 02:48:03 2009//
+/hc_nodeelementnodename.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_nodeelementnodetype.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_nodeelementnodevalue.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodegetfirstchild.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodegetfirstchildnull.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodegetlastchild.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_nodegetlastchildnull.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodegetnextsibling.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_nodegetnextsiblingnull.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodegetownerdocument.xml/1.4/Fri Apr 3 02:48:04 2009//
+/hc_nodegetownerdocumentnull.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodegetprevioussibling.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodegetprevioussiblingnull.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_nodehaschildnodes.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_nodehaschildnodesfalse.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodeinsertbefore.xml/1.6/Fri Apr 3 02:48:04 2009//
+/hc_nodeinsertbeforedocfragment.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_nodeinsertbeforeinvalidnodetype.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_nodeinsertbeforenewchilddiffdocument.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodeinsertbeforenewchildexists.xml/1.4/Fri Apr 3 02:48:04 2009//
+/hc_nodeinsertbeforenodeancestor.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_nodeinsertbeforenodename.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_nodeinsertbeforerefchildnonexistent.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodeinsertbeforerefchildnull.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_nodelistindexequalzero.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_nodelistindexgetlength.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodelistindexgetlengthofemptylist.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodelistindexnotzero.xml/1.4/Fri Apr 3 02:48:03 2009//
+/hc_nodelistreturnfirstitem.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodelistreturnlastitem.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodelisttraverselist.xml/1.4/Fri Apr 3 02:48:04 2009//
+/hc_nodeparentnode.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodeparentnodenull.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_noderemovechild.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_noderemovechildgetnodename.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_noderemovechildnode.xml/1.5/Fri Apr 3 02:48:04 2009//
+/hc_noderemovechildoldchildnonexistent.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodereplacechild.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_nodereplacechildinvalidnodetype.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_nodereplacechildnewchilddiffdocument.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodereplacechildnewchildexists.xml/1.4/Fri Apr 3 02:48:03 2009//
+/hc_nodereplacechildnodeancestor.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_nodereplacechildnodename.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodereplacechildoldchildnonexistent.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodetextnodeattribute.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodetextnodename.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_nodetextnodetype.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodetextnodevalue.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_nodevalue01.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodevalue02.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_nodevalue03.xml/1.5/Fri Apr 3 02:48:03 2009//
+/hc_nodevalue04.xml/1.5/Fri Apr 3 02:48:03 2009//
+/hc_nodevalue05.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_nodevalue06.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_nodevalue07.xml/1.5/Fri Apr 3 02:48:04 2009//
+/hc_nodevalue08.xml/1.5/Fri Apr 3 02:48:04 2009//
+/hc_notationsremovenameditem1.xml/1.3/Fri Apr 3 02:48:04 2009//
+/hc_notationssetnameditem1.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_textindexsizeerrnegativeoffset.xml/1.1/Fri Apr 3 02:48:04 2009//
+/hc_textindexsizeerroffsetoutofbounds.xml/1.2/Fri Apr 3 02:48:04 2009//
+/hc_textparseintolistofelements.xml/1.4/Fri Apr 3 02:48:03 2009//
+/hc_textsplittextfour.xml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_textsplittextone.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_textsplittextthree.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_textsplittexttwo.xml/1.1/Fri Apr 3 02:48:03 2009//
+/hc_textwithnomarkup.xml/1.1/Fri Apr 3 02:48:04 2009//
+/metadata.xml/1.2/Fri Apr 3 02:48:03 2009//
+/namednodemapchildnoderange.xml/1.7/Fri Apr 3 02:48:03 2009//
+/namednodemapgetnameditem.xml/1.6/Fri Apr 3 02:48:04 2009//
+/namednodemapinuseattributeerr.xml/1.8/Fri Apr 3 02:48:03 2009//
+/namednodemapnotfounderr.xml/1.8/Fri Apr 3 02:48:04 2009//
+/namednodemapnumberofnodes.xml/1.6/Fri Apr 3 02:48:03 2009//
+/namednodemapremovenameditem.xml/1.9/Fri Apr 3 02:48:04 2009//
+/namednodemapremovenameditemgetvalue.xml/1.8/Fri Apr 3 02:48:03 2009//
+/namednodemapremovenameditemreturnnodevalue.xml/1.6/Fri Apr 3 02:48:03 2009//
+/namednodemapreturnattrnode.xml/1.6/Fri Apr 3 02:48:04 2009//
+/namednodemapreturnfirstitem.xml/1.6/Fri Apr 3 02:48:04 2009//
+/namednodemapreturnlastitem.xml/1.6/Fri Apr 3 02:48:04 2009//
+/namednodemapreturnnull.xml/1.5/Fri Apr 3 02:48:04 2009//
+/namednodemapsetnameditem.xml/1.6/Fri Apr 3 02:48:04 2009//
+/namednodemapsetnameditemreturnvalue.xml/1.8/Fri Apr 3 02:48:04 2009//
+/namednodemapsetnameditemthatexists.xml/1.7/Fri Apr 3 02:48:04 2009//
+/namednodemapsetnameditemwithnewvalue.xml/1.6/Fri Apr 3 02:48:03 2009//
+/namednodemapwrongdocumenterr.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodeappendchild.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodeappendchildchildexists.xml/1.10/Fri Apr 3 02:48:04 2009//
+/nodeappendchilddocfragment.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodeappendchildgetnodename.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodeappendchildinvalidnodetype.xml/1.7/Fri Apr 3 02:48:03 2009//
+/nodeappendchildnewchilddiffdocument.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodeappendchildnodeancestor.xml/1.8/Fri Apr 3 02:48:04 2009//
+/nodeappendchildnomodificationallowederr.xml/1.10/Fri Apr 3 02:48:04 2009//
+/nodeappendchildnomodificationallowederrEE.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodeattributenodeattribute.xml/1.7/Fri Apr 3 02:48:03 2009//
+/nodeattributenodename.xml/1.6/Fri Apr 3 02:48:03 2009//
+/nodeattributenodetype.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodeattributenodevalue.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodecdatasectionnodeattribute.xml/1.8/Fri Apr 3 02:48:04 2009//
+/nodecdatasectionnodename.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodecdatasectionnodetype.xml/1.8/Fri Apr 3 02:48:04 2009//
+/nodecdatasectionnodevalue.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodechildnodes.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodechildnodesappendchild.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodechildnodesempty.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodecloneattributescopied.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodeclonefalsenocopytext.xml/1.8/Fri Apr 3 02:48:04 2009//
+/nodeclonegetparentnull.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodeclonenodefalse.xml/1.8/Fri Apr 3 02:48:04 2009//
+/nodeclonenodetrue.xml/1.10/Fri Apr 3 02:48:04 2009//
+/nodeclonetruecopytext.xml/1.10/Fri Apr 3 02:48:03 2009//
+/nodecommentnodeattributes.xml/1.5/Fri Apr 3 02:48:04 2009//
+/nodecommentnodename.xml/1.9/Fri Apr 3 02:48:04 2009//
+/nodecommentnodetype.xml/1.6/Fri Apr 3 02:48:03 2009//
+/nodecommentnodevalue.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodedocumentfragmentnodename.xml/1.7/Fri Apr 3 02:48:03 2009//
+/nodedocumentfragmentnodetype.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodedocumentfragmentnodevalue.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodedocumentnodeattribute.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodedocumentnodename.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodedocumentnodetype.xml/1.5/Fri Apr 3 02:48:04 2009//
+/nodedocumentnodevalue.xml/1.7/Fri Apr 3 02:48:03 2009//
+/nodedocumenttypenodename.xml/1.10/Fri Apr 3 02:48:04 2009//
+/nodedocumenttypenodetype.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodedocumenttypenodevalue.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodeelementnodeattributes.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodeelementnodename.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodeelementnodetype.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodeelementnodevalue.xml/1.7/Fri Apr 3 02:48:03 2009//
+/nodeentitynodeattributes.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodeentitynodename.xml/1.11/Fri Apr 3 02:48:04 2009//
+/nodeentitynodetype.xml/1.9/Fri Apr 3 02:48:04 2009//
+/nodeentitynodevalue.xml/1.10/Fri Apr 3 02:48:03 2009//
+/nodeentityreferencenodeattributes.xml/1.12/Fri Apr 3 02:48:04 2009//
+/nodeentityreferencenodename.xml/1.12/Fri Apr 3 02:48:03 2009//
+/nodeentityreferencenodetype.xml/1.12/Fri Apr 3 02:48:04 2009//
+/nodeentityreferencenodevalue.xml/1.12/Fri Apr 3 02:48:04 2009//
+/nodeentitysetnodevalue.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodegetfirstchild.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodegetfirstchildnull.xml/1.6/Fri Apr 3 02:48:03 2009//
+/nodegetlastchild.xml/1.9/Fri Apr 3 02:48:04 2009//
+/nodegetlastchildnull.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodegetnextsibling.xml/1.10/Fri Apr 3 02:48:04 2009//
+/nodegetnextsiblingnull.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodegetownerdocument.xml/1.8/Fri Apr 3 02:48:04 2009//
+/nodegetownerdocumentnull.xml/1.6/Fri Apr 3 02:48:03 2009//
+/nodegetprevioussibling.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodegetprevioussiblingnull.xml/1.6/Fri Apr 3 02:48:03 2009//
+/nodehaschildnodes.xml/1.5/Fri Apr 3 02:48:03 2009//
+/nodehaschildnodesfalse.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodeinsertbefore.xml/1.10/Fri Apr 3 02:48:04 2009//
+/nodeinsertbeforedocfragment.xml/1.7/Fri Apr 3 02:48:03 2009//
+/nodeinsertbeforeinvalidnodetype.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodeinsertbeforenewchilddiffdocument.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodeinsertbeforenewchildexists.xml/1.10/Fri Apr 3 02:48:04 2009//
+/nodeinsertbeforenodeancestor.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodeinsertbeforenodename.xml/1.6/Fri Apr 3 02:48:03 2009//
+/nodeinsertbeforenomodificationallowederr.xml/1.11/Fri Apr 3 02:48:03 2009//
+/nodeinsertbeforenomodificationallowederrEE.xml/1.6/Fri Apr 3 02:48:03 2009//
+/nodeinsertbeforerefchildnonexistent.xml/1.7/Fri Apr 3 02:48:03 2009//
+/nodeinsertbeforerefchildnull.xml/1.7/Fri Apr 3 02:48:03 2009//
+/nodelistindexequalzero.xml/1.8/Fri Apr 3 02:48:04 2009//
+/nodelistindexgetlength.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodelistindexgetlengthofemptylist.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodelistindexnotzero.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodelistreturnfirstitem.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodelistreturnlastitem.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodelisttraverselist.xml/1.9/Fri Apr 3 02:48:04 2009//
+/nodenotationnodeattributes.xml/1.8/Fri Apr 3 02:48:04 2009//
+/nodenotationnodename.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodenotationnodetype.xml/1.8/Fri Apr 3 02:48:04 2009//
+/nodenotationnodevalue.xml/1.10/Fri Apr 3 02:48:03 2009//
+/nodeparentnode.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodeparentnodenull.xml/1.7/Fri Apr 3 02:48:03 2009//
+/nodeprocessinginstructionnodeattributes.xml/1.5/Fri Apr 3 02:48:03 2009//
+/nodeprocessinginstructionnodename.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodeprocessinginstructionnodetype.xml/1.5/Fri Apr 3 02:48:04 2009//
+/nodeprocessinginstructionnodevalue.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodeprocessinginstructionsetnodevalue.xml/1.3/Fri Apr 3 02:48:03 2009//
+/noderemovechild.xml/1.6/Fri Apr 3 02:48:03 2009//
+/noderemovechildgetnodename.xml/1.10/Fri Apr 3 02:48:03 2009//
+/noderemovechildnode.xml/1.8/Fri Apr 3 02:48:04 2009//
+/noderemovechildnomodificationallowederr.xml/1.11/Fri Apr 3 02:48:04 2009//
+/noderemovechildnomodificationallowederrEE.xml/1.9/Fri Apr 3 02:48:04 2009//
+/noderemovechildoldchildnonexistent.xml/1.7/Fri Apr 3 02:48:03 2009//
+/nodereplacechild.xml/1.7/Fri Apr 3 02:48:03 2009//
+/nodereplacechildinvalidnodetype.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodereplacechildnewchilddiffdocument.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodereplacechildnewchildexists.xml/1.11/Fri Apr 3 02:48:04 2009//
+/nodereplacechildnodeancestor.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodereplacechildnodename.xml/1.8/Fri Apr 3 02:48:03 2009//
+/nodereplacechildnomodificationallowederr.xml/1.9/Fri Apr 3 02:48:04 2009//
+/nodereplacechildnomodificationallowederrEE.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodereplacechildoldchildnonexistent.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodesetnodevaluenomodificationallowederr.xml/1.12/Fri Apr 3 02:48:03 2009//
+/nodesetnodevaluenomodificationallowederrEE.xml/1.9/Fri Apr 3 02:48:03 2009//
+/nodetextnodeattribute.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodetextnodename.xml/1.7/Fri Apr 3 02:48:04 2009//
+/nodetextnodetype.xml/1.6/Fri Apr 3 02:48:03 2009//
+/nodetextnodevalue.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodevalue01.xml/1.2/Fri Apr 3 02:48:03 2009//
+/nodevalue02.xml/1.3/Fri Apr 3 02:48:03 2009//
+/nodevalue03.xml/1.6/Fri Apr 3 02:48:04 2009//
+/nodevalue04.xml/1.5/Fri Apr 3 02:48:04 2009//
+/nodevalue05.xml/1.3/Fri Apr 3 02:48:04 2009//
+/nodevalue06.xml/1.2/Fri Apr 3 02:48:03 2009//
+/nodevalue07.xml/1.5/Fri Apr 3 02:48:04 2009//
+/nodevalue08.xml/1.5/Fri Apr 3 02:48:03 2009//
+/nodevalue09.xml/1.2/Fri Apr 3 02:48:03 2009//
+/notationgetnotationname.xml/1.9/Fri Apr 3 02:48:04 2009//
+/notationgetpublicid.xml/1.8/Fri Apr 3 02:48:04 2009//
+/notationgetpublicidnull.xml/1.8/Fri Apr 3 02:48:03 2009//
+/notationgetsystemid.xml/1.11/Fri Apr 3 02:48:03 2009//
+/notationgetsystemidnull.xml/1.8/Fri Apr 3 02:48:03 2009//
+/processinginstructiongetdata.xml/1.8/Fri Apr 3 02:48:04 2009//
+/processinginstructiongettarget.xml/1.9/Fri Apr 3 02:48:04 2009//
+/processinginstructionsetdatanomodificationallowederr.xml/1.12/Fri Apr 3 02:48:04 2009//
+/processinginstructionsetdatanomodificationallowederrEE.xml/1.10/Fri Apr 3 02:48:04 2009//
+/textindexsizeerrnegativeoffset.xml/1.6/Fri Apr 3 02:48:03 2009//
+/textindexsizeerroffsetoutofbounds.xml/1.6/Fri Apr 3 02:48:04 2009//
+/textparseintolistofelements.xml/1.11/Fri Apr 3 02:48:03 2009//
+/textsplittextfour.xml/1.7/Fri Apr 3 02:48:04 2009//
+/textsplittextnomodificationallowederr.xml/1.11/Fri Apr 3 02:48:04 2009//
+/textsplittextnomodificationallowederrEE.xml/1.9/Fri Apr 3 02:48:04 2009//
+/textsplittextone.xml/1.7/Fri Apr 3 02:48:04 2009//
+/textsplittextthree.xml/1.7/Fri Apr 3 02:48:04 2009//
+/textsplittexttwo.xml/1.7/Fri Apr 3 02:48:03 2009//
+/textwithnomarkup.xml/1.8/Fri Apr 3 02:48:03 2009//
diff --git a/test/testcases/tests/level1/core/CVS/Repository b/test/testcases/tests/level1/core/CVS/Repository
new file mode 100644
index 0000000..3ef90d0
--- /dev/null
+++ b/test/testcases/tests/level1/core/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level1/core
diff --git a/test/testcases/tests/level1/core/CVS/Root b/test/testcases/tests/level1/core/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level1/core/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level1/core/CVS/Template b/test/testcases/tests/level1/core/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level1/core/CVS/Template
diff --git a/test/testcases/tests/level1/core/alltests.xml b/test/testcases/tests/level1/core/alltests.xml
new file mode 100644
index 0000000..5c57a9f
--- /dev/null
+++ b/test/testcases/tests/level1/core/alltests.xml
@@ -0,0 +1,550 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 suite SYSTEM "dom1.dtd">
+
+<suite xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="alltests">
+<metadata>
+<title>DOM Level 1 Core Test Suite</title>
+<creator>DOM Test Suite Project</creator>
+</metadata>
+<suite.member href="attrcreatedocumentfragment.xml"/>
+<suite.member href="attrcreatetextnode.xml"/>
+<suite.member href="attrcreatetextnode2.xml"/>
+<suite.member href="attrdefaultvalue.xml"/>
+<suite.member href="attreffectivevalue.xml"/>
+<suite.member href="attrentityreplacement.xml"/>
+<suite.member href="attrname.xml"/>
+<suite.member href="attrnextsiblingnull.xml"/>
+<suite.member href="attrnotspecifiedvalue.xml"/>
+<suite.member href="attrparentnodenull.xml"/>
+<suite.member href="attrprevioussiblingnull.xml"/>
+<suite.member href="attrsetvaluenomodificationallowederr.xml"/>
+<suite.member href="attrsetvaluenomodificationallowederrEE.xml"/>
+<suite.member href="attrspecifiedvalue.xml"/>
+<suite.member href="attrspecifiedvaluechanged.xml"/>
+<suite.member href="attrspecifiedvalueremove.xml"/>
+<suite.member href="cdatasectiongetdata.xml"/>
+<suite.member href="cdatasectionnormalize.xml"/>
+<suite.member href="characterdataappenddata.xml"/>
+<suite.member href="characterdataappenddatagetdata.xml"/>
+<suite.member href="characterdataappenddatanomodificationallowederr.xml"/>
+<suite.member href="characterdataappenddatanomodificationallowederrEE.xml"/>
+<suite.member href="characterdatadeletedatabegining.xml"/>
+<suite.member href="characterdatadeletedataend.xml"/>
+<suite.member href="characterdatadeletedataexceedslength.xml"/>
+<suite.member href="characterdatadeletedatagetlengthanddata.xml"/>
+<suite.member href="characterdatadeletedatamiddle.xml"/>
+<suite.member href="characterdatadeletedatanomodificationallowederr.xml"/>
+<suite.member href="characterdatadeletedatanomodificationallowederrEE.xml"/>
+<suite.member href="characterdatagetdata.xml"/>
+<suite.member href="characterdatagetlength.xml"/>
+<suite.member href="characterdataindexsizeerrdeletedatacountnegative.xml"/>
+<suite.member href="characterdataindexsizeerrdeletedataoffsetgreater.xml"/>
+<suite.member href="characterdataindexsizeerrdeletedataoffsetnegative.xml"/>
+<suite.member href="characterdataindexsizeerrinsertdataoffsetgreater.xml"/>
+<suite.member href="characterdataindexsizeerrinsertdataoffsetnegative.xml"/>
+<suite.member href="characterdataindexsizeerrreplacedatacountnegative.xml"/>
+<suite.member href="characterdataindexsizeerrreplacedataoffsetgreater.xml"/>
+<suite.member href="characterdataindexsizeerrreplacedataoffsetnegative.xml"/>
+<suite.member href="characterdataindexsizeerrsubstringcountnegative.xml"/>
+<suite.member href="characterdataindexsizeerrsubstringnegativeoffset.xml"/>
+<suite.member href="characterdataindexsizeerrsubstringoffsetgreater.xml"/>
+<suite.member href="characterdatainsertdatabeginning.xml"/>
+<suite.member href="characterdatainsertdataend.xml"/>
+<suite.member href="characterdatainsertdatamiddle.xml"/>
+<suite.member href="characterdatainsertdatanomodificationallowederr.xml"/>
+<suite.member href="characterdatainsertdatanomodificationallowederrEE.xml"/>
+<suite.member href="characterdatareplacedatabegining.xml"/>
+<suite.member href="characterdatareplacedataend.xml"/>
+<suite.member href="characterdatareplacedataexceedslengthofarg.xml"/>
+<suite.member href="characterdatareplacedataexceedslengthofdata.xml"/>
+<suite.member href="characterdatareplacedatamiddle.xml"/>
+<suite.member href="characterdatareplacedatanomodificationallowederr.xml"/>
+<suite.member href="characterdatareplacedatanomodificationallowederrEE.xml"/>
+<suite.member href="characterdatasetdatanomodificationallowederr.xml"/>
+<suite.member href="characterdatasetdatanomodificationallowederrEE.xml"/>
+<suite.member href="characterdatasetnodevalue.xml"/>
+<suite.member href="characterdatasubstringexceedsvalue.xml"/>
+<suite.member href="characterdatasubstringvalue.xml"/>
+<suite.member href="commentgetcomment.xml"/>
+<suite.member href="documentcreateattribute.xml"/>
+<suite.member href="documentcreatecdatasection.xml"/>
+<suite.member href="documentcreatecomment.xml"/>
+<suite.member href="documentcreatedocumentfragment.xml"/>
+<suite.member href="documentcreateelement.xml"/>
+<suite.member href="documentcreateelementcasesensitive.xml"/>
+<suite.member href="documentcreateelementdefaultattr.xml"/>
+<suite.member href="documentcreateentityreference.xml"/>
+<suite.member href="documentcreateentityreferenceknown.xml"/>
+<suite.member href="documentcreateprocessinginstruction.xml"/>
+<suite.member href="documentcreatetextnode.xml"/>
+<suite.member href="documentgetdoctype.xml"/>
+<suite.member href="documentgetdoctypenodtd.xml"/>
+<suite.member href="documentgetelementsbytagnamelength.xml"/>
+<suite.member href="documentgetelementsbytagnametotallength.xml"/>
+<suite.member href="documentgetelementsbytagnamevalue.xml"/>
+<suite.member href="documentgetimplementation.xml"/>
+<suite.member href="documentgetrootnode.xml"/>
+<suite.member href="documentinvalidcharacterexceptioncreateattribute.xml"/>
+<suite.member href="documentinvalidcharacterexceptioncreateelement.xml"/>
+<suite.member href="documentinvalidcharacterexceptioncreateentref.xml"/>
+<suite.member href="documentinvalidcharacterexceptioncreateentref1.xml"/>
+<suite.member href="documentinvalidcharacterexceptioncreatepi.xml"/>
+<suite.member href="documentinvalidcharacterexceptioncreatepi1.xml"/>
+<suite.member href="documenttypegetdoctype.xml"/>
+<suite.member href="documenttypegetentities.xml"/>
+<suite.member href="documenttypegetentitieslength.xml"/>
+<suite.member href="documenttypegetentitiestype.xml"/>
+<suite.member href="documenttypegetnotations.xml"/>
+<suite.member href="documenttypegetnotationstype.xml"/>
+<suite.member href="domimplementationfeaturenoversion.xml"/>
+<suite.member href="domimplementationfeaturenull.xml"/>
+<suite.member href="domimplementationfeaturexml.xml"/>
+<suite.member href="elementaddnewattribute.xml"/>
+<suite.member href="elementassociatedattribute.xml"/>
+<suite.member href="elementchangeattributevalue.xml"/>
+<suite.member href="elementcreatenewattribute.xml"/>
+<suite.member href="elementgetattributenode.xml"/>
+<suite.member href="elementgetattributenodenull.xml"/>
+<suite.member href="elementgetelementempty.xml"/>
+<suite.member href="elementgetelementsbytagname.xml"/>
+<suite.member href="elementgetelementsbytagnameaccessnodelist.xml"/>
+<suite.member href="elementgetelementsbytagnamenomatch.xml"/>
+<suite.member href="elementgetelementsbytagnamespecialvalue.xml"/>
+<suite.member href="elementgettagname.xml"/>
+<suite.member href="elementinuseattributeerr.xml"/>
+<suite.member href="elementinvalidcharacterexception.xml"/>
+<suite.member href="elementnormalize.xml"/>
+<suite.member href="elementnotfounderr.xml"/>
+<suite.member href="elementremoveattribute.xml"/>
+<suite.member href="elementremoveattributeaftercreate.xml"/>
+<suite.member href="elementremoveattributenode.xml"/>
+<suite.member href="elementremoveattributenodenomodificationallowederr.xml"/>
+<suite.member href="elementremoveattributenodenomodificationallowederrEE.xml"/>
+<suite.member href="elementremoveattributenomodificationallowederr.xml"/>
+<suite.member href="elementremoveattributenomodificationallowederrEE.xml"/>
+<suite.member href="elementremoveattributerestoredefaultvalue.xml"/>
+<suite.member href="elementreplaceattributewithself.xml"/>
+<suite.member href="elementreplaceexistingattribute.xml"/>
+<suite.member href="elementreplaceexistingattributegevalue.xml"/>
+<suite.member href="elementretrieveallattributes.xml"/>
+<suite.member href="elementretrieveattrvalue.xml"/>
+<suite.member href="elementretrievetagname.xml"/>
+<suite.member href="elementsetattributenodenomodificationallowederr.xml"/>
+<suite.member href="elementsetattributenodenomodificationallowederrEE.xml"/>
+<suite.member href="elementsetattributenodenull.xml"/>
+<suite.member href="elementsetattributenomodificationallowederr.xml"/>
+<suite.member href="elementsetattributenomodificationallowederrEE.xml"/>
+<suite.member href="elementwrongdocumenterr.xml"/>
+<suite.member href="entitygetentityname.xml"/>
+<suite.member href="entitygetpublicid.xml"/>
+<suite.member href="entitygetpublicidnull.xml"/>
+<suite.member href="namednodemapchildnoderange.xml"/>
+<suite.member href="namednodemapgetnameditem.xml"/>
+<suite.member href="namednodemapinuseattributeerr.xml"/>
+<suite.member href="namednodemapnotfounderr.xml"/>
+<suite.member href="namednodemapnumberofnodes.xml"/>
+<suite.member href="namednodemapremovenameditem.xml"/>
+<suite.member href="namednodemapremovenameditemgetvalue.xml"/>
+<suite.member href="namednodemapremovenameditemreturnnodevalue.xml"/>
+<suite.member href="namednodemapreturnattrnode.xml"/>
+<suite.member href="namednodemapreturnfirstitem.xml"/>
+<suite.member href="namednodemapreturnlastitem.xml"/>
+<suite.member href="namednodemapreturnnull.xml"/>
+<suite.member href="namednodemapsetnameditem.xml"/>
+<suite.member href="namednodemapsetnameditemreturnvalue.xml"/>
+<suite.member href="namednodemapsetnameditemthatexists.xml"/>
+<suite.member href="namednodemapsetnameditemwithnewvalue.xml"/>
+<suite.member href="namednodemapwrongdocumenterr.xml"/>
+<suite.member href="nodeappendchild.xml"/>
+<suite.member href="nodeappendchildchildexists.xml"/>
+<suite.member href="nodeappendchilddocfragment.xml"/>
+<suite.member href="nodeappendchildgetnodename.xml"/>
+<suite.member href="nodeappendchildinvalidnodetype.xml"/>
+<suite.member href="nodeappendchildnewchilddiffdocument.xml"/>
+<suite.member href="nodeappendchildnodeancestor.xml"/>
+<suite.member href="nodeappendchildnomodificationallowederr.xml"/>
+<suite.member href="nodeappendchildnomodificationallowederrEE.xml"/>
+<suite.member href="nodeattributenodeattribute.xml"/>
+<suite.member href="nodeattributenodename.xml"/>
+<suite.member href="nodeattributenodetype.xml"/>
+<suite.member href="nodeattributenodevalue.xml"/>
+<suite.member href="nodecdatasectionnodeattribute.xml"/>
+<suite.member href="nodecdatasectionnodename.xml"/>
+<suite.member href="nodecdatasectionnodetype.xml"/>
+<suite.member href="nodecdatasectionnodevalue.xml"/>
+<suite.member href="nodechildnodes.xml"/>
+<suite.member href="nodechildnodesappendchild.xml"/>
+<suite.member href="nodechildnodesempty.xml"/>
+<suite.member href="nodecloneattributescopied.xml"/>
+<suite.member href="nodeclonefalsenocopytext.xml"/>
+<suite.member href="nodeclonegetparentnull.xml"/>
+<suite.member href="nodeclonenodefalse.xml"/>
+<suite.member href="nodeclonenodetrue.xml"/>
+<suite.member href="nodeclonetruecopytext.xml"/>
+<suite.member href="nodecommentnodeattributes.xml"/>
+<suite.member href="nodecommentnodename.xml"/>
+<suite.member href="nodecommentnodetype.xml"/>
+<suite.member href="nodecommentnodevalue.xml"/>
+<suite.member href="nodedocumentfragmentnodename.xml"/>
+<suite.member href="nodedocumentfragmentnodetype.xml"/>
+<suite.member href="nodedocumentfragmentnodevalue.xml"/>
+<suite.member href="nodedocumentnodeattribute.xml"/>
+<suite.member href="nodedocumentnodename.xml"/>
+<suite.member href="nodedocumentnodetype.xml"/>
+<suite.member href="nodedocumentnodevalue.xml"/>
+<suite.member href="nodedocumenttypenodename.xml"/>
+<suite.member href="nodedocumenttypenodetype.xml"/>
+<suite.member href="nodedocumenttypenodevalue.xml"/>
+<suite.member href="nodeelementnodeattributes.xml"/>
+<suite.member href="nodeelementnodename.xml"/>
+<suite.member href="nodeelementnodetype.xml"/>
+<suite.member href="nodeelementnodevalue.xml"/>
+<suite.member href="nodeentitynodeattributes.xml"/>
+<suite.member href="nodeentitynodename.xml"/>
+<suite.member href="nodeentitynodetype.xml"/>
+<suite.member href="nodeentitynodevalue.xml"/>
+<suite.member href="nodeentitysetnodevalue.xml"/>
+<suite.member href="nodeentityreferencenodeattributes.xml"/>
+<suite.member href="nodeentityreferencenodename.xml"/>
+<suite.member href="nodeentityreferencenodetype.xml"/>
+<suite.member href="nodeentityreferencenodevalue.xml"/>
+<suite.member href="nodegetfirstchild.xml"/>
+<suite.member href="nodegetfirstchildnull.xml"/>
+<suite.member href="nodegetlastchild.xml"/>
+<suite.member href="nodegetlastchildnull.xml"/>
+<suite.member href="nodegetnextsibling.xml"/>
+<suite.member href="nodegetnextsiblingnull.xml"/>
+<suite.member href="nodegetownerdocument.xml"/>
+<suite.member href="nodegetownerdocumentnull.xml"/>
+<suite.member href="nodegetprevioussibling.xml"/>
+<suite.member href="nodegetprevioussiblingnull.xml"/>
+<suite.member href="nodehaschildnodes.xml"/>
+<suite.member href="nodehaschildnodesfalse.xml"/>
+<suite.member href="nodeinsertbefore.xml"/>
+<suite.member href="nodeinsertbeforedocfragment.xml"/>
+<suite.member href="nodeinsertbeforeinvalidnodetype.xml"/>
+<suite.member href="nodeinsertbeforenewchilddiffdocument.xml"/>
+<suite.member href="nodeinsertbeforenewchildexists.xml"/>
+<suite.member href="nodeinsertbeforenodeancestor.xml"/>
+<suite.member href="nodeinsertbeforenodename.xml"/>
+<suite.member href="nodeinsertbeforenomodificationallowederr.xml"/>
+<suite.member href="nodeinsertbeforenomodificationallowederrEE.xml"/>
+<suite.member href="nodeinsertbeforerefchildnonexistent.xml"/>
+<suite.member href="nodeinsertbeforerefchildnull.xml"/>
+<suite.member href="nodelistindexequalzero.xml"/>
+<suite.member href="nodelistindexgetlength.xml"/>
+<suite.member href="nodelistindexgetlengthofemptylist.xml"/>
+<suite.member href="nodelistindexnotzero.xml"/>
+<suite.member href="nodelistreturnfirstitem.xml"/>
+<suite.member href="nodelistreturnlastitem.xml"/>
+<suite.member href="nodelisttraverselist.xml"/>
+<suite.member href="nodenotationnodeattributes.xml"/>
+<suite.member href="nodenotationnodename.xml"/>
+<suite.member href="nodenotationnodetype.xml"/>
+<suite.member href="nodenotationnodevalue.xml"/>
+<suite.member href="nodeparentnode.xml"/>
+<suite.member href="nodeparentnodenull.xml"/>
+<suite.member href="nodeprocessinginstructionnodeattributes.xml"/>
+<suite.member href="nodeprocessinginstructionnodename.xml"/>
+<suite.member href="nodeprocessinginstructionnodetype.xml"/>
+<suite.member href="nodeprocessinginstructionnodevalue.xml"/>
+<suite.member href="nodeprocessinginstructionsetnodevalue.xml"/>
+<suite.member href="noderemovechild.xml"/>
+<suite.member href="noderemovechildgetnodename.xml"/>
+<suite.member href="noderemovechildnode.xml"/>
+<suite.member href="noderemovechildnomodificationallowederr.xml"/>
+<suite.member href="noderemovechildnomodificationallowederrEE.xml"/>
+<suite.member href="noderemovechildoldchildnonexistent.xml"/>
+<suite.member href="nodereplacechild.xml"/>
+<suite.member href="nodereplacechildinvalidnodetype.xml"/>
+<suite.member href="nodereplacechildnewchilddiffdocument.xml"/>
+<suite.member href="nodereplacechildnewchildexists.xml"/>
+<suite.member href="nodereplacechildnodeancestor.xml"/>
+<suite.member href="nodereplacechildnodename.xml"/>
+<suite.member href="nodereplacechildnomodificationallowederr.xml"/>
+<suite.member href="nodereplacechildnomodificationallowederrEE.xml"/>
+<suite.member href="nodereplacechildoldchildnonexistent.xml"/>
+<suite.member href="nodesetnodevaluenomodificationallowederr.xml"/>
+<suite.member href="nodesetnodevaluenomodificationallowederrEE.xml"/>
+<suite.member href="nodetextnodeattribute.xml"/>
+<suite.member href="nodetextnodename.xml"/>
+<suite.member href="nodetextnodetype.xml"/>
+<suite.member href="nodetextnodevalue.xml"/>
+<suite.member href="notationgetnotationname.xml"/>
+<suite.member href="notationgetpublicid.xml"/>
+<suite.member href="notationgetpublicidnull.xml"/>
+<suite.member href="notationgetsystemid.xml"/>
+<suite.member href="notationgetsystemidnull.xml"/>
+<suite.member href="processinginstructiongetdata.xml"/>
+<suite.member href="processinginstructiongettarget.xml"/>
+<suite.member href="processinginstructionsetdatanomodificationallowederr.xml"/>
+<suite.member href="processinginstructionsetdatanomodificationallowederrEE.xml"/>
+<suite.member href="textindexsizeerrnegativeoffset.xml"/>
+<suite.member href="textindexsizeerroffsetoutofbounds.xml"/>
+<suite.member href="textparseintolistofelements.xml"/>
+<suite.member href="textsplittextfour.xml"/>
+<suite.member href="textsplittextnomodificationallowederr.xml"/>
+<suite.member href="textsplittextnomodificationallowederrEE.xml"/>
+<suite.member href="textsplittextone.xml"/>
+<suite.member href="textsplittextthree.xml"/>
+<suite.member href="textsplittexttwo.xml"/>
+<suite.member href="textwithnomarkup.xml"/>
+<suite.member href="nodevalue01.xml"/>
+<suite.member href="nodevalue02.xml"/>
+<suite.member href="nodevalue03.xml"/>
+<suite.member href="nodevalue04.xml"/>
+<suite.member href="nodevalue05.xml"/>
+<suite.member href="nodevalue06.xml"/>
+<suite.member href="nodevalue07.xml"/>
+<suite.member href="nodevalue08.xml"/>
+<suite.member href="nodevalue09.xml"/>
+<!-- HTML compatible equivalents of the previous tests that
+ only used Fundamental interfaces -->
+<suite.member href="hc_attrcreatedocumentfragment.xml"/>
+<suite.member href="hc_attrcreatetextnode.xml"/>
+<suite.member href="hc_attrcreatetextnode2.xml"/>
+<suite.member href="hc_attreffectivevalue.xml"/>
+<suite.member href="hc_attrname.xml"/>
+<suite.member href="hc_attrnextsiblingnull.xml"/>
+<suite.member href="hc_attrparentnodenull.xml"/>
+<suite.member href="hc_attrprevioussiblingnull.xml"/>
+<suite.member href="hc_attrspecifiedvalue.xml"/>
+<suite.member href="hc_attrspecifiedvaluechanged.xml"/>
+<suite.member href="hc_characterdataappenddata.xml"/>
+<suite.member href="hc_characterdataappenddatagetdata.xml"/>
+<suite.member href="hc_characterdatadeletedatabegining.xml"/>
+<suite.member href="hc_characterdatadeletedataend.xml"/>
+<suite.member href="hc_characterdatadeletedataexceedslength.xml"/>
+<suite.member href="hc_characterdatadeletedatagetlengthanddata.xml"/>
+<suite.member href="hc_characterdatadeletedatamiddle.xml"/>
+<suite.member href="hc_characterdatagetdata.xml"/>
+<suite.member href="hc_characterdatagetlength.xml"/>
+<suite.member href="hc_characterdataindexsizeerrdeletedatacountnegative.xml"/>
+<suite.member href="hc_characterdataindexsizeerrdeletedataoffsetgreater.xml"/>
+<suite.member href="hc_characterdataindexsizeerrdeletedataoffsetnegative.xml"/>
+<suite.member href="hc_characterdataindexsizeerrinsertdataoffsetgreater.xml"/>
+<suite.member href="hc_characterdataindexsizeerrinsertdataoffsetnegative.xml"/>
+<suite.member href="hc_characterdataindexsizeerrreplacedatacountnegative.xml"/>
+<suite.member href="hc_characterdataindexsizeerrreplacedataoffsetgreater.xml"/>
+<suite.member href="hc_characterdataindexsizeerrreplacedataoffsetnegative.xml"/>
+<suite.member href="hc_characterdataindexsizeerrsubstringcountnegative.xml"/>
+<suite.member href="hc_characterdataindexsizeerrsubstringnegativeoffset.xml"/>
+<suite.member href="hc_characterdataindexsizeerrsubstringoffsetgreater.xml"/>
+<suite.member href="hc_characterdatainsertdatabeginning.xml"/>
+<suite.member href="hc_characterdatainsertdataend.xml"/>
+<suite.member href="hc_characterdatainsertdatamiddle.xml"/>
+<suite.member href="hc_characterdatareplacedatabegining.xml"/>
+<suite.member href="hc_characterdatareplacedataend.xml"/>
+<suite.member href="hc_characterdatareplacedataexceedslengthofarg.xml"/>
+<suite.member href="hc_characterdatareplacedataexceedslengthofdata.xml"/>
+<suite.member href="hc_characterdatareplacedatamiddle.xml"/>
+<suite.member href="hc_characterdatasetnodevalue.xml"/>
+<suite.member href="hc_characterdatasubstringexceedsvalue.xml"/>
+<suite.member href="hc_characterdatasubstringvalue.xml"/>
+<suite.member href="hc_commentgetcomment.xml"/>
+<suite.member href="hc_documentcreateattribute.xml"/>
+<suite.member href="hc_documentcreatecomment.xml"/>
+<suite.member href="hc_documentcreatedocumentfragment.xml"/>
+<suite.member href="hc_documentcreateelement.xml"/>
+<suite.member href="hc_documentcreateelementcasesensitive.xml"/>
+<suite.member href="hc_documentcreatetextnode.xml"/>
+<suite.member href="hc_documentgetdoctype.xml"/>
+<suite.member href="hc_documentgetelementsbytagnamelength.xml"/>
+<suite.member href="hc_documentgetelementsbytagnametotallength.xml"/>
+<suite.member href="hc_documentgetelementsbytagnamevalue.xml"/>
+<suite.member href="hc_documentgetimplementation.xml"/>
+<suite.member href="hc_documentgetrootnode.xml"/>
+<suite.member href="hc_documentinvalidcharacterexceptioncreateattribute.xml"/>
+<suite.member href="hc_documentinvalidcharacterexceptioncreateattribute1.xml"/>
+<suite.member href="hc_documentinvalidcharacterexceptioncreateelement.xml"/>
+<suite.member href="hc_documentinvalidcharacterexceptioncreateelement1.xml"/>
+<suite.member href="hc_domimplementationfeaturenoversion.xml"/>
+<suite.member href="hc_domimplementationfeaturenull.xml"/>
+<suite.member href="hc_domimplementationfeaturexml.xml"/>
+<suite.member href="hc_elementaddnewattribute.xml"/>
+<suite.member href="hc_elementassociatedattribute.xml"/>
+<suite.member href="hc_elementchangeattributevalue.xml"/>
+<suite.member href="hc_elementcreatenewattribute.xml"/>
+<suite.member href="hc_elementgetattributenode.xml"/>
+<suite.member href="hc_elementgetattributenodenull.xml"/>
+<suite.member href="hc_elementgetelementempty.xml"/>
+<suite.member href="hc_elementgetelementsbytagname.xml"/>
+<suite.member href="hc_elementgetelementsbytagnameaccessnodelist.xml"/>
+<suite.member href="hc_elementgetelementsbytagnamenomatch.xml"/>
+<suite.member href="hc_elementgetelementsbytagnamespecialvalue.xml"/>
+<suite.member href="hc_elementgettagname.xml"/>
+<suite.member href="hc_elementinuseattributeerr.xml"/>
+<suite.member href="hc_elementinvalidcharacterexception.xml"/>
+<suite.member href="hc_elementinvalidcharacterexception1.xml"/>
+<suite.member href="hc_elementnormalize.xml"/>
+<suite.member href="hc_elementnormalize2.xml"/>
+<suite.member href="hc_elementnotfounderr.xml"/>
+<suite.member href="hc_elementremoveattribute.xml"/>
+<suite.member href="hc_elementremoveattributeaftercreate.xml"/>
+<suite.member href="hc_elementremoveattributenode.xml"/>
+<suite.member href="hc_elementreplaceattributewithself.xml"/>
+<suite.member href="hc_elementreplaceexistingattribute.xml"/>
+<suite.member href="hc_elementreplaceexistingattributegevalue.xml"/>
+<suite.member href="hc_elementretrieveallattributes.xml"/>
+<suite.member href="hc_elementretrieveattrvalue.xml"/>
+<suite.member href="hc_elementretrievetagname.xml"/>
+<suite.member href="hc_elementsetattributenodenull.xml"/>
+<suite.member href="hc_elementwrongdocumenterr.xml"/>
+<suite.member href="hc_entitiesremovenameditem1.xml"/>
+<suite.member href="hc_entitiessetnameditem1.xml"/>
+<suite.member href="hc_namednodemapchildnoderange.xml"/>
+<suite.member href="hc_namednodemapgetnameditem.xml"/>
+<suite.member href="hc_namednodemapinuseattributeerr.xml"/>
+<suite.member href="hc_namednodemapnotfounderr.xml"/>
+<suite.member href="hc_namednodemapnumberofnodes.xml"/>
+<suite.member href="hc_namednodemapremovenameditem.xml"/>
+<suite.member href="hc_namednodemapreturnattrnode.xml"/>
+<suite.member href="hc_namednodemapreturnfirstitem.xml"/>
+<suite.member href="hc_namednodemapreturnlastitem.xml"/>
+<suite.member href="hc_namednodemapreturnnull.xml"/>
+<suite.member href="hc_namednodemapsetnameditem.xml"/>
+<suite.member href="hc_namednodemapsetnameditemreturnvalue.xml"/>
+<suite.member href="hc_namednodemapsetnameditemthatexists.xml"/>
+<suite.member href="hc_namednodemapsetnameditemwithnewvalue.xml"/>
+<suite.member href="hc_namednodemapwrongdocumenterr.xml"/>
+<suite.member href="hc_nodeappendchild.xml"/>
+<suite.member href="hc_nodeappendchildchildexists.xml"/>
+<suite.member href="hc_nodeappendchilddocfragment.xml"/>
+<suite.member href="hc_nodeappendchildgetnodename.xml"/>
+<suite.member href="hc_nodeappendchildinvalidnodetype.xml"/>
+<suite.member href="hc_nodeappendchildnewchilddiffdocument.xml"/>
+<suite.member href="hc_nodeappendchildnodeancestor.xml"/>
+<suite.member href="hc_nodeattributenodeattribute.xml"/>
+<suite.member href="hc_nodeattributenodename.xml"/>
+<suite.member href="hc_nodeattributenodetype.xml"/>
+<suite.member href="hc_nodeattributenodevalue.xml"/>
+<suite.member href="hc_nodechildnodes.xml"/>
+<suite.member href="hc_nodechildnodesappendchild.xml"/>
+<suite.member href="hc_nodechildnodesempty.xml"/>
+<suite.member href="hc_nodecloneattributescopied.xml"/>
+<suite.member href="hc_nodeclonefalsenocopytext.xml"/>
+<suite.member href="hc_nodeclonegetparentnull.xml"/>
+<suite.member href="hc_nodeclonenodefalse.xml"/>
+<suite.member href="hc_nodeclonenodetrue.xml"/>
+<suite.member href="hc_nodeclonetruecopytext.xml"/>
+<suite.member href="hc_nodecommentnodeattributes.xml"/>
+<suite.member href="hc_nodecommentnodename.xml"/>
+<suite.member href="hc_nodecommentnodetype.xml"/>
+<suite.member href="hc_nodecommentnodevalue.xml"/>
+<suite.member href="hc_nodedocumentfragmentnodename.xml"/>
+<suite.member href="hc_nodedocumentfragmentnodetype.xml"/>
+<suite.member href="hc_nodedocumentfragmentnodevalue.xml"/>
+<suite.member href="hc_nodedocumentnodeattribute.xml"/>
+<suite.member href="hc_nodedocumentnodename.xml"/>
+<suite.member href="hc_nodedocumentnodetype.xml"/>
+<suite.member href="hc_nodedocumentnodevalue.xml"/>
+<suite.member href="hc_nodeelementnodeattributes.xml"/>
+<suite.member href="hc_nodeelementnodename.xml"/>
+<suite.member href="hc_nodeelementnodetype.xml"/>
+<suite.member href="hc_nodeelementnodevalue.xml"/>
+<suite.member href="hc_nodegetfirstchild.xml"/>
+<suite.member href="hc_nodegetfirstchildnull.xml"/>
+<suite.member href="hc_nodegetlastchild.xml"/>
+<suite.member href="hc_nodegetlastchildnull.xml"/>
+<suite.member href="hc_nodegetnextsibling.xml"/>
+<suite.member href="hc_nodegetnextsiblingnull.xml"/>
+<suite.member href="hc_nodegetownerdocument.xml"/>
+<suite.member href="hc_nodegetownerdocumentnull.xml"/>
+<suite.member href="hc_nodegetprevioussibling.xml"/>
+<suite.member href="hc_nodegetprevioussiblingnull.xml"/>
+<suite.member href="hc_nodehaschildnodes.xml"/>
+<suite.member href="hc_nodehaschildnodesfalse.xml"/>
+<suite.member href="hc_nodeinsertbefore.xml"/>
+<suite.member href="hc_nodeinsertbeforedocfragment.xml"/>
+<suite.member href="hc_nodeinsertbeforeinvalidnodetype.xml"/>
+<suite.member href="hc_nodeinsertbeforenewchilddiffdocument.xml"/>
+<suite.member href="hc_nodeinsertbeforenewchildexists.xml"/>
+<suite.member href="hc_nodeinsertbeforenodeancestor.xml"/>
+<suite.member href="hc_nodeinsertbeforenodename.xml"/>
+<suite.member href="hc_nodeinsertbeforerefchildnonexistent.xml"/>
+<suite.member href="hc_nodeinsertbeforerefchildnull.xml"/>
+<suite.member href="hc_nodelistindexequalzero.xml"/>
+<suite.member href="hc_nodelistindexgetlength.xml"/>
+<suite.member href="hc_nodelistindexgetlengthofemptylist.xml"/>
+<suite.member href="hc_nodelistindexnotzero.xml"/>
+<suite.member href="hc_nodelistreturnfirstitem.xml"/>
+<suite.member href="hc_nodelistreturnlastitem.xml"/>
+<suite.member href="hc_nodelisttraverselist.xml"/>
+<suite.member href="hc_nodeparentnode.xml"/>
+<suite.member href="hc_nodeparentnodenull.xml"/>
+<suite.member href="hc_noderemovechild.xml"/>
+<suite.member href="hc_noderemovechildgetnodename.xml"/>
+<suite.member href="hc_noderemovechildnode.xml"/>
+<suite.member href="hc_noderemovechildoldchildnonexistent.xml"/>
+<suite.member href="hc_nodereplacechild.xml"/>
+<suite.member href="hc_nodereplacechildinvalidnodetype.xml"/>
+<suite.member href="hc_nodereplacechildnewchilddiffdocument.xml"/>
+<suite.member href="hc_nodereplacechildnewchildexists.xml"/>
+<suite.member href="hc_nodereplacechildnodeancestor.xml"/>
+<suite.member href="hc_nodereplacechildnodename.xml"/>
+<suite.member href="hc_nodereplacechildoldchildnonexistent.xml"/>
+<suite.member href="hc_nodetextnodeattribute.xml"/>
+<suite.member href="hc_nodetextnodename.xml"/>
+<suite.member href="hc_nodetextnodetype.xml"/>
+<suite.member href="hc_nodetextnodevalue.xml"/>
+<suite.member href="hc_nodevalue01.xml"/>
+<suite.member href="hc_nodevalue02.xml"/>
+<suite.member href="hc_nodevalue03.xml"/>
+<suite.member href="hc_nodevalue04.xml"/>
+<suite.member href="hc_nodevalue05.xml"/>
+<suite.member href="hc_nodevalue06.xml"/>
+<suite.member href="hc_nodevalue07.xml"/>
+<suite.member href="hc_nodevalue08.xml"/>
+<suite.member href="hc_notationsremovenameditem1.xml"/>
+<suite.member href="hc_notationssetnameditem1.xml"/>
+<suite.member href="hc_textindexsizeerrnegativeoffset.xml"/>
+<suite.member href="hc_textindexsizeerroffsetoutofbounds.xml"/>
+<suite.member href="hc_textparseintolistofelements.xml"/>
+<suite.member href="hc_textsplittextfour.xml"/>
+<suite.member href="hc_textsplittextone.xml"/>
+<suite.member href="hc_textsplittextthree.xml"/>
+<suite.member href="hc_textsplittexttwo.xml"/>
+<suite.member href="hc_textwithnomarkup.xml"/>
+
+<suite.member href="hc_attrappendchild1.xml"/>
+<suite.member href="hc_attrappendchild2.xml"/>
+<suite.member href="hc_attrappendchild3.xml"/>
+<suite.member href="hc_attrappendchild4.xml"/>
+<suite.member href="hc_attrappendchild5.xml"/>
+<suite.member href="hc_attrappendchild6.xml"/>
+<suite.member href="hc_attrchildnodes1.xml"/>
+<suite.member href="hc_attrchildnodes2.xml"/>
+<suite.member href="hc_attrclonenode1.xml"/>
+<suite.member href="hc_attrfirstchild.xml"/>
+<suite.member href="hc_attrgetvalue1.xml"/>
+<suite.member href="hc_attrgetvalue2.xml"/>
+<suite.member href="hc_attrhaschildnodes.xml"/>
+<suite.member href="hc_attrinsertbefore1.xml"/>
+<suite.member href="hc_attrinsertbefore2.xml"/>
+<suite.member href="hc_attrinsertbefore3.xml"/>
+<suite.member href="hc_attrinsertbefore4.xml"/>
+<suite.member href="hc_attrinsertbefore5.xml"/>
+<suite.member href="hc_attrinsertbefore6.xml"/>
+<suite.member href="hc_attrinsertbefore7.xml"/>
+<suite.member href="hc_attrlastchild.xml"/>
+<suite.member href="hc_attrnormalize.xml"/>
+<suite.member href="hc_attrremovechild1.xml"/>
+<suite.member href="hc_attrremovechild2.xml"/>
+<suite.member href="hc_attrreplacechild1.xml"/>
+<suite.member href="hc_attrreplacechild2.xml"/>
+<suite.member href="hc_attrsetvalue1.xml"/>
+<suite.member href="hc_attrsetvalue2.xml"/>
+<suite.member href="attrremovechild1.xml"/>
+<suite.member href="attrreplacechild1.xml"/>
+
+</suite>
diff --git a/test/testcases/tests/level1/core/attrcreatedocumentfragment.xml b/test/testcases/tests/level1/core/attrcreatedocumentfragment.xml
new file mode 100644
index 0000000..b07b191
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrcreatedocumentfragment.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrcreatedocumentfragment">
+<metadata>
+<title>attrCreateDocumentFragment</title>
+<creator>NIST</creator>
+<description>
+ Attr nodes may be associated with Element nodes contained within a DocumentFragment.
+ Create a new DocumentFragment and add a newly created Element node(with one attribute).
+ Once the element is added, its attribute should be available as an attribute associated
+ with an Element within a DocumentFragment.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!-- createDocumentFragment -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-35CB04B5"/>
+<!-- setAttribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+<!-- DocumentFragment -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="newOne" type="Element"/>
+<var name="domesticNode" type="Node"/>
+<var name="domesticAttr" type="NamedNodeMap"/>
+<var name="attrs" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="docFragment"/>
+<createElement obj="doc" var="newOne" tagName="&quot;newElement&quot;"/>
+<setAttribute obj="newOne" name="&quot;newdomestic&quot;" value="&quot;Yes&quot;"/>
+<appendChild var="appendedChild" obj="docFragment" newChild="newOne"/>
+<firstChild interface="Node" obj="docFragment" var="domesticNode"/>
+<attributes obj="domesticNode" var="domesticAttr"/>
+<item interface="NamedNodeMap" obj="domesticAttr" var="attrs" index="0"/>
+<name interface="Attr" obj="attrs" var="attrName"/>
+<assertEquals actual="attrName" expected="&quot;newdomestic&quot;" id="attrCreateDocumentFragmentAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrcreatetextnode.xml b/test/testcases/tests/level1/core/attrcreatetextnode.xml
new file mode 100644
index 0000000..087d5fc
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrcreatetextnode.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrcreatetextnode">
+<metadata>
+<title>attrCreateTextNode</title>
+<creator>NIST</creator>
+<description>
+ The "setValue()" method for an attribute creates a
+ Text node with the unparsed content of the string.
+ Retrieve the attribute named "street" from the last
+ child of of the fourth employee and assign the "Y&amp;ent1;"
+ string to its value attribute. This value is not yet
+ parsed and therefore should still be the same upon
+ retrieval. This test uses the "getNamedItem(name)" method
+ from the NamedNodeMap interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!-- Attr.value -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474"/>
+<!-- bug report on initial version -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Apr/0057.html"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name="&quot;street&quot;"/>
+<value interface="Attr" obj="streetAttr" value='"Y&amp;ent1;"'/>
+<value interface="Attr" obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected='"Y&amp;ent1;"' id="value" ignoreCase="false"/>
+<nodeValue obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected='"Y&amp;ent1;"' id="nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrcreatetextnode2.xml b/test/testcases/tests/level1/core/attrcreatetextnode2.xml
new file mode 100644
index 0000000..3c46a92
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrcreatetextnode2.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrcreatetextnode2">
+<metadata>
+<title>attrCreateTextNode2</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setNodeValue()" method for an attribute creates a
+ Text node with the unparsed content of the string.
+ Retrieve the attribute named "street" from the last
+ child of of the fourth employee and assign the "Y&amp;ent1;"
+ string to its value attribute. This value is not yet
+ parsed and therefore should still be the same upon
+ retrieval. This test uses the "getNamedItem(name)" method
+ from the NamedNodeMap interface.
+</description>
+<date qualifier="created">2001-10-22</date>
+<!-- Node.nodeValue -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<!-- bug report on initial version -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Apr/0057.html"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name="&quot;street&quot;"/>
+<nodeValue obj="streetAttr" value='"Y&amp;ent1;"'/>
+<value interface="Attr" obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected='"Y&amp;ent1;"' id="value" ignoreCase="false"/>
+<nodeValue obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected='"Y&amp;ent1;"' id="nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrdefaultvalue.xml b/test/testcases/tests/level1/core/attrdefaultvalue.xml
new file mode 100644
index 0000000..3b60d27
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrdefaultvalue.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrdefaultvalue">
+<metadata>
+<title>attrDefaultValue</title>
+<creator>NIST</creator>
+<description>
+ If there is not an explicit value assigned to an attribute
+ and there is a declaration for this attribute and that
+ declaration includes a default value, then that default
+ value is the attributes default value.
+ Retrieve the attribute named "street" from the last
+ child of of the first employee and examine its
+ value. That value should be the value given the
+ attribute in the DTD file. The test uses the
+ "getNamedItem(name)" method from the NamedNodeMap
+ interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!-- Element.attributes -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- NamedNodeMap.getNamedItem -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name="&quot;street&quot;"/>
+<nodeValue obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected="&quot;Yes&quot;" id="attrDefaultValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attreffectivevalue.xml b/test/testcases/tests/level1/core/attreffectivevalue.xml
new file mode 100644
index 0000000..dbda4da
--- /dev/null
+++ b/test/testcases/tests/level1/core/attreffectivevalue.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attreffectivevalue">
+<metadata>
+<title>attrEffectiveValue</title>
+<creator>NIST</creator>
+<description>
+ If an Attr is explicitly assigned any value, then that value is the attributes effective value.
+ Retrieve the attribute named "domestic" from the last child of of the first employee
+ and examine its nodeValue attribute. This test uses the "getNamedItem(name)" method
+ from the NamedNodeMap interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!-- Element.attributes -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- NamedNodeMap.getNamedItem -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name="&quot;domestic&quot;"/>
+<nodeValue obj="domesticAttr" var="value"/>
+<assertEquals actual="value" expected="&quot;Yes&quot;" id="attrEffectiveValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrentityreplacement.xml b/test/testcases/tests/level1/core/attrentityreplacement.xml
new file mode 100644
index 0000000..d8fd431
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrentityreplacement.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrentityreplacement">
+<metadata>
+<title>attrEntityReplacement</title>
+<creator>NIST</creator>
+<description>
+ The "getValue()" method will return the value of the
+ attribute as a string. The general entity references
+ are replaced with their values.
+ Retrieve the attribute named "street" from the last
+ child of of the fourth employee and examine the string
+ returned by the "getValue()" method. The value should
+ be set to "Yes" after the EntityReference is
+ replaced with its value. This test uses the
+ "getNamedItem(name)" method from the NamedNodeMap
+ interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!-- Attr.value -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name="&quot;street&quot;"/>
+<value interface="Attr" obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected='"Yes"' id="streetYes" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrname.xml b/test/testcases/tests/level1/core/attrname.xml
new file mode 100644
index 0000000..9243905
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrname.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrname">
+<metadata>
+<title>attrName</title>
+<creator>NIST</creator>
+<description>
+ The getNodeName() method of an Attribute node.
+ Retrieve the attribute named street from the last
+ child of of the second employee and examine its
+ NodeName. This test uses the getNamedItem(name) method from the NamedNodeMap
+ interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!-- Node.nodeName -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<!-- Attr.name -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1112119403"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="name" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="1"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name="&quot;street&quot;"/>
+<nodeName obj="streetAttr" var="name"/>
+<assertEquals actual="name" expected="&quot;street&quot;" id="nodeName" ignoreCase="false"/>
+<name obj="streetAttr" var="name" interface="Attr"/>
+<assertEquals actual="name" expected="&quot;street&quot;" id="name" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrnextsiblingnull.xml b/test/testcases/tests/level1/core/attrnextsiblingnull.xml
new file mode 100644
index 0000000..d425671
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrnextsiblingnull.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrnextsiblingnull">
+<metadata>
+<title>attrNextSiblingNull</title>
+<creator>NIST</creator>
+<description>
+The "getNextSibling()" method for an Attr node should return null.
+Retrieve the attribute named "domestic" from the last child of of the
+first employee and examine its NextSibling node. This test uses the
+"getNamedItem(name)" method from the NamedNodeMap interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--nextSibling attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6AC54C2F"/>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="s" type="Node"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name="&quot;domestic&quot;"/>
+<nextSibling interface="Node" obj="domesticAttr" var="s"/>
+<assertNull actual="s" id="attrNextSiblingNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrnotspecifiedvalue.xml b/test/testcases/tests/level1/core/attrnotspecifiedvalue.xml
new file mode 100644
index 0000000..3d78bd7
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrnotspecifiedvalue.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrnotspecifiedvalue">
+<metadata>
+<title>attrNotSpecifiedValue</title>
+<creator>NIST</creator>
+<description>
+ The "getSpecified()" method for an Attr node should
+ be set to false if the attribute was not explicitly given
+ a value.
+ Retrieve the attribute named "street" from the last
+ child of of the first employee and examine the value
+ returned by the "getSpecified()" method. This test uses
+ the "getNamedItem(name)" method from the NamedNodeMap
+ interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-862529273"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name='"street"'/>
+<specified obj="streetAttr" var="state"/>
+<assertFalse actual="state" id="streetNotSpecified"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrparentnodenull.xml b/test/testcases/tests/level1/core/attrparentnodenull.xml
new file mode 100644
index 0000000..dd19d20
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrparentnodenull.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrparentnodenull">
+<metadata>
+<title>attrParentNodeNull</title>
+<creator>NIST</creator>
+<description>
+The "getParentNode()" method for an Attr node should return null. Retrieve
+the attribute named "domestic" from the last child of the first employee
+and examine its parentNode attribute. This test also uses the "getNamedItem(name)"
+method from the NamedNodeMap interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--parentNode attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1060184317"/>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="s" type="Node"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name="&quot;domestic&quot;"/>
+<parentNode interface="Node" obj="domesticAttr" var="s"/>
+<assertNull actual="s" id="attrParentNodeNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrprevioussiblingnull.xml b/test/testcases/tests/level1/core/attrprevioussiblingnull.xml
new file mode 100644
index 0000000..acad1bf
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrprevioussiblingnull.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrprevioussiblingnull">
+<metadata>
+<title>attrPreviousSiblingNull</title>
+<creator>NIST</creator>
+<description>
+The "getPreviousSibling()" method for an Attr node should return null.
+Retrieve the attribute named "domestic" from the last child of of the
+first employee and examine its PreviousSibling node. This test uses the
+"getNamedItem(name)" method from the NamedNodeMap interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--previousSibling attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-640FB3C8"/>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="s" type="Node"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name="&quot;domestic&quot;"/>
+<previousSibling interface="Node" obj="domesticAttr" var="s"/>
+<assertNull actual="s" id="attrPreviousSiblingNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrremovechild1.xml b/test/testcases/tests/level1/core/attrremovechild1.xml
new file mode 100644
index 0000000..b7be293
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrremovechild1.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrremovechild1">
+<metadata>
+<title>attrremovechild1</title>
+<creator>Curt Arnold</creator>
+<description>
+Removing a child node from an attribute in an entity reference
+should result in an NO_MODIFICATION_ALLOWED_ERR DOMException.
+</description>
+<date qualifier="created">2004-01-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1734834066')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entElement" type="Element"/>
+<var name="attrNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createEntityReference obj="doc" var="entRef" name='"ent4"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<firstChild var="entElement" obj="entRef" interface="Node"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<getAttributeNode var="attrNode" obj="entElement" name='"domestic"'/>
+<firstChild var="textNode" obj="attrNode" interface="Node"/>
+<assertNotNull actual="textNode" id="attrChildNotNull"/>
+<assertDOMException id="setValue_throws_NO_MODIFICATION_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeChild obj="attrNode" oldChild="textNode" var="removedNode"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/attrreplacechild1.xml b/test/testcases/tests/level1/core/attrreplacechild1.xml
new file mode 100644
index 0000000..e6d5a20
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrreplacechild1.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrreplacechild1">
+<metadata>
+<title>attrreplacechild1</title>
+<creator>Curt Arnold</creator>
+<description>
+Replacing a child node from an attribute in an entity reference
+should result in an NO_MODIFICATION_ALLOWED_ERR DOMException.
+</description>
+<date qualifier="created">2004-01-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entElement" type="Element"/>
+<var name="attrNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="removedNode" type="Node"/>
+<var name="newChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createEntityReference obj="doc" var="entRef" name='"ent4"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<firstChild var="entElement" obj="entRef" interface="Node"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<getAttributeNode var="attrNode" obj="entElement" name='"domestic"'/>
+<firstChild var="textNode" obj="attrNode" interface="Node"/>
+<assertNotNull actual="textNode" id="attrChildNotNull"/>
+<createTextNode var="newChild" obj="doc" data='"Yesterday"'/>
+<assertDOMException id="setValue_throws_NO_MODIFICATION_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <replaceChild obj="attrNode" oldChild="textNode" var="removedNode" newChild="newChild"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/attrsetvaluenomodificationallowederr.xml b/test/testcases/tests/level1/core/attrsetvaluenomodificationallowederr.xml
new file mode 100644
index 0000000..a458405
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrsetvaluenomodificationallowederr.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrsetvaluenomodificationallowederr">
+<metadata>
+<title>attrSetValueNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "setValue()" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the "domestic" attribute
+ from the entity reference and execute the "setValue()" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-one-core#ID-221662474"/>
+<subject resource="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-one-core#xpointer(id('ID-221662474')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/DOM/updates/REC-DOM-Level-1-19981001-errata.html"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="genList" type="NodeList"/>
+<var name="gen" type="Node"/>
+<var name="gList" type="NodeList"/>
+<var name="g" type="Node"/>
+<var name="attrList" type="NamedNodeMap"/>
+<var name="attrNode" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<assertNotNull actual="gender" id="genderNotNull"/>
+<childNodes obj="gender" var="genList"/>
+<item interface="NodeList" obj="genList" var="gen" index="0"/>
+<assertNotNull actual="gen" id="genderFirstChildNotNull"/>
+<childNodes obj="gen" var="gList"/>
+<item interface="NodeList" obj="gList" var="g" index="0"/>
+<assertNotNull actual="g" id="genderFirstGrandchildNotNull"/>
+<attributes obj="g" var="attrList"/>
+<assertNotNull actual="attrList" id="attributesNotNull"/>
+<getNamedItem obj="attrList" var="attrNode" name='"domestic"'/>
+<assertNotNull actual="attrNode" id="attrNotNull"/>
+<assertDOMException id="setValue_throws_NO_MODIFICATION">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <value interface="Attr" obj="attrNode" value='"newvalue"'/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<assertDOMException id="setNodeValue_throws_NO_MODIFICATION">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <nodeValue interface="Node" obj="attrNode" value='"newvalue2"'/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/attrsetvaluenomodificationallowederrEE.xml b/test/testcases/tests/level1/core/attrsetvaluenomodificationallowederrEE.xml
new file mode 100644
index 0000000..cdc72b1
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrsetvaluenomodificationallowederrEE.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrsetvaluenomodificationallowederrEE">
+<metadata>
+<title>attrSetValueNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setValue()" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Create an entity reference using document.createEntityReference()
+ Get the "domestic" attribute from the entity
+ reference and execute the "setValue()" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-22</date>
+<subject resource="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-one-core#ID-221662474"/>
+<subject resource="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-one-core#xpointer(id('ID-221662474')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/DOM/updates/REC-DOM-Level-1-19981001-errata.html"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/attrsetvaluenomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entElement" type="Element"/>
+<var name="attrList" type="NamedNodeMap"/>
+<var name="attrNode" type="Node"/>
+<var name="gender" type="Node"/>
+<var name="genderList" type="NodeList"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<assertNotNull actual="gender" id="genderNotNull"/>
+<createEntityReference obj="doc" var="entRef" name='"ent4"'/>
+<assertNotNull actual="entRef" id="entRefNotNull"/>
+<appendChild obj="gender" newChild="entRef" var="appendedChild"/>
+<firstChild obj="entRef" var="entElement" interface="Node"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<attributes obj="entElement" var="attrList"/>
+<getNamedItem obj="attrList" var="attrNode" name="&quot;domestic&quot;"/>
+<assertDOMException id="setValue_throws_NO_MODIFICATION">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <value interface="Attr" obj="attrNode" value='"newvalue"'/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<assertDOMException id="setNodeValue_throws_NO_MODIFICATION">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <nodeValue interface="Node" obj="attrNode" value='"newvalue2"'/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/attrspecifiedvalue.xml b/test/testcases/tests/level1/core/attrspecifiedvalue.xml
new file mode 100644
index 0000000..74be629
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrspecifiedvalue.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrspecifiedvalue">
+<metadata>
+<title>attrSpecifiedValue</title>
+<creator>NIST</creator>
+<description>
+ The "getSpecified()" method for an Attr node should
+ be set to true if the attribute was explicitly given
+ a value.
+ Retrieve the attribute named "domestic" from the last
+ child of of the first employee and examine the value
+ returned by the "getSpecified()" method. This test uses
+ the "getNamedItem(name)" method from the NamedNodeMap
+ interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-862529273"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name='"domestic"'/>
+<specified obj="domesticAttr" var="state"/>
+<assertTrue actual="state" id="domesticSpecified"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrspecifiedvaluechanged.xml b/test/testcases/tests/level1/core/attrspecifiedvaluechanged.xml
new file mode 100644
index 0000000..9bd9c10
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrspecifiedvaluechanged.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrspecifiedvaluechanged">
+<metadata>
+<title>attrSpecifiedValueChanged</title>
+<creator>NIST</creator>
+<description>
+ The "getSpecified()" method for an Attr node should return true if the
+ value of the attribute is changed.
+ Retrieve the attribute named "street" from the last
+ child of of the THIRD employee and change its
+ value to "Yes"(which is the default DTD value). This
+ should cause the "getSpecified()" method to be true.
+ This test uses the "setAttribute(name,value)" method
+ from the Element interface and the "getNamedItem(name)"
+ method from the NamedNodeMap interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-862529273"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="2"/>
+<setAttribute obj="testNode" name="&quot;street&quot;" value="&quot;Yes&quot;"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name="&quot;street&quot;"/>
+<specified obj="streetAttr" var="state"/>
+<assertTrue actual="state" id="streetSpecified"/>
+</test>
diff --git a/test/testcases/tests/level1/core/attrspecifiedvalueremove.xml b/test/testcases/tests/level1/core/attrspecifiedvalueremove.xml
new file mode 100644
index 0000000..c238214
--- /dev/null
+++ b/test/testcases/tests/level1/core/attrspecifiedvalueremove.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="attrspecifiedvalueremove">
+<metadata>
+<title>attrSpecifiedValueRemove</title>
+<creator>NIST</creator>
+<description>
+To respecify the attribute to its default value from
+the DTD, the attribute must be deleted. This will then
+make a new attribute available with the "getSpecified()"
+method value set to false.
+Retrieve the attribute named "street" from the last
+child of of the THIRD employee and delete it. This
+should then create a new attribute with its default
+value and also cause the "getSpecified()" method to
+return false.
+This test uses the "removeAttribute(name)" method
+from the Element interface and the "getNamedItem(name)"
+method from the NamedNodeMap interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--removeAttribute-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D6AC0F9"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="2"/>
+<removeAttribute obj="testNode" name="&quot;street&quot;"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name="&quot;street&quot;"/>
+<assertNotNull actual="streetAttr" id="streetAttrNotNull"/>
+<specified obj="streetAttr" var="state"/>
+<assertFalse actual="state" id="attrSpecifiedValueRemoveAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/cdatasectiongetdata.xml b/test/testcases/tests/level1/core/cdatasectiongetdata.xml
new file mode 100644
index 0000000..7bb6841
--- /dev/null
+++ b/test/testcases/tests/level1/core/cdatasectiongetdata.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="cdatasectiongetdata">
+<metadata>
+<title>cdataSectionGetValue</title>
+<creator>NIST</creator>
+<description>
+Retrieve the last CDATASection node located inside the
+second child of the second employee and examine its
+content. Since the CDATASection interface inherits
+from the CharacterData interface(via the Text node),
+the "getData()" method can be used to access the
+CDATA content.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+</metadata>
+<implementationAttribute name="coalescing" value="false"/>
+<var name="doc" type="Document"/>
+<var name="nameList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="lastChild" type="Node"/>
+<var name="data" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nameList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="nameList" var="child" index="1"/>
+<lastChild interface="Node" obj="child" var="lastChild"/>
+<nodeType var="nodeType" obj="lastChild"/>
+<assertEquals actual="nodeType" expected="4" id="isCDATA" ignoreCase="false"/>
+<data interface="CharacterData" obj="lastChild" var="data"/>
+<assertEquals actual="data" expected='"This is an adjacent CDATASection with a reference to a tab &amp;tab;"' id="data" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/cdatasectionnormalize.xml b/test/testcases/tests/level1/core/cdatasectionnormalize.xml
new file mode 100644
index 0000000..ce654f6
--- /dev/null
+++ b/test/testcases/tests/level1/core/cdatasectionnormalize.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="cdatasectionnormalize">
+<metadata>
+<title>cdataSectionNormalize</title>
+<creator>NIST</creator>
+<description>
+Adjacent CDATASection nodes cannot be merged together by
+use of the "normalize()" method from the Element interface.
+Retrieve second child of the second employee and invoke
+the "normalize()" method. The Element under contains
+two CDATASection nodes that should not be merged together
+by the "normalize()" method.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-162CF083"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nameList" type="NodeList"/>
+<var name="lChild" type="Element"/>
+<var name="childNodes" type="NodeList"/>
+<var name="cdataN" type="CDATASection"/>
+<var name="data" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nameList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="nameList" var="lChild" index="1"/>
+<normalize obj="lChild"/>
+<childNodes obj="lChild" var="childNodes"/>
+<item interface="NodeList" obj="childNodes" var="cdataN" index="1"/>
+<assertNotNull actual="cdataN" id="firstCDATASection"/>
+<data interface="CharacterData" obj="cdataN" var="data"/>
+<assertEquals actual="data" expected='"This is a CDATASection with EntityReference number 2 &amp;ent2;"' ignoreCase="false" id="data1"/>
+<item interface="NodeList" obj="childNodes" var="cdataN" index="3"/>
+<assertNotNull actual="cdataN" id="secondCDATASection"/>
+<data interface="CharacterData" obj="cdataN" var="data"/>
+<assertEquals actual="data" expected='"This is an adjacent CDATASection with a reference to a tab &amp;tab;"' ignoreCase="false" id="data3"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataappenddata.xml b/test/testcases/tests/level1/core/characterdataappenddata.xml
new file mode 100644
index 0000000..057efb6
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataappenddata.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataappenddata">
+<metadata>
+<title>characterdataAppendData</title>
+<creator>NIST</creator>
+<description>
+ The "appendData(arg)" method appends a string to the end
+ of the character data of the node.
+
+ Retrieve the character data from the second child
+ of the first employee. The appendData(arg) method is
+ called with arg=", Esquire". The method should append
+ the specified data to the already existing character
+ data. The new value return by the "getLength()" method
+ should be 24.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-32791A2F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childValue" type="DOMString"/>
+<var name="childLength" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<appendData obj="child" arg="&quot;, Esquire&quot;"/>
+<data obj="child" var="childValue" interface="CharacterData"/>
+<length obj="childValue" var="childLength" interface="DOMString"/>
+<assertEquals actual="childLength" expected="24" ignoreCase="false" id="characterdataAppendDataAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataappenddatagetdata.xml b/test/testcases/tests/level1/core/characterdataappenddatagetdata.xml
new file mode 100644
index 0000000..3d49021
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataappenddatagetdata.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataappenddatagetdata">
+<metadata>
+<title>characterdataAppendDataGetData</title>
+<creator>NIST</creator>
+<description>
+ On successful invocation of the "appendData(arg)"
+ method the "getData()" method provides access to the
+ concatentation of data and the specified string.
+
+ Retrieve the character data from the second child
+ of the first employee. The appendData(arg) method is
+ called with arg=", Esquire". The method should append
+ the specified data to the already existing character
+ data. The new value return by the "getData()" method
+ should be "Margaret Martin, Esquire".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-32791A2F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<appendData obj="child" arg="&quot;, Esquire&quot;"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;Margaret Martin, Esquire&quot;" id="characterdataAppendDataGetDataAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataappenddatanomodificationallowederr.xml b/test/testcases/tests/level1/core/characterdataappenddatanomodificationallowederr.xml
new file mode 100644
index 0000000..3e556d9
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataappenddatanomodificationallowederr.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataappenddatanomodificationallowederr">
+<metadata>
+<title>characterdataAppendDataNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "appendData(arg)" method raises a NO_MODIFICATION_ALLOWED_ERR
+ DOMException if the node is readonly.
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the FIRST item
+ from the entity reference and execute the "appendData(arg)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-32791A2F"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-32791A2F')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-32791A2F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entElement" type="Node"/>
+<var name="entElementContent" type="Node"/>
+<var name="entReference" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item interface="NodeList" obj="genderList" index="2" var="genderNode"/>
+<firstChild var="entReference" obj="genderNode" interface="Node"/>
+<assertNotNull actual="entReference" id="entReferenceNotNull"/>
+<nodeType var="nodeType" obj="entReference"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entReference" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entReference" id="createdEntRefNotNull"/>
+</if>
+<firstChild var="entElement" obj="entReference" interface="Node"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<firstChild var="entElementContent" obj="entElement" interface="Node"/>
+<assertNotNull actual="entElementContent" id="entElementContentNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<appendData obj="entElementContent" arg="&quot;newString&quot;"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataappenddatanomodificationallowederrEE.xml b/test/testcases/tests/level1/core/characterdataappenddatanomodificationallowederrEE.xml
new file mode 100644
index 0000000..ba69184
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataappenddatanomodificationallowederrEE.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataappenddatanomodificationallowederrEE">
+<metadata>
+<title>characterdataAppendDataNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+Create an ent3 entity reference and call appendData on a text child, should thrown a NO_MODIFICATION_ALLOWED_ERR.
+</description>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-32791A2F"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-32791A2F')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-32791A2F"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/characterdataappenddatanomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entText" type="Node"/>
+<var name="entReference" type="EntityReference"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item interface="NodeList" obj="genderList" index="2" var="genderNode"/>
+<createEntityReference var="entReference" obj="doc" name='"ent3"'/>
+<assertNotNull actual="entReference" id="createdEntRefNotNull"/>
+<appendChild obj="genderNode" newChild="entReference" var="appendedChild"/>
+<firstChild var="entText" obj="entReference" interface="Node"/>
+<assertNotNull actual="entText" id="entTextNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<appendData obj="entText" arg='"newString"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatadeletedatabegining.xml b/test/testcases/tests/level1/core/characterdatadeletedatabegining.xml
new file mode 100644
index 0000000..d1cf6a3
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatadeletedatabegining.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatadeletedatabegining">
+<metadata>
+<title>characterdataDeleteDataBeginning</title>
+<creator>NIST</creator>
+<description>
+The "deleteData(offset,count)" method removes a range of
+characters from the node. Delete data at the beginning
+of the character data.
+
+Retrieve the character data from the last child of the
+first employee. The "deleteData(offset,count)"
+method is then called with offset=0 and count=16.
+The method should delete the characters from position
+0 thru position 16. The new value of the character data
+should be "Dallas, Texas 98551".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<deleteData obj="child" offset="0" count="16"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;Dallas, Texas 98551&quot;" id="characterdataDeleteDataBeginingAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatadeletedataend.xml b/test/testcases/tests/level1/core/characterdatadeletedataend.xml
new file mode 100644
index 0000000..052ae11
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatadeletedataend.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatadeletedataend">
+<metadata>
+<title>characterdataDeleteDataEnd</title>
+<creator>NIST</creator>
+<description>
+ The "deleteData(offset,count)" method removes a range of
+ characters from the node. Delete data at the end
+ of the character data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=30 and count=5.
+ The method should delete the characters from position
+ 30 thru position 35. The new value of the character data
+ should be "1230 North Ave. Dallas, Texas".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<deleteData obj="child" offset="30" count="5"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;1230 North Ave. Dallas, Texas &quot;" id="characterdataDeleteDataEndAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatadeletedataexceedslength.xml b/test/testcases/tests/level1/core/characterdatadeletedataexceedslength.xml
new file mode 100644
index 0000000..fe80a3b
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatadeletedataexceedslength.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatadeletedataexceedslength">
+<metadata>
+<title>characterdataDeleteDataExceedsLength</title>
+<creator>NIST</creator>
+<description>
+ If the sum of the offset and count used in the
+ "deleteData(offset,count) method is greater than the
+ length of the character data then all the characters
+ from the offset to the end of the data are deleted.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=4 and count=50.
+ The method should delete the characters from position 4
+ to the end of the data since the offset+count(50+4)
+ is greater than the length of the character data(35).
+ The new value of the character data should be "1230".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<deleteData obj="child" offset="4" count="50"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;1230&quot;" id="characterdataDeleteDataExceedsLengthAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatadeletedatagetlengthanddata.xml b/test/testcases/tests/level1/core/characterdatadeletedatagetlengthanddata.xml
new file mode 100644
index 0000000..533a19e
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatadeletedatagetlengthanddata.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatadeletedatagetlengthanddata">
+<metadata>
+<title>characterdataDeleteDataGetLengthAndData</title>
+<creator>NIST</creator>
+<description>
+ On successful invocation of the "deleteData(offset,count)"
+ method, the "getData()" and "getLength()" methods reflect
+ the changes.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=30 and count=5.
+ The method should delete the characters from position
+ 30 thru position 35. The new value of the character data
+ should be "1230 North Ave. Dallas, Texas" which is
+ returned by the "getData()" method and "getLength()"
+ method should return 30".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7D61178C"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<var name="childLength" type="int"/>
+<var name="result" type="List"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<deleteData obj="child" offset="30" count="5"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;1230 North Ave. Dallas, Texas &quot;" ignoreCase="false" id="data"/>
+<length interface="CharacterData" obj="child" var="childLength"/>
+<assertEquals actual="childLength" expected="30" ignoreCase="false" id="length"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatadeletedatamiddle.xml b/test/testcases/tests/level1/core/characterdatadeletedatamiddle.xml
new file mode 100644
index 0000000..8488008
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatadeletedatamiddle.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatadeletedatamiddle">
+<metadata>
+<title>characterdataDeleteDataMiddle</title>
+<creator>NIST</creator>
+<description>
+ The "deleteData(offset,count)" method removes a range of
+ characters from the node. Delete data in the middle
+ of the character data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=16 and count=8.
+ The method should delete the characters from position
+ 16 thru position 24. The new value of the character data
+ should be "1230 North Ave. Texas 98551".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<deleteData obj="child" offset="16" count="8"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;1230 North Ave. Texas 98551&quot;" id="characterdataDeleteDataMiddleAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatadeletedatanomodificationallowederr.xml b/test/testcases/tests/level1/core/characterdatadeletedatanomodificationallowederr.xml
new file mode 100644
index 0000000..d11c731
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatadeletedatanomodificationallowederr.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatadeletedatanomodificationallowederr">
+<metadata>
+<title>characterdataDeleteDataNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "deleteData(offset,count)" method raises a NO_MODIFICATION_ALLOWED_ERR
+ DOMException if the node is readonly.
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the FIRST item
+ from the entity reference and execute the "deleteData(offset,count)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entElement" type="Node"/>
+<var name="entElementContent" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="entReference" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item interface="NodeList" obj="genderList" index="2" var="genderNode"/>
+<firstChild var="entReference" obj="genderNode" interface="Node"/>
+<assertNotNull actual="entReference" id="entReferenceNotNull"/>
+<nodeType var="nodeType" obj="entReference"/>
+<if><equals actual="nodeType" expected="3"/>
+ <createEntityReference var="entReference" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entReference" id="createdEntRefNotNull"/>
+</if>
+<firstChild var="entElement" obj="entReference" interface="Node"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<firstChild var="entElementContent" obj="entElement" interface="Node"/>
+<assertNotNull actual="entElementContent" id="entElementContentNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<deleteData obj="entElementContent" offset="1" count="3"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatadeletedatanomodificationallowederrEE.xml b/test/testcases/tests/level1/core/characterdatadeletedatanomodificationallowederrEE.xml
new file mode 100644
index 0000000..566e16f
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatadeletedatanomodificationallowederrEE.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatadeletedatanomodificationallowederrEE">
+<metadata>
+<title>characterdataDeleteDataNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+Create an ent3 entity reference and call deleteData on a text child, should thrown a NO_MODIFICATION_ALLOWED_ERR.
+</description>
+<date qualifier="created">2001-08-20</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/characterdatadeletedatanomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entText" type="Node"/>
+<var name="entReference" type="EntityReference"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item interface="NodeList" obj="genderList" index="2" var="genderNode"/>
+<createEntityReference obj="doc" var="entReference" name='"ent3"'/>
+<assertNotNull actual="entReference" id="createdEntRefNotNull"/>
+<appendChild obj="genderNode" newChild="entReference" var="appendedChild"/>
+<firstChild var="entText" obj="entReference" interface="Node"/>
+<assertNotNull actual="entText" id="entTextNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<deleteData obj="entText" offset="1" count="3"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatagetdata.xml b/test/testcases/tests/level1/core/characterdatagetdata.xml
new file mode 100644
index 0000000..e253b45
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatagetdata.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatagetdata">
+<metadata>
+<title>characterdataGetData</title>
+<creator>NIST</creator>
+<description>
+
+ The "getData()" method retrieves the character data
+
+ currently stored in the node.
+
+ Retrieve the character data from the second child
+
+ of the first employee and invoke the "getData()"
+
+ method. The method returns the character data
+
+ string.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;Margaret Martin&quot;" id="characterdataGetDataAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatagetlength.xml b/test/testcases/tests/level1/core/characterdatagetlength.xml
new file mode 100644
index 0000000..6b87ff6
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatagetlength.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatagetlength">
+<metadata>
+<title>characterdataGetLength</title>
+<creator>NIST</creator>
+<description>
+ The "getLength()" method returns the number of characters
+ stored in this nodes data.
+ Retrieve the character data from the second
+ child of the first employee and examine the
+ value returned by the getLength() method.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7D61178C"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childValue" type="DOMString"/>
+<var name="childLength" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<data var="childValue" obj="child" interface="CharacterData"/>
+<length var="childLength" obj="childValue" interface="DOMString"/>
+<assertEquals actual="childLength" expected="15" ignoreCase="false" id="characterdataGetLengthAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataindexsizeerrdeletedatacountnegative.xml b/test/testcases/tests/level1/core/characterdataindexsizeerrdeletedatacountnegative.xml
new file mode 100644
index 0000000..c745fa2
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataindexsizeerrdeletedatacountnegative.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataindexsizeerrdeletedatacountnegative">
+<metadata>
+<title>characterdataIndexSizeErrDeleteDataCountNegative</title>
+<creator>NIST</creator>
+<description>
+ The "deleteData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified count
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "deleteData(offset,count)"
+ method with offset=10 and count=-3. It should raise the
+ desired exception since the count is negative.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<deleteData obj="child" offset="10" count="-3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataindexsizeerrdeletedataoffsetgreater.xml b/test/testcases/tests/level1/core/characterdataindexsizeerrdeletedataoffsetgreater.xml
new file mode 100644
index 0000000..807ae51
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataindexsizeerrdeletedataoffsetgreater.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataindexsizeerrdeletedataoffsetgreater">
+<metadata>
+<title>characterdataIndexSizeErrDeleteDataOffsetGreater</title>
+<creator>NIST</creator>
+<description>
+ The "deleteData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater that the number of characters in the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "deleteData(offset,count)"
+ method with offset=40 and count=3. It should raise the
+ desired exception since the offset is greater than the
+ number of characters in the string.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throw_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<deleteData obj="child" offset="40" count="3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataindexsizeerrdeletedataoffsetnegative.xml b/test/testcases/tests/level1/core/characterdataindexsizeerrdeletedataoffsetnegative.xml
new file mode 100644
index 0000000..cffc8a1
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataindexsizeerrdeletedataoffsetnegative.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataindexsizeerrdeletedataoffsetnegative">
+<metadata>
+<title>characterdataIndexSizeErrDeleteDataOffsetNegative</title>
+<creator>NIST</creator>
+<description>
+ The "deleteData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "deleteData(offset,count)"
+ method with offset=-5 and count=3. It should raise the
+ desired exception since the offset is negative.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<deleteData obj="child" offset="-5" count="3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataindexsizeerrinsertdataoffsetgreater.xml b/test/testcases/tests/level1/core/characterdataindexsizeerrinsertdataoffsetgreater.xml
new file mode 100644
index 0000000..54cb2ff
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataindexsizeerrinsertdataoffsetgreater.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataindexsizeerrinsertdataoffsetgreater">
+<metadata>
+<title>characterdataIndexSizeErrInsertDataOffsetGreater</title>
+<creator>NIST</creator>
+<description>
+ The "insertData(offset,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater than the number of characters in the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its insertData"(offset,arg)"
+ method with offset=40 and arg="ABC". It should raise
+ the desired exception since the offset is greater than
+ the number of characters in the string.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throw_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<insertData obj="child" offset="40" arg="&quot;ABC&quot;"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataindexsizeerrinsertdataoffsetnegative.xml b/test/testcases/tests/level1/core/characterdataindexsizeerrinsertdataoffsetnegative.xml
new file mode 100644
index 0000000..9239e1a
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataindexsizeerrinsertdataoffsetnegative.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataindexsizeerrinsertdataoffsetnegative">
+<metadata>
+<title>characterdataIndexSizeErrInsertDataOffsetNegative</title>
+<creator>NIST</creator>
+<description>
+ The "insertData(offset,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its insertData"(offset,arg)"
+ method with offset=-5 and arg="ABC". It should raise
+ the desired exception since the offset is negative.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-E5CBA7FB')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<insertData obj="child" offset="-5" arg="&quot;ABC&quot;"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataindexsizeerrreplacedatacountnegative.xml b/test/testcases/tests/level1/core/characterdataindexsizeerrreplacedatacountnegative.xml
new file mode 100644
index 0000000..7e731be
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataindexsizeerrreplacedatacountnegative.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataindexsizeerrreplacedatacountnegative">
+<metadata>
+<title>characterdataIndexSizeErrReplaceDataCountNegative</title>
+<creator>NIST</creator>
+<description>
+ The "replaceData(offset,count,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified count
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its
+ "replaceData(offset,count,arg) method with offset=10
+ and count=-3 and arg="ABC". It should raise the
+ desired exception since the count is negative.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<replaceData obj="child" offset="10" count="-3" arg="&quot;ABC&quot;"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataindexsizeerrreplacedataoffsetgreater.xml b/test/testcases/tests/level1/core/characterdataindexsizeerrreplacedataoffsetgreater.xml
new file mode 100644
index 0000000..40973c7
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataindexsizeerrreplacedataoffsetgreater.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataindexsizeerrreplacedataoffsetgreater">
+<metadata>
+<title>characterdataIndexSizeErrReplaceDataOffsetGreater</title>
+<creator>NIST</creator>
+<description>
+ The "replaceData(offset,count,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater than the length of the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its
+ "replaceData(offset,count,arg) method with offset=40
+ and count=3 and arg="ABC". It should raise the
+ desired exception since the offset is greater than the
+ length of the string.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throw_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<replaceData obj="child" offset="40" count="3" arg="&quot;ABC&quot;"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataindexsizeerrreplacedataoffsetnegative.xml b/test/testcases/tests/level1/core/characterdataindexsizeerrreplacedataoffsetnegative.xml
new file mode 100644
index 0000000..968087a
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataindexsizeerrreplacedataoffsetnegative.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataindexsizeerrreplacedataoffsetnegative">
+<metadata>
+<title>characterdataIndexSizeErrReplaceDataOffsetNegative</title>
+<creator>NIST</creator>
+<description>
+ The "replaceData(offset,count,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its
+ "replaceData(offset,count,arg) method with offset=-5
+ and count=3 and arg="ABC". It should raise the
+ desired exception since the offset is negative.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-E5CBA7FB')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<replaceData obj="child" offset="-5" count="3" arg="&quot;ABC&quot;"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataindexsizeerrsubstringcountnegative.xml b/test/testcases/tests/level1/core/characterdataindexsizeerrsubstringcountnegative.xml
new file mode 100644
index 0000000..d178d8d
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataindexsizeerrsubstringcountnegative.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataindexsizeerrsubstringcountnegative">
+<metadata>
+<title>characterdataIndexSizeErrSubstringCountNegative</title>
+<creator>NIST</creator>
+<description>
+ The "substringData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified count
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "substringData(offset,count)
+ method with offset=10 and count=-3. It should raise the
+ desired exception since the count is negative.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="badSubstring" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<substringData var="badSubstring" obj="child" offset="10" count="-3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataindexsizeerrsubstringnegativeoffset.xml b/test/testcases/tests/level1/core/characterdataindexsizeerrsubstringnegativeoffset.xml
new file mode 100644
index 0000000..55e56d0
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataindexsizeerrsubstringnegativeoffset.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataindexsizeerrsubstringnegativeoffset">
+<metadata>
+<title>characterdataIndexSizeErrSubstringNegativeOffset</title>
+<creator>NIST</creator>
+<description>
+ The "substringData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "substringData(offset,count)
+ method with offset=-5 and count=3. It should raise the
+ desired exception since the offset is negative.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="badString" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<substringData var="badString" obj="child" offset="-5" count="3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdataindexsizeerrsubstringoffsetgreater.xml b/test/testcases/tests/level1/core/characterdataindexsizeerrsubstringoffsetgreater.xml
new file mode 100644
index 0000000..d33211d
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdataindexsizeerrsubstringoffsetgreater.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdataindexsizeerrsubstringoffsetgreater">
+<metadata>
+<title>characterdataIndexSizeErrSubstringOffsetGreater</title>
+<creator>NIST</creator>
+<description>
+ The "substringData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater than the number of characters in the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "substringData(offset,count)
+ method with offset=40 and count=3. It should raise the
+ desired exception since the offsets value is greater
+ than the length.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="badString" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throw_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<substringData var="badString" obj="child" offset="40" count="3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatainsertdatabeginning.xml b/test/testcases/tests/level1/core/characterdatainsertdatabeginning.xml
new file mode 100644
index 0000000..0e0c7d9
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatainsertdatabeginning.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatainsertdatabeginning">
+<metadata>
+<title>characterdataInsertDataBeginning</title>
+<creator>NIST</creator>
+<description>
+The "insertData(offset,arg)" method will insert a string
+at the specified character offset. Insert the data at
+the beginning of the character data.
+
+Retrieve the character data from the second child of
+the first employee. The "insertData(offset,arg)"
+method is then called with offset=0 and arg="Mss.".
+The method should insert the string "Mss." at position 0.
+The new value of the character data should be
+"Mss. Margaret Martin".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--insertData-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<insertData obj="child" offset="0" arg="&quot;Mss. &quot;"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;Mss. Margaret Martin&quot;" id="characterdataInsertDataBeginningAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatainsertdataend.xml b/test/testcases/tests/level1/core/characterdatainsertdataend.xml
new file mode 100644
index 0000000..79cbd71
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatainsertdataend.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatainsertdataend">
+<metadata>
+<title>characterdataInsertDataEnd</title>
+<creator>NIST</creator>
+<description>
+ The "insertData(offset,arg)" method will insert a string
+ at the specified character offset. Insert the data at
+ the end of the character data.
+
+ Retrieve the character data from the second child of
+ the first employee. The "insertData(offset,arg)"
+ method is then called with offset=15 and arg=", Esquire".
+ The method should insert the string ", Esquire" at
+ position 15. The new value of the character data should
+ be "Margaret Martin, Esquire".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<insertData obj="child" offset="15" arg="&quot;, Esquire&quot;"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;Margaret Martin, Esquire&quot;" id="characterdataInsertDataEndAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatainsertdatamiddle.xml b/test/testcases/tests/level1/core/characterdatainsertdatamiddle.xml
new file mode 100644
index 0000000..72b51f8
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatainsertdatamiddle.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatainsertdatamiddle">
+<metadata>
+<title>characterdataInsertDataMiddle</title>
+<creator>NIST</creator>
+<description>
+ The "insertData(offset,arg)" method will insert a string
+ at the specified character offset. Insert the data in
+ the middle of the character data.
+
+ Retrieve the character data from the second child of
+ the first employee. The "insertData(offset,arg)"
+ method is then called with offset=9 and arg="Ann".
+ The method should insert the string "Ann" at position 9.
+ The new value of the character data should be
+ "Margaret Ann Martin".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<insertData obj="child" offset="9" arg="&quot;Ann &quot;"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;Margaret Ann Martin&quot;" id="characterdataInsertDataMiddleAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatainsertdatanomodificationallowederr.xml b/test/testcases/tests/level1/core/characterdatainsertdatanomodificationallowederr.xml
new file mode 100644
index 0000000..e60956f
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatainsertdatanomodificationallowederr.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatainsertdatanomodificationallowederr">
+<metadata>
+<title>characterdataInsertDataNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "insertData(offset,arg)" method raises a NO_MODIFICATION_ALLOWED_ERR
+ DOMException if the node is readonly.
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the FIRST item
+ from the entity reference and execute the "insertData(offset,arg)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-3EDB695F')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entElement" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="entElementContent" type="Node"/>
+<var name="entReference" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"gender"' var="genderList"/>
+<item interface="NodeList" obj="genderList" index="2" var="genderNode"/>
+<firstChild var="entReference" obj="genderNode" interface="Node"/>
+<assertNotNull actual="entReference" id="entReferenceNotNull"/>
+<nodeType var="nodeType" obj="entReference"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entReference" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entReference" id="createdEntRefNotNull"/>
+</if>
+<firstChild var="entElement" obj="entReference" interface="Node"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<firstChild var="entElementContent" obj="entElement" interface="Node"/>
+<assertNotNull actual="entElementContent" id="entElementContentNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<insertData obj="entElementContent" offset="1" arg='"newArg"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatainsertdatanomodificationallowederrEE.xml b/test/testcases/tests/level1/core/characterdatainsertdatanomodificationallowederrEE.xml
new file mode 100644
index 0000000..42bd1bd
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatainsertdatanomodificationallowederrEE.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatainsertdatanomodificationallowederrEE">
+<metadata>
+<title>characterdataInsertDataNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+Create an ent3 entity reference and call insertData on a text child, should thrown a NO_MODIFICATION_ALLOWED_ERR.
+</description>
+<date qualifier="created">2001-08-20</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-3EDB695F')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/characterdatainsertdatanomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entText" type="CharacterData"/>
+<var name="entReference" type="EntityReference"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item interface="NodeList" obj="genderList" index="2" var="genderNode"/>
+<createEntityReference var="entReference" obj="doc" name='"ent3"'/>
+<assertNotNull actual="entReference" id="createdEntRefNotNull"/>
+<firstChild var="entText" obj="entReference" interface="Node"/>
+<assertNotNull actual="entText" id="entTextNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<insertData obj="entText" offset="1" arg="&quot;newArg&quot;"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatareplacedatabegining.xml b/test/testcases/tests/level1/core/characterdatareplacedatabegining.xml
new file mode 100644
index 0000000..3103156
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatareplacedatabegining.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatareplacedatabegining">
+<metadata>
+<title>characterdataReplaceDataBeginning</title>
+<creator>NIST</creator>
+<description>
+The "replaceData(offset,count,arg)" method replaces the
+characters starting at the specified offset with the
+specified string. Test for replacement in the
+middle of the data.
+
+Retrieve the character data from the last child of the
+first employee. The "replaceData(offset,count,arg)"
+method is then called with offset=5 and count=5 and
+arg="South". The method should replace characters five
+thru 9 of the character data with "South".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--replaceData-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<replaceData obj="child" offset="0" count="4" arg="&quot;2500&quot;"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;2500 North Ave. Dallas, Texas 98551&quot;" id="characterdataReplaceDataBeginingAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatareplacedataend.xml b/test/testcases/tests/level1/core/characterdatareplacedataend.xml
new file mode 100644
index 0000000..44ebfdf
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatareplacedataend.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatareplacedataend">
+<metadata>
+<title>characterdataReplaceDataEnd</title>
+<creator>NIST</creator>
+<description>
+ The "replaceData(offset,count,arg)" method replaces the
+ characters starting at the specified offset with the
+ specified string. Test for replacement at the
+ end of the data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=30 and count=5 and
+ arg="98665". The method should replace characters 30
+ thru 34 of the character data with "98665".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<replaceData obj="child" offset="30" count="5" arg="&quot;98665&quot;"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;1230 North Ave. Dallas, Texas 98665&quot;" id="characterdataReplaceDataEndAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatareplacedataexceedslengthofarg.xml b/test/testcases/tests/level1/core/characterdatareplacedataexceedslengthofarg.xml
new file mode 100644
index 0000000..6cefbfa
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatareplacedataexceedslengthofarg.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatareplacedataexceedslengthofarg">
+<metadata>
+<title>characterdataReplaceDataExceedsLengthOfArg</title>
+<creator>NIST</creator>
+<description>
+ The "replaceData(offset,count,arg)" method replaces the
+ characters starting at the specified offset with the
+ specified string. Test the situation where the length
+ of the arg string is greater than the specified offset.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=0 and count=4 and
+ arg="260030". The method should replace characters one
+ thru four with "260030". Note that the length of the
+ specified string is greater that the specified offset.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<replaceData obj="child" offset="0" count="4" arg="&quot;260030&quot;"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;260030 North Ave. Dallas, Texas 98551&quot;" id="characterdataReplaceDataExceedsLengthOfArgAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatareplacedataexceedslengthofdata.xml b/test/testcases/tests/level1/core/characterdatareplacedataexceedslengthofdata.xml
new file mode 100644
index 0000000..1f99d88
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatareplacedataexceedslengthofdata.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatareplacedataexceedslengthofdata">
+<metadata>
+<title>characterdataReplaceDataExceedsLengthOfData</title>
+<creator>NIST</creator>
+<description>
+ If the sum of the offset and count exceeds the length then
+ all the characters to the end of the data are replaced.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=0 and count=50 and
+ arg="2600". The method should replace all the characters
+ with "2600". This is because the sum of the offset and
+ count exceeds the length of the character data.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<replaceData obj="child" offset="0" count="50" arg="&quot;2600&quot;"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;2600&quot;" id="characterdataReplaceDataExceedsLengthOfDataAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatareplacedatamiddle.xml b/test/testcases/tests/level1/core/characterdatareplacedatamiddle.xml
new file mode 100644
index 0000000..c595b35
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatareplacedatamiddle.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatareplacedatamiddle">
+<metadata>
+<title>characterdataReplaceDataMiddle</title>
+<creator>NIST</creator>
+<description>
+ The "replaceData(offset,count,arg)" method replaces the
+ characters starting at the specified offset with the
+ specified string. Test for replacement in the
+ middle of the data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=5 and count=5 and
+ arg="South". The method should replace characters five
+ thru 9 of the character data with "South".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<replaceData obj="child" offset="5" count="5" arg="&quot;South&quot;"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;1230 South Ave. Dallas, Texas 98551&quot;" id="characterdataReplaceDataMiddleAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatareplacedatanomodificationallowederr.xml b/test/testcases/tests/level1/core/characterdatareplacedatanomodificationallowederr.xml
new file mode 100644
index 0000000..372a06a
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatareplacedatanomodificationallowederr.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatareplacedatanomodificationallowederr">
+<metadata>
+<title>characterdataReplaceDataNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "replaceData(offset,count,arg)" method raises a NO_MODIFICATION_ALLOWED_ERR
+ DOMException if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the FIRST item
+ from the entity reference and execute the "replaceData(offset,count,arg)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-E5CBA7FB')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entElement" type="Node"/>
+<var name="entElementContent" type="Node"/>
+<var name="entReference" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"gender"' var="genderList"/>
+<item interface="NodeList" obj="genderList" index="2" var="genderNode"/>
+<firstChild interface="Node" var="entReference" obj="genderNode"/>
+<assertNotNull actual="entReference" id="entReferenceNotNull"/>
+<nodeType var="nodeType" obj="entReference"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entReference" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entReference" id="createdEntRefNotNull"/>
+</if>
+<firstChild var="entElement" obj="entReference" interface="Node"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<firstChild var="entElementContent" obj="entElement" interface="Node"/>
+<assertNotNull actual="entElementContent" id="entElementContentNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceData obj="entElementContent" offset="1" count="3" arg="&quot;newArg&quot;"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatareplacedatanomodificationallowederrEE.xml b/test/testcases/tests/level1/core/characterdatareplacedatanomodificationallowederrEE.xml
new file mode 100644
index 0000000..0a019b7
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatareplacedatanomodificationallowederrEE.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatareplacedatanomodificationallowederrEE">
+<metadata>
+<title>characterdataReplaceDataNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+Create an ent3 entity reference and call replaceData on a text child, should thrown a NO_MODIFICATION_ALLOWED_ERR.
+</description>
+<date qualifier="created">2001-08-21</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-E5CBA7FB')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/characterdatareplacedatanomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entText" type="CharacterData"/>
+<var name="entReference" type="EntityReference"/>
+<var name="appendedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item interface="NodeList" obj="genderList" index="2" var="genderNode"/>
+<createEntityReference var="entReference" obj="doc" name='"ent3"'/>
+<assertNotNull actual="entReference" id="createdEntRefNotNull"/>
+<appendChild obj="genderNode" newChild="entReference" var="appendedNode"/>
+<firstChild var="entText" obj="entReference" interface="Node"/>
+<assertNotNull actual="entText" id="entTextNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceData obj="entText" offset="1" count="3" arg='"newArg"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatasetdatanomodificationallowederr.xml b/test/testcases/tests/level1/core/characterdatasetdatanomodificationallowederr.xml
new file mode 100644
index 0000000..2a9c690
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatasetdatanomodificationallowederr.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatasetdatanomodificationallowederr">
+<metadata>
+<title>characterdataSetDataNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "setData(data)" method raises a NO_MODIFICATION_ALLOWED_ERR
+ DOMException if the node is readonly.
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the FIRST item
+ from the entity reference and execute the "setData(data)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-72AB8359')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entElement" type="Node"/>
+<var name="entElementContent" type="Node"/>
+<var name="entReference" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item interface="NodeList" obj="genderList" index="2" var="genderNode"/>
+<firstChild var="entReference" obj="genderNode" interface="Node"/>
+<assertNotNull actual="entReference" id="entReferenceNotNull"/>
+<nodeType var="nodeType" obj="entReference"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entReference" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entReference" id="createdEntRefNotNull"/>
+</if>
+<firstChild var="entElement" obj="entReference" interface="Node"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<firstChild var="entElementContent" obj="entElement" interface="Node"/>
+<assertNotNull actual="entElementContent" id="entElementContentNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<data interface="CharacterData" obj="entElementContent" value="&quot;newData&quot;"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatasetdatanomodificationallowederrEE.xml b/test/testcases/tests/level1/core/characterdatasetdatanomodificationallowederrEE.xml
new file mode 100644
index 0000000..4fd993f
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatasetdatanomodificationallowederrEE.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatasetdatanomodificationallowederrEE">
+<metadata>
+<title>characterdataSetDataNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+Create an ent3 entity reference and call setData on a text child, should thrown a NO_MODIFICATION_ALLOWED_ERR.
+</description>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-72AB8359')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/characterdatasetdatanomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entText" type="Node"/>
+<var name="entReference" type="EntityReference"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item interface="NodeList" obj="genderList" index="4" var="genderNode"/>
+<createEntityReference var="entReference" obj="doc" name='"ent3"'/>
+<assertNotNull actual="entReference" id="createdEntRefNotNull"/>
+<firstChild var="entText" obj="entReference" interface="Node"/>
+<assertNotNull actual="entText" id="entTextNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<data interface="CharacterData" obj="entText" value="&quot;newData&quot;"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatasetnodevalue.xml b/test/testcases/tests/level1/core/characterdatasetnodevalue.xml
new file mode 100644
index 0000000..c03d54c
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatasetnodevalue.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatasetnodevalue">
+<metadata>
+<title>characterdataSetNodeValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setNodeValue()" method changes the character data
+ currently stored in the node.
+ Retrieve the character data from the second child
+ of the first employee and invoke the "setNodeValue()"
+ method, call "getData()" and compare.
+</description>
+<date qualifier="created">2001-08-23</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<nodeValue obj="child" value="&quot;Marilyn Martin&quot;"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected="&quot;Marilyn Martin&quot;" id="data" ignoreCase="false"/>
+<nodeValue obj="child" var="childValue"/>
+<assertEquals actual="childValue" expected="&quot;Marilyn Martin&quot;" id="value" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatasubstringexceedsvalue.xml b/test/testcases/tests/level1/core/characterdatasubstringexceedsvalue.xml
new file mode 100644
index 0000000..d045e8c
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatasubstringexceedsvalue.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatasubstringexceedsvalue">
+<metadata>
+<title>characterdataSubStringExceedsValue</title>
+<creator>NIST</creator>
+<description>
+ If the sum of the "offset" and "count" exceeds the
+ "length" then the "substringData(offset,count)" method
+ returns all the characters to the end of the data.
+
+ Retrieve the character data from the second child
+ of the first employee and access part of the data
+ by using the substringData(offset,count) method
+ with offset=9 and count=10. The method should return
+ the substring "Martin" since offset+count &gt; length
+ (19 &gt; 15).
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--CharacterData.substringData-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="substring" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<substringData obj="child" var="substring" offset="9" count="10"/>
+<assertEquals actual="substring" expected="&quot;Martin&quot;" id="characterdataSubStringExceedsValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/characterdatasubstringvalue.xml b/test/testcases/tests/level1/core/characterdatasubstringvalue.xml
new file mode 100644
index 0000000..170c186
--- /dev/null
+++ b/test/testcases/tests/level1/core/characterdatasubstringvalue.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="characterdatasubstringvalue">
+<metadata>
+<title>characterdataSubStringValue</title>
+<creator>NIST</creator>
+<description>
+ The "substringData(offset,count)" method returns the
+ specified string.
+
+ Retrieve the character data from the second child
+ of the first employee and access part of the data
+ by using the substringData(offset,count) method. The
+ method should return the specified substring starting
+ at position "offset" and extract "count" characters.
+ The method should return the string "Margaret".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--CharacterData.substringData-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="substring" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<substringData obj="child" var="substring" offset="0" count="8"/>
+<assertEquals actual="substring" expected="&quot;Margaret&quot;" id="characterdataSubStringValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/commentgetcomment.xml b/test/testcases/tests/level1/core/commentgetcomment.xml
new file mode 100644
index 0000000..6e4720d
--- /dev/null
+++ b/test/testcases/tests/level1/core/commentgetcomment.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="commentgetcomment">
+<metadata>
+<title>commentGetComment</title>
+<creator>NIST</creator>
+<description>
+ A comment is all the characters between the starting
+ '&lt;!--' and ending '--&gt;'
+ Retrieve the nodes of the DOM document. Search for a
+ comment node and the content is its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!-- Comment interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1334481328"/>
+<!--Node.nodeName attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<!--Node.nodeValue attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<!--Node.nodeType attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="childValue" type="DOMString"/>
+<var name="commentCount" type="int" value="0"/>
+<var name="childType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<childNodes obj="doc" var="elementList"/>
+<for-each collection="elementList" member="child">
+<nodeType obj="child" var="childType"/>
+<if>
+<equals actual="childType" expected="8" ignoreCase="false"/>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected='"#comment"' ignoreCase="false" id="nodeName"/>
+<nodeValue obj="child" var="childValue"/>
+<assertEquals actual="childValue" expected="&quot; This is comment number 1.&quot;" id="nodeValue" ignoreCase="false"/>
+<plus var="commentCount" op1="commentCount" op2="1"/>
+</if>
+</for-each>
+<assertEquals actual="commentCount" expected="1" ignoreCase="false" id="commentCount"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentcreateattribute.xml b/test/testcases/tests/level1/core/documentcreateattribute.xml
new file mode 100644
index 0000000..d34e97a
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentcreateattribute.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentcreateattribute">
+<metadata>
+<title>documentCreateAttribute</title>
+<creator>NIST</creator>
+<description>
+ The "createAttribute(name)" method creates an Attribute
+ node of the given name.
+
+ Retrieve the entire DOM document and invoke its
+ "createAttribute(name)" method. It should create a
+ new Attribute node with the given name. The name, value
+ and type of the newly created object are retrieved and
+ output.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newAttrNode" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<var name="attrName" type="DOMString"/>
+<var name="attrType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createAttribute obj="doc" var="newAttrNode" name="&quot;district&quot;"/>
+<nodeValue obj="newAttrNode" var="attrValue"/>
+<assertEquals actual="attrValue" expected="&quot;&quot;" ignoreCase="false" id="value"/>
+<nodeName obj="newAttrNode" var="attrName"/>
+<assertEquals actual="attrName" expected="&quot;district&quot;" ignoreCase="false" id="name"/>
+<nodeType obj="newAttrNode" var="attrType"/>
+<assertEquals actual="attrType" expected="2" ignoreCase="false" id="type"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentcreatecdatasection.xml b/test/testcases/tests/level1/core/documentcreatecdatasection.xml
new file mode 100644
index 0000000..a7e287f
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentcreatecdatasection.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentcreatecdatasection">
+<metadata>
+<title>documentCreateCDATASection</title>
+<creator>NIST</creator>
+<description>
+ The "createCDATASection(data)" method creates a new
+ CDATASection node whose value is the specified string.
+ Retrieve the entire DOM document and invoke its
+ "createCDATASection(data)" method. It should create a
+ new CDATASection node whose "data" is the specified
+ string. The content, name and type are retrieved and
+ output.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D26C0AF8"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newCDATASectionNode" type="CDATASection"/>
+<var name="newCDATASectionValue" type="DOMString"/>
+<var name="newCDATASectionName" type="DOMString"/>
+<var name="newCDATASectionType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createCDATASection obj="doc" var="newCDATASectionNode" data="&quot;This is a new CDATASection node&quot;"/>
+<nodeValue obj="newCDATASectionNode" var="newCDATASectionValue"/>
+<assertEquals id="nodeValue" actual="newCDATASectionValue" expected="&quot;This is a new CDATASection node&quot;" ignoreCase="false"/>
+<nodeName obj="newCDATASectionNode" var="newCDATASectionName"/>
+<assertEquals id="nodeName" actual="newCDATASectionName" expected="&quot;#cdata-section&quot;" ignoreCase="false"/>
+<nodeType obj="newCDATASectionNode" var="newCDATASectionType"/>
+<assertEquals id="nodeType" actual="newCDATASectionType" expected="4" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentcreatecomment.xml b/test/testcases/tests/level1/core/documentcreatecomment.xml
new file mode 100644
index 0000000..337d311
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentcreatecomment.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentcreatecomment">
+<metadata>
+<title>documentCreateComment</title>
+<creator>NIST</creator>
+<description>
+ The "createComment(data)" method creates a new Comment
+ node given the specified string.
+ Retrieve the entire DOM document and invoke its
+ "createComment(data)" method. It should create a new
+ Comment node whose "data" is the specified string.
+ The content, name and type are retrieved and output.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1334481328"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newCommentNode" type="Comment"/>
+<var name="newCommentValue" type="DOMString"/>
+<var name="newCommentName" type="DOMString"/>
+<var name="newCommentType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createComment obj="doc" var="newCommentNode" data="&quot;This is a new Comment node&quot;"/>
+<nodeValue obj="newCommentNode" var="newCommentValue"/>
+<assertEquals actual="newCommentValue" expected="&quot;This is a new Comment node&quot;" ignoreCase="false" id="value"/>
+<nodeName obj="newCommentNode" var="newCommentName"/>
+<assertEquals actual="newCommentName" expected="&quot;#comment&quot;" ignoreCase="false" id="name"/>
+<nodeType obj="newCommentNode" var="newCommentType"/>
+<assertEquals actual="newCommentType" expected="8" ignoreCase="false" id="type"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentcreatedocumentfragment.xml b/test/testcases/tests/level1/core/documentcreatedocumentfragment.xml
new file mode 100644
index 0000000..8a8ee4a
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentcreatedocumentfragment.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentcreatedocumentfragment">
+<metadata>
+<title>documentCreateDocumentFragment</title>
+<creator>NIST</creator>
+<description>
+ The "createDocumentFragment()" method creates an empty
+ DocumentFragment object.
+ Retrieve the entire DOM document and invoke its
+ "createDocumentFragment()" method. The content, name,
+ type and value of the newly created object are output.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-35CB04B5"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDocFragment" type="DocumentFragment"/>
+<var name="children" type="NodeList"/>
+<var name="length" type="int"/>
+<var name="newDocFragmentName" type="DOMString"/>
+<var name="newDocFragmentType" type="int"/>
+<var name="newDocFragmentValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="newDocFragment"/>
+<childNodes obj="newDocFragment" var="children"/>
+<length interface="NodeList" obj="children" var="length"/>
+<assertEquals actual="length" expected="0" ignoreCase="false" id="length"/>
+<nodeName obj="newDocFragment" var="newDocFragmentName"/>
+<assertEquals actual="newDocFragmentName" expected="&quot;#document-fragment&quot;" ignoreCase="false" id="name"/>
+<nodeType obj="newDocFragment" var="newDocFragmentType"/>
+<assertEquals actual="newDocFragmentType" expected="11" ignoreCase="false" id="type"/>
+<nodeValue obj="newDocFragment" var="newDocFragmentValue"/>
+<assertNull actual="newDocFragmentValue" id="value"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentcreateelement.xml b/test/testcases/tests/level1/core/documentcreateelement.xml
new file mode 100644
index 0000000..9139ad2
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentcreateelement.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentcreateelement">
+<metadata>
+<title>documentCreateElement</title>
+<creator>NIST</creator>
+<description>
+ The "createElement(tagName)" method creates an Element
+ of the type specified.
+ Retrieve the entire DOM document and invoke its
+ "createElement(tagName)" method with tagName="address".
+ The method should create an instance of an Element node
+ whose tagName is "address". The NodeName, NodeType
+ and NodeValue are returned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newElement" type="Element"/>
+<var name="newElementName" type="DOMString"/>
+<var name="newElementType" type="int"/>
+<var name="newElementValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createElement obj="doc" var="newElement" tagName="&quot;address&quot;"/>
+<nodeName obj="newElement" var="newElementName"/>
+<assertEquals actual="newElementName" expected="&quot;address&quot;" ignoreCase="false" id="name"/>
+<nodeType obj="newElement" var="newElementType"/>
+<assertEquals actual="newElementType" expected="1" ignoreCase="false" id="type"/>
+<nodeValue obj="newElement" var="newElementValue"/>
+<assertNull actual="newElementValue" id="valueInitiallyNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentcreateelementcasesensitive.xml b/test/testcases/tests/level1/core/documentcreateelementcasesensitive.xml
new file mode 100644
index 0000000..b87e4e9
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentcreateelementcasesensitive.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentcreateelementcasesensitive">
+<metadata>
+<title>documentCreateElementCaseSensitive</title>
+<creator>NIST</creator>
+<description>
+ The tagName parameter in the "createElement(tagName)"
+ method is case-sensitive for XML documents.
+ Retrieve the entire DOM document and invoke its
+ "createElement(tagName)" method twice. Once for tagName
+ equal to "address" and once for tagName equal to "ADDRESS"
+ Each call should create a distinct Element node. The
+ newly created Elements are then assigned attributes
+ that are retrieved.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newElement1" type="Element"/>
+<var name="newElement2" type="Element"/>
+<var name="attribute1" type="DOMString"/>
+<var name="attribute2" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createElement obj="doc" var="newElement1" tagName="&quot;ADDRESS&quot;"/>
+<createElement obj="doc" var="newElement2" tagName="&quot;address&quot;"/>
+<setAttribute obj="newElement1" name="&quot;district&quot;" value="&quot;Fort Worth&quot;"/>
+<setAttribute obj="newElement2" name="&quot;county&quot;" value="&quot;Dallas&quot;"/>
+<getAttribute obj="newElement1" var="attribute1" name="&quot;district&quot;"/>
+<getAttribute obj="newElement2" var="attribute2" name="&quot;county&quot;"/>
+<assertEquals actual="attribute1" expected='"Fort Worth"' ignoreCase="false" id="attrib1"/>
+<assertEquals actual="attribute2" expected='"Dallas"' ignoreCase="false" id="attrib2"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentcreateelementdefaultattr.xml b/test/testcases/tests/level1/core/documentcreateelementdefaultattr.xml
new file mode 100644
index 0000000..e7bdcb0
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentcreateelementdefaultattr.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentcreateelementdefaultattr">
+<metadata>
+<title>documentCreateElementDefaultAttr</title>
+<creator>NIST</creator>
+<description>
+ The "createElement(tagName)" method creates an Element
+ of the type specified. In addition, if there are known attributes
+ with default values, Attr nodes representing them are automatically
+ created and attached to the element.
+ Retrieve the entire DOM document and invoke its
+ "createElement(tagName)" method with tagName="address".
+ The method should create an instance of an Element node
+ whose tagName is "address". The tagName "address" has an
+ attribute with default values, therefore the newly created element
+ will have them.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newElement" type="Element"/>
+<var name="defaultAttr" type="NamedNodeMap"/>
+<var name="child" type="Node"/>
+<var name="name" type="DOMString"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createElement obj="doc" var="newElement" tagName="&quot;address&quot;"/>
+<attributes obj="newElement" var="defaultAttr"/>
+<item obj="defaultAttr" var="child" index="0" interface="NamedNodeMap"/>
+<assertNotNull actual="child" id="defaultAttrNotNull"/>
+<nodeName obj="child" var="name"/>
+<assertEquals actual="name" expected="&quot;street&quot;" id="attrName" ignoreCase="false"/>
+<nodeValue obj="child" var="value"/>
+<assertEquals actual="value" expected="&quot;Yes&quot;" id="attrValue" ignoreCase="false"/>
+<assertSize collection="defaultAttr" size="1" id="attrCount"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentcreateentityreference.xml b/test/testcases/tests/level1/core/documentcreateentityreference.xml
new file mode 100644
index 0000000..2281f07
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentcreateentityreference.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentcreateentityreference">
+<metadata>
+<title>documentCreateEntityReference</title>
+<creator>NIST</creator>
+<description>
+ The "createEntityReference(name)" method creates an
+ EntityReferrence node.
+
+ Retrieve the entire DOM document and invoke its
+ "createEntityReference(name)" method. It should create
+ a new EntityReference node for the Entity with the
+ given name. The name, value and type are retrieved and
+ output.
+</description>
+<contributor>Mary Brady</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-392B75AE"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newEntRefNode" type="EntityReference"/>
+<var name="entRefValue" type="DOMString"/>
+<var name="entRefName" type="DOMString"/>
+<var name="entRefType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createEntityReference obj="doc" var="newEntRefNode" name="&quot;ent1&quot;"/>
+<assertNotNull actual="newEntRefNode" id="createdEntRefNotNull"/>
+<nodeValue obj="newEntRefNode" var="entRefValue"/>
+<assertNull actual="entRefValue" id="value"/>
+<nodeName obj="newEntRefNode" var="entRefName"/>
+<assertEquals actual="entRefName" expected="&quot;ent1&quot;" ignoreCase="false" id="name"/>
+<nodeType obj="newEntRefNode" var="entRefType"/>
+<assertEquals actual="entRefType" expected="5" ignoreCase="false" id="type"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentcreateentityreferenceknown.xml b/test/testcases/tests/level1/core/documentcreateentityreferenceknown.xml
new file mode 100644
index 0000000..96af668
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentcreateentityreferenceknown.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentcreateentityreferenceknown">
+<metadata>
+<title>documentCreateEntityReferenceKnown</title>
+<creator>NIST</creator>
+<description>
+ The "createEntityReference(name)" method creates an
+ EntityReference node. In addition, if the referenced entity
+ is known, the child list of the "EntityReference" node
+ is the same as the corresponding "Entity" node.
+
+ Retrieve the entire DOM document and invoke its
+ "createEntityReference(name)" method. It should create
+ a new EntityReference node for the Entity with the
+ given name. The referenced entity is known, therefore the child
+ list of the "EntityReference" node is the same as the corresponding
+ "Entity" node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-392B75AE"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newEntRefNode" type="EntityReference"/>
+<var name="newEntRefList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="name" type="DOMString"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createEntityReference obj="doc" var="newEntRefNode" name="&quot;ent3&quot;"/>
+<assertNotNull actual="newEntRefNode" id="createdEntRefNotNull"/>
+<childNodes obj="newEntRefNode" var="newEntRefList"/>
+<assertSize collection="newEntRefList" size="1" id="size"/>
+<firstChild interface="Node" obj="newEntRefNode" var="child"/>
+<nodeName obj="child" var="name"/>
+<assertEquals actual="name" expected="&quot;#text&quot;" ignoreCase="false" id="name"/>
+<nodeValue obj="child" var="value"/>
+<assertEquals actual="value" expected="&quot;Texas&quot;" ignoreCase="false" id="value"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentcreateprocessinginstruction.xml b/test/testcases/tests/level1/core/documentcreateprocessinginstruction.xml
new file mode 100644
index 0000000..a4d1d88
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentcreateprocessinginstruction.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentcreateprocessinginstruction">
+<metadata>
+<title>documentCreateProcessingInstruction</title>
+<creator>NIST</creator>
+<description>
+ The "createProcessingInstruction(target,data)" method
+ creates a new ProcessingInstruction node with the
+ specified name and data string.
+
+ Retrieve the entire DOM document and invoke its
+ "createProcessingInstruction(target,data)" method.
+ It should create a new PI node with the specified target
+ and data. The target, data and type are retrieved and
+ output.
+</description>
+<contributor>Mary Brady</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2001Apr/0020.html"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-135944439"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newPINode" type="ProcessingInstruction"/>
+<var name="piValue" type="DOMString"/>
+<var name="piName" type="DOMString"/>
+<var name="piType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createProcessingInstruction obj="doc" var="newPINode" target="&quot;TESTPI&quot;" data="&quot;This is a new PI node&quot;"/>
+<assertNotNull actual="newPINode" id="createdPINotNull"/>
+<nodeName obj="newPINode" var="piName"/>
+<assertEquals actual="piName" expected="&quot;TESTPI&quot;" ignoreCase="false" id="name"/>
+<nodeValue obj="newPINode" var="piValue"/>
+<assertEquals actual="piValue" expected="&quot;This is a new PI node&quot;" ignoreCase="false" id="value"/>
+<nodeType obj="newPINode" var="piType"/>
+<assertEquals actual="piType" expected="7" ignoreCase="false" id="type"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentcreatetextnode.xml b/test/testcases/tests/level1/core/documentcreatetextnode.xml
new file mode 100644
index 0000000..b583e12
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentcreatetextnode.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentcreatetextnode">
+<metadata>
+<title>documentCreateTextNode</title>
+<creator>NIST</creator>
+<description>
+ The "createTextNode(data)" method creates a Text node
+ given the specfied string.
+ Retrieve the entire DOM document and invoke its
+ "createTextNode(data)" method. It should create a
+ new Text node whose "data" is the specified string.
+ The NodeName and NodeType are also checked.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1975348127"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newTextNode" type="Text"/>
+<var name="newTextName" type="DOMString"/>
+<var name="newTextValue" type="DOMString"/>
+<var name="newTextType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createTextNode obj="doc" var="newTextNode" data="&quot;This is a new Text node&quot;"/>
+<nodeValue obj="newTextNode" var="newTextValue"/>
+<assertEquals actual="newTextValue" expected="&quot;This is a new Text node&quot;" ignoreCase="false" id="value"/>
+<nodeName obj="newTextNode" var="newTextName"/>
+<assertEquals actual="newTextName" expected="&quot;#text&quot;" ignoreCase="false" id="name"/>
+<nodeType obj="newTextNode" var="newTextType"/>
+<assertEquals actual="newTextType" expected="3" ignoreCase="false" id="type"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentgetdoctype.xml b/test/testcases/tests/level1/core/documentgetdoctype.xml
new file mode 100644
index 0000000..655d6f1
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentgetdoctype.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentgetdoctype">
+<metadata>
+<title>documentGetDocType</title>
+<creator>NIST</creator>
+<description>
+ The "getDoctype()" method returns the Document
+ Type Declaration associated with this document.
+ Retrieve the entire DOM document and invoke its
+ "getDoctype()" method. The name of the document
+ type should be returned. The "getName()" method
+ should be equal to "staff" or "svg".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A31"/>
+<!-- Node.nodeValue -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="docTypeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<name interface="DocumentType" obj="docType" var="docTypeName"/>
+<if><contentType type="image/svg+xml"/>
+ <assertEquals actual="docTypeName" expected='"svg"' id="doctypeNameSVG" ignoreCase="false"/>
+ <else>
+ <assertEquals actual="docTypeName" expected='"staff"' id="doctypeName" ignoreCase="false"/>
+ </else>
+</if>
+<nodeValue obj="docType" var="nodeValue"/>
+<assertNull actual="nodeValue" id="initiallyNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentgetdoctypenodtd.xml b/test/testcases/tests/level1/core/documentgetdoctypenodtd.xml
new file mode 100644
index 0000000..6d1fde4
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentgetdoctypenodtd.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentgetdoctypenodtd">
+<metadata>
+<title>documentGetDocTypeNoDTD</title>
+<creator>NIST</creator>
+<description>
+ The "getDoctype()" method returns null for XML documents
+ without a document type declaration.
+ Retrieve the XML document without a DTD and invoke the
+ "getDoctype()" method. It should return null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A31"/>
+</metadata>
+<implementationAttribute name="validating" value="false"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<load var="doc" href="hc_nodtdstaff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNull actual="docType" id="documentGetDocTypeNoDTDAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentgetelementsbytagnamelength.xml b/test/testcases/tests/level1/core/documentgetelementsbytagnamelength.xml
new file mode 100644
index 0000000..fdfd7de
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentgetelementsbytagnamelength.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentgetelementsbytagnamelength">
+<metadata>
+<title>documentGetElementsByTagNameLength</title>
+<creator>NIST</creator>
+<description>
+ The "getElementsByTagName(tagName)" method returns a
+ NodeList of all the Elements with a given tagName.
+
+ Retrieve the entire DOM document and invoke its
+ "getElementsByTagName(tagName)" method with tagName
+ equal to "name". The method should return a NodeList
+ that contains 5 elements.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-A6C9094"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nameList" type="NodeList"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nameList" tagname="&quot;name&quot;"/>
+<assertSize collection="nameList" size="5" id="documentGetElementsByTagNameLengthAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentgetelementsbytagnametotallength.xml b/test/testcases/tests/level1/core/documentgetelementsbytagnametotallength.xml
new file mode 100644
index 0000000..593ce22
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentgetelementsbytagnametotallength.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentgetelementsbytagnametotallength">
+<metadata>
+<title>documentGetElementsByTagNameTotalLength</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the entire DOM document, invoke
+ getElementsByTagName("*") and check the length of the NodeList.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-A6C9094"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nameList" type="NodeList"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nameList" tagname='"*"'/>
+<if><contentType type="image/svg+xml"/>
+ <assertSize collection="nameList" size="39" id="elementCountSVG"/>
+<else>
+ <assertSize collection="nameList" size="37" id="documentGetElementsByTagNameTotalLengthAssert"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/documentgetelementsbytagnamevalue.xml b/test/testcases/tests/level1/core/documentgetelementsbytagnamevalue.xml
new file mode 100644
index 0000000..ca1086c
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentgetelementsbytagnamevalue.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentgetelementsbytagnamevalue">
+<metadata>
+<title>documentGetElementsByTagNameValue</title>
+<creator>NIST</creator>
+<description>
+ The "getElementsByTagName(tagName)" method returns a
+ NodeList of all the Elements with a given tagName
+ in a pre-order traversal of the tree.
+
+ Retrieve the entire DOM document and invoke its
+ "getElementsByTagName(tagName)" method with tagName
+ equal to "name". The method should return a NodeList
+ that contains 5 elements. The FOURTH item in the
+ list is retrieved and output.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-A6C9094"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nameList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nameList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="nameList" var="nameNode" index="3"/>
+<firstChild interface="Node" obj="nameNode" var="firstChild"/>
+<nodeValue obj="firstChild" var="childValue"/>
+<assertEquals actual="childValue" expected="&quot;Jeny Oconnor&quot;" id="documentGetElementsByTagNameValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentgetimplementation.xml b/test/testcases/tests/level1/core/documentgetimplementation.xml
new file mode 100644
index 0000000..0797926
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentgetimplementation.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentgetimplementation">
+<metadata>
+<title>documentGetImplementation</title>
+<creator>NIST</creator>
+<description>
+ The "getImplementation()" method returns the
+ DOMImplementation object that handles this document.
+ Retrieve the entire DOM document and invoke its
+ "getImplementation()" method. It should return a
+ DOMImplementation whose "hasFeature("XML","1.0")
+ method returns the boolean value "true".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1B793EBA"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docImpl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<implementation obj="doc" var="docImpl"/>
+<hasFeature obj="docImpl" var="state" feature="&quot;XML&quot;" version="&quot;1.0&quot;"/>
+<assertTrue actual="state" id="documentGetImplementationAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documentgetrootnode.xml b/test/testcases/tests/level1/core/documentgetrootnode.xml
new file mode 100644
index 0000000..959e2ba
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentgetrootnode.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentgetrootnode">
+<metadata>
+<title>documentGetRootNode</title>
+<creator>NIST</creator>
+<description>
+ The "getDocumentElement()" method provides direct access
+ to the child node that is the root element of the document.
+ Retrieve the entire DOM document and invoke its
+ "getDocumentElement()" method. It should return an
+ Element node whose NodeName is "staff" (or "svg").
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--documentElement attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-87CD092"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=251"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="root" type="Element"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<nodeName obj="root" var="rootName"/>
+<if><contentType type="image/svg+xml"/>
+<assertEquals actual="rootName" expected='"svg"' id="svgRootNode" ignoreCase="false"/>
+<else>
+<assertEquals actual="rootName" expected='"staff"' id="documentGetRootNodeAssert" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateattribute.xml b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateattribute.xml
new file mode 100644
index 0000000..98b66e4
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateattribute.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentinvalidcharacterexceptioncreateattribute">
+<metadata>
+<title>documentInvalidCharacterExceptionCreateAttribute</title>
+<creator>NIST</creator>
+<description>
+ The "createAttribute(tagName)" method raises an
+ INVALID_CHARACTER_ERR DOMException if the specified
+ tagName contains an invalid character.
+
+ Retrieve the entire DOM document and invoke its
+ "createAttribute(tagName)" method with the tagName equal
+ to the string "invalid^Name". Due to the invalid
+ character the desired EXCEPTION should be raised.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1084891198')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="createdAttr" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createAttribute var="createdAttr" obj="doc" name="&quot;invalid^Name&quot;"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateelement.xml b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateelement.xml
new file mode 100644
index 0000000..bb3495a
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateelement.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentinvalidcharacterexceptioncreateelement">
+<metadata>
+<title>documentInvalidCharacterExceptionCreateElement</title>
+<creator>NIST</creator>
+<description>
+ The "createElement(tagName)" method raises an
+ INVALID_CHARACTER_ERR DOMException if the specified
+ tagName contains an invalid character.
+
+ Retrieve the entire DOM document and invoke its
+ "createElement(tagName)" method with the tagName equal
+ to the string "invalid^Name". Due to the invalid
+ character the desired EXCEPTION should be raised.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-2141741547')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="badElement" type="Element"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createElement var="badElement" obj="doc" tagName="&quot;invalid^Name&quot;"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateentref.xml b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateentref.xml
new file mode 100644
index 0000000..7ed093d
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateentref.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentinvalidcharacterexceptioncreateentref">
+<metadata>
+<title>documentInvalidCharacterExceptionCreateEntRef</title>
+<creator>NIST</creator>
+<description>
+ The "createEntityReference(tagName)" method raises an
+ INVALID_CHARACTER_ERR DOMException if the specified
+ tagName contains an invalid character.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-392B75AE"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-392B75AE')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="badEntityRef" type="EntityReference"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<if><contentType type="text/html"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<createEntityReference var="badEntityRef" obj="doc" name='"foo"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+<else>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createEntityReference var="badEntityRef" obj="doc" name="&quot;invalid^Name&quot;"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateentref1.xml b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateentref1.xml
new file mode 100644
index 0000000..3ad9a20
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreateentref1.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentinvalidcharacterexceptioncreateentref1">
+<metadata>
+<title>documentinvalidcharacterexceptioncreateentref1</title>
+<creator>Curt Arnold</creator>
+<description>
+Creating an entity reference with an empty name should cause an INVALID_CHARACTER_ERR.
+</description>
+<date qualifier="created">2004-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-392B75AE"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-392B75AE')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=525"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="badEntityRef" type="EntityReference"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<if><contentType type="text/html"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<createEntityReference var="badEntityRef" obj="doc" name='"foo"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+<else>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createEntityReference var="badEntityRef" obj="doc" name='""'/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreatepi.xml b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreatepi.xml
new file mode 100644
index 0000000..970fd91
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreatepi.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentinvalidcharacterexceptioncreatepi">
+<metadata>
+<title>documentInvalidCharacterExceptionCreatePI</title>
+<creator>NIST</creator>
+<description>
+ The "createProcessingInstruction(target,data) method
+ raises an INVALID_CHARACTER_ERR DOMException if the
+ specified tagName contains an invalid character.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-135944439"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-135944439')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="badPI" type="ProcessingInstruction"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<if><contentType type="text/html"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<createProcessingInstruction var="badPI" obj="doc" target='"foo"' data='"data"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+<else>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createProcessingInstruction var="badPI" obj="doc" target="&quot;invalid^Name&quot;" data="&quot;data&quot;"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreatepi1.xml b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreatepi1.xml
new file mode 100644
index 0000000..48bc577
--- /dev/null
+++ b/test/testcases/tests/level1/core/documentinvalidcharacterexceptioncreatepi1.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documentinvalidcharacterexceptioncreatepi1">
+<metadata>
+<title>documentinvalidcharacterexceptioncreatepi1</title>
+<creator>Curt Arnold</creator>
+<description>
+Creating a processing instruction with an empty target should cause an INVALID_CHARACTER_ERR.
+</description>
+<date qualifier="created">2004-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-135944439"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-135944439')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=525"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="badPI" type="ProcessingInstruction"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<if><contentType type="text/html"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<createProcessingInstruction var="badPI" obj="doc" target='"foo"' data='"data"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+<else>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createProcessingInstruction var="badPI" obj="doc" target='""' data="&quot;data&quot;"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/documenttypegetdoctype.xml b/test/testcases/tests/level1/core/documenttypegetdoctype.xml
new file mode 100644
index 0000000..95a3049
--- /dev/null
+++ b/test/testcases/tests/level1/core/documenttypegetdoctype.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documenttypegetdoctype">
+<metadata>
+<title>documenttypeGetDocType</title>
+<creator>NIST</creator>
+<description>
+ The "getName()" method contains the name of the DTD.
+
+ Retrieve the Document Type for this document and examine
+ the string returned by the "getName()" method.
+ It should be set to "staff".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A31"/>
+<!--name attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1844763134"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="name" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<name interface="DocumentType" obj="docType" var="name"/>
+<if><contentType type="image/svg+xml"/>
+<assertEquals actual="name" expected='"svg"' id="doctypeName" ignoreCase="false"/>
+<else>
+<assertEquals actual="name" expected='"staff"' id="documenttypeGetDocTypeAssert" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/documenttypegetentities.xml b/test/testcases/tests/level1/core/documenttypegetentities.xml
new file mode 100644
index 0000000..ccc860e
--- /dev/null
+++ b/test/testcases/tests/level1/core/documenttypegetentities.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documenttypegetentities">
+<metadata>
+<title>documenttypeGetEntities</title>
+<creator>NIST</creator>
+<description>
+ The "getEntities()" method is a NamedNodeMap that contains
+ the general entities for this document.
+
+ Retrieve the Document Type for this document and create
+ a NamedNodeMap of all its entities. The entire map is
+ traversed and the names of the entities are retrieved.
+ There should be 5 entities. Duplicates should be ignored.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1788794630"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entityList" type="NamedNodeMap"/>
+<var name="name" type="DOMString"/>
+<var name="expectedResult" type="Collection">
+<member>"ent1"</member>
+<member>"ent2"</member>
+<member>"ent3"</member>
+<member>"ent4"</member>
+<member>"ent5"</member>
+</var>
+<var name="expectedResultSVG" type="Collection">
+<member>"ent1"</member>
+<member>"ent2"</member>
+<member>"ent3"</member>
+<member>"ent4"</member>
+<member>"ent5"</member>
+<member>"svgunit"</member>
+<member>"svgtest"</member>
+</var>
+<var name="nameList" type="Collection"/>
+<var name="entity" type="Node"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="entityList"/>
+<assertNotNull actual="entityList" id="entitiesNotNull"/>
+<for-each collection="entityList" member="entity">
+ <nodeName obj="entity" var="name"/>
+ <append collection="nameList" item="name"/>
+</for-each>
+<if><contentType type="image/svg+xml"/>
+ <assertEquals actual="nameList" expected="expectedResultSVG" id="entityNamesSVG" ignoreCase="false"/>
+ <else>
+ <assertEquals actual="nameList" expected="expectedResult" id="entityNames" ignoreCase="false"/>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/documenttypegetentitieslength.xml b/test/testcases/tests/level1/core/documenttypegetentitieslength.xml
new file mode 100644
index 0000000..04561fa
--- /dev/null
+++ b/test/testcases/tests/level1/core/documenttypegetentitieslength.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documenttypegetentitieslength">
+<metadata>
+<title>documenttypeGetEntitiesLength</title>
+<creator>NIST</creator>
+<description>
+ Duplicate entities are to be discarded.
+ Retrieve the Document Type for this document and create
+ a NamedNodeMap of all its entities. The entity named
+ "ent1" is defined twice and therefore that last
+ occurrance should be discarded.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1788794630"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entityList" type="NamedNodeMap"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="entityList"/>
+<assertNotNull actual="entityList" id="entitiesNotNull"/>
+<if><contentType type="image/svg+xml"/>
+ <assertSize collection="entityList" size="7" id="entitySizeSVG"/>
+ <else>
+ <assertSize collection="entityList" size="5" id="entitySize"/>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/documenttypegetentitiestype.xml b/test/testcases/tests/level1/core/documenttypegetentitiestype.xml
new file mode 100644
index 0000000..62cbc27
--- /dev/null
+++ b/test/testcases/tests/level1/core/documenttypegetentitiestype.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documenttypegetentitiestype">
+<metadata>
+<title>documenttypeGetEntitiesType</title>
+<creator>NIST</creator>
+<description>
+ Every node in the map returned by the "getEntities()"
+ method implements the Entity interface.
+
+ Retrieve the Document Type for this document and create
+ a NamedNodeMap of all its entities. Traverse the
+ entire list and examine the NodeType of each node
+ in the list.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1788794630"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entityList" type="NamedNodeMap"/>
+<var name="entity" type="Node"/>
+<var name="entityType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="entityList"/>
+<assertNotNull actual="entityList" id="entitiesNotNull"/>
+<for-each collection="entityList" member="entity">
+<nodeType obj="entity" var="entityType"/>
+<assertEquals actual="entityType" expected="6" id="documenttypeGetEntitiesTypeAssert" ignoreCase="false"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level1/core/documenttypegetnotations.xml b/test/testcases/tests/level1/core/documenttypegetnotations.xml
new file mode 100644
index 0000000..927b8b4
--- /dev/null
+++ b/test/testcases/tests/level1/core/documenttypegetnotations.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documenttypegetnotations">
+<metadata>
+<title>documenttypeGetNotations</title>
+<creator>NIST</creator>
+<description>
+ The "getNotations()" method creates a NamedNodeMap that
+ contains all the notations declared in the DTD.
+
+ Retrieve the Document Type for this document and create
+ a NamedNodeMap object of all the notations. There
+ should be two items in the list (notation1 and notation2).
+</description>
+<contributor>Mary Brady</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D46829EF"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notationList" type="NamedNodeMap"/>
+<var name="notation" type="Node"/>
+<var name="notationName" type="DOMString"/>
+<var name="actual" type="Collection"/>
+<var name="expected" type="Collection">
+<member>"notation1"</member>
+<member>"notation2"</member>
+</var>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="notationList"/>
+<assertNotNull actual="notationList" id="notationsNotNull"/>
+<for-each collection="notationList" member="notation">
+<nodeName obj="notation" var="notationName"/>
+<append collection="actual" item="notationName"/>
+</for-each>
+<assertEquals actual="actual" expected="expected" id="names" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/documenttypegetnotationstype.xml b/test/testcases/tests/level1/core/documenttypegetnotationstype.xml
new file mode 100644
index 0000000..cde501f
--- /dev/null
+++ b/test/testcases/tests/level1/core/documenttypegetnotationstype.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="documenttypegetnotationstype">
+<metadata>
+<title>documenttypeGetNotationsType</title>
+<creator>NIST</creator>
+<description>
+ Every node in the map returned by the "getNotations()"
+ method implements the Notation interface.
+
+ Retrieve the Document Type for this document and create
+ a NamedNodeMap object of all the notations. Traverse
+ the entire list and examine the NodeType of each node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D46829EF"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notationList" type="NamedNodeMap"/>
+<var name="notation" type="Node"/>
+<var name="notationType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="notationList"/>
+<assertNotNull actual="notationList" id="notationsNotNull"/>
+<for-each collection="notationList" member="notation">
+<nodeType obj="notation" var="notationType"/>
+<assertEquals actual="notationType" expected="12" id="documenttypeGetNotationsTypeAssert" ignoreCase="false"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level1/core/domimplementationfeaturenoversion.xml b/test/testcases/tests/level1/core/domimplementationfeaturenoversion.xml
new file mode 100644
index 0000000..fe62c52
--- /dev/null
+++ b/test/testcases/tests/level1/core/domimplementationfeaturenoversion.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="domimplementationfeaturenoversion">
+<metadata>
+<title>domimplementationFeatureNoVersion</title>
+<creator>NIST</creator>
+<description>
+hasFeature("XML", "") should return true for implementations that can read staff files.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7"/>
+<subject resource="http://www.w3.org/2000/11/DOM-Level-2-errata#core-14"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<hasFeature obj="domImpl" var="state" feature='"XML"' version='""'/>
+<assertTrue actual="state" id="hasXMLEmpty"/>
+</test>
diff --git a/test/testcases/tests/level1/core/domimplementationfeaturenull.xml b/test/testcases/tests/level1/core/domimplementationfeaturenull.xml
new file mode 100644
index 0000000..4634680
--- /dev/null
+++ b/test/testcases/tests/level1/core/domimplementationfeaturenull.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="domimplementationfeaturenull">
+<metadata>
+<title>domimplementationFeatureNull</title>
+<creator>NIST</creator>
+<description>
+hasFeature("XML", null) should return true for implementations that can read staff documents.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2001-08-23</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7"/>
+<subject resource="http://www.w3.org/2000/11/DOM-Level-2-errata#core-14"/>
+</metadata>
+<implementationAttribute name="hasNullString" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<hasFeature obj="domImpl" var="state" feature='"XML"' version="nullVersion"/>
+<assertTrue actual="state" id="hasXMLnull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/domimplementationfeaturexml.xml b/test/testcases/tests/level1/core/domimplementationfeaturexml.xml
new file mode 100644
index 0000000..3eb18bd
--- /dev/null
+++ b/test/testcases/tests/level1/core/domimplementationfeaturexml.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="domimplementationfeaturexml">
+<metadata>
+<title>domimplementationFeaturexml</title>
+<creator>NIST</creator>
+<description>
+hasFeature("xml", "1.0") should return true for implementations that can read staff documents.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<hasFeature obj="domImpl" var="state" feature='"xml"' version='"1.0"'/>
+<assertTrue actual="state" id="hasXML1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementaddnewattribute.xml b/test/testcases/tests/level1/core/elementaddnewattribute.xml
new file mode 100644
index 0000000..90ee433
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementaddnewattribute.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementaddnewattribute">
+<metadata>
+<title>elementAddNewAttribute</title>
+<creator>NIST</creator>
+<description>
+ The "setAttribute(name,value)" method adds a new attribute
+ to the Element
+
+ Retrieve the last child of the last employee, then
+ add an attribute to it by invoking the
+ "setAttribute(name,value)" method. It should create
+ a "name" attribute with an assigned value equal to
+ "value".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--setAttribute-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="4" var="testEmployee"/>
+<setAttribute obj="testEmployee" name="&quot;district&quot;" value="&quot;dallas&quot;"/>
+<getAttribute obj="testEmployee" var="attrValue" name="&quot;district&quot;"/>
+<assertEquals actual="attrValue" expected="&quot;dallas&quot;" id="elementAddNewAttributeAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementassociatedattribute.xml b/test/testcases/tests/level1/core/elementassociatedattribute.xml
new file mode 100644
index 0000000..583da3c
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementassociatedattribute.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementassociatedattribute">
+<metadata>
+<title>elementAssociatedAttribute</title>
+<creator>NIST</creator>
+<description>
+ Elements may have attributes associated with them.
+
+ Retrieve the first attribute from the last child of
+ the first employee and invoke the "getSpecified()"
+ method. This test is only intended to show that
+ Elements can actually have attributes. This test uses
+ the "getNamedItem(name)" method from the NamedNodeMap
+ interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="specified" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"address"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name='"domestic"'/>
+<specified obj="domesticAttr" var="specified"/>
+<assertTrue actual="specified" id="domesticSpecified"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementchangeattributevalue.xml b/test/testcases/tests/level1/core/elementchangeattributevalue.xml
new file mode 100644
index 0000000..3bc4b85
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementchangeattributevalue.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementchangeattributevalue">
+<metadata>
+<title>elementChangeAttributeValue</title>
+<creator>NIST</creator>
+<description>
+ The "setAttribute(name,value)" method adds a new attribute
+ to the Element. If the "name" is already present, then
+ its value should be changed to the new one that is in
+ the "value" parameter.
+
+ Retrieve the last child of the fourth employee, then add
+ an attribute to it by invoking the
+ "setAttribute(name,value)" method. Since the name of the
+ used attribute("street") is already present in this
+ element, then its value should be changed to the new one
+ of the "value" parameter.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--setAttribute-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="3" var="testEmployee"/>
+<setAttribute obj="testEmployee" name="&quot;street&quot;" value="&quot;Neither&quot;"/>
+<getAttribute obj="testEmployee" var="attrValue" name="&quot;street&quot;"/>
+<assertEquals actual="attrValue" expected="&quot;Neither&quot;" id="elementChangeAttributeValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementcreatenewattribute.xml b/test/testcases/tests/level1/core/elementcreatenewattribute.xml
new file mode 100644
index 0000000..6b9f510
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementcreatenewattribute.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementcreatenewattribute">
+<metadata>
+<title>elementCreateNewAttribute</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNode(newAttr)" method adds a new
+ attribute to the Element.
+
+ Retrieve first address element and add
+ a new attribute node to it by invoking its
+ "setAttributeNode(newAttr)" method. This test makes use
+ of the "createAttribute(name)" method from the Document
+ interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--setAttributeNode-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<var name="newAttribute" type="Attr"/>
+<var name="oldAttr" type="Attr"/>
+<var name="districtAttr" type="Attr"/>
+<var name="attrVal" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddress"/>
+<createAttribute obj="doc" var="newAttribute" name="&quot;district&quot;"/>
+<setAttributeNode obj="testAddress" var="oldAttr" newAttr="newAttribute"/>
+<assertNull actual="oldAttr" id="old_attr_doesnt_exist"/>
+<getAttributeNode obj="testAddress" var="districtAttr" name="&quot;district&quot;"/>
+<assertNotNull actual="districtAttr" id="new_district_accessible"/>
+<getAttribute var="attrVal" obj="testAddress" name="&quot;district&quot;"/>
+<assertEquals actual="attrVal" expected="&quot;&quot;" id="attr_value" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementgetattributenode.xml b/test/testcases/tests/level1/core/elementgetattributenode.xml
new file mode 100644
index 0000000..930d906
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementgetattributenode.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementgetattributenode">
+<metadata>
+<title>elementGetAttributeNode</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributeNode(name)" method retrieves an
+ attribute node by name.
+
+ Retrieve the attribute "domestic" from the last child
+ of the first employee. Since the method returns an
+ Attr object, the "name" can be examined to ensure the
+ proper attribute was retrieved.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-217A91B8"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="name" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<getAttributeNode obj="testEmployee" var="domesticAttr" name="&quot;domestic&quot;"/>
+<nodeName obj="domesticAttr" var="name"/>
+<assertEquals actual="name" expected="&quot;domestic&quot;" id="elementGetAttributeNodeAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementgetattributenodenull.xml b/test/testcases/tests/level1/core/elementgetattributenodenull.xml
new file mode 100644
index 0000000..63354a3
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementgetattributenodenull.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementgetattributenodenull">
+<metadata>
+<title>elementGetAttributeNodeNull</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributeNode(name)" method retrieves an
+ attribute node by name. It should return null if the
+ "name" attribute does not exist.
+
+ Retrieve the last child of the first employee and attempt
+ to retrieve a non-existing attribute. The method should
+ return "null". The non-existing attribute to be used
+ is "invalidAttribute".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-217A91B8"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="domesticAttr" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<getAttributeNode obj="testEmployee" var="domesticAttr" name="&quot;invalidAttribute&quot;"/>
+<assertNull actual="domesticAttr" id="elementGetAttributeNodeNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementgetelementempty.xml b/test/testcases/tests/level1/core/elementgetelementempty.xml
new file mode 100644
index 0000000..3e574de
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementgetelementempty.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementgetelementempty">
+<metadata>
+<title>elementGetElementEmpty</title>
+<creator>NIST</creator>
+<description>
+ The "getAttribute(name)" method returns an empty
+ string if no value was assigned to an attribute and
+ no default value was given in the DTD file.
+
+ Retrieve the last child of the last employee, then
+ invoke "getAttribute(name)" method, where "name" is an
+ attribute without a specified or DTD default value.
+ The "getAttribute(name)" method should return the empty
+ string. This method makes use of the
+ "createAttribute(newAttr)" method from the Document
+ interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--getAttribute-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-666EE0F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newAttribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createAttribute obj="doc" var="newAttribute" name="&quot;district&quot;"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="3" var="testEmployee"/>
+<setAttributeNode obj="testEmployee" var="domesticAttr" newAttr="newAttribute"/>
+<getAttribute obj="testEmployee" var="attrValue" name="&quot;district&quot;"/>
+<assertEquals actual="attrValue" expected="&quot;&quot;" id="elementGetElementEmptyAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementgetelementsbytagname.xml b/test/testcases/tests/level1/core/elementgetelementsbytagname.xml
new file mode 100644
index 0000000..19d0348
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementgetelementsbytagname.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementgetelementsbytagname">
+<metadata>
+<title>elementGetElementsByTagName</title>
+<creator>NIST</creator>
+<description>
+The "getElementsByTagName(name)" method returns a list
+of all descendant Elements with the given tag name.
+Test for an empty list.
+
+Create a NodeList of all the descendant elements
+using the string "noMatch" as the tagName.
+The method should return a NodeList whose length is
+"0" since there are not any descendant elements
+that match the given tag name.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--getElementsByTagName-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<assertSize collection="elementList" size="5" id="elementGetElementsByTagNameAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementgetelementsbytagnameaccessnodelist.xml b/test/testcases/tests/level1/core/elementgetelementsbytagnameaccessnodelist.xml
new file mode 100644
index 0000000..ec88004
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementgetelementsbytagnameaccessnodelist.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementgetelementsbytagnameaccessnodelist">
+<metadata>
+<title>elementgetelementsbytagnameaccessnodelist</title>
+<creator>NIST</creator>
+<description>
+Element.getElementsByTagName("employee") should return a NodeList whose length is
+"5" in the order the children were encountered.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--getElementsByTagName-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="childValue" type="DOMString"/>
+<var name="childType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="3" var="testEmployee"/>
+<!-- first element might be text -->
+<firstChild interface="Node" obj="testEmployee" var="child"/>
+<nodeType var="childType" obj="child"/>
+<if><equals actual="childType" expected="3" ignoreCase="false"/>
+<nextSibling var="child" obj="child" interface="Node"/>
+</if>
+<nodeName var="childName" obj="child" interface="Node"/>
+<assertEquals actual="childName" expected='"employeeId"' id="nodename" ignoreCase="false"/>
+<firstChild var="child" obj="child" interface="Node"/>
+<nodeValue var="childValue" obj="child"/>
+<assertEquals actual="childValue" expected='"EMP0004"' ignoreCase="false" id="emp0004"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementgetelementsbytagnamenomatch.xml b/test/testcases/tests/level1/core/elementgetelementsbytagnamenomatch.xml
new file mode 100644
index 0000000..ffc6aa7
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementgetelementsbytagnamenomatch.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementgetelementsbytagnamenomatch">
+<metadata>
+<title>elementGetElementsByTagName</title>
+<creator>NIST</creator>
+<description>
+The "getElementsByTagName(name)" method returns a list
+of all descendant Elements with the given tag name.
+
+Create a NodeList of all the descendant elements
+using the string "employee" as the tagName.
+The method should return a NodeList whose length is
+"5".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--getElementsByTagName-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;noMatch&quot;" var="elementList"/>
+<assertSize collection="elementList" size="0" id="elementGetElementsByTagNameNoMatchNoMatchAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementgetelementsbytagnamespecialvalue.xml b/test/testcases/tests/level1/core/elementgetelementsbytagnamespecialvalue.xml
new file mode 100644
index 0000000..56930f8
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementgetelementsbytagnamespecialvalue.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementgetelementsbytagnamespecialvalue">
+<metadata>
+<title>elementGetElementsByTagNamesSpecialValue</title>
+<creator>NIST</creator>
+<description>
+The "getElementsByTagName(name)" method may use the
+special value "*" to match all tags in the element
+tree.
+
+Create a NodeList of all the descendant elements
+of the last employee by using the special value "*".
+The method should return all the descendant children(6)
+in the order the children were encountered.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="lastEmployee" type="Element"/>
+<var name="lastempList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>"employeeId"</member>
+<member>"name"</member>
+<member>"position"</member>
+<member>"salary"</member>
+<member>"gender"</member>
+<member>"address"</member>
+</var>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="4" var="lastEmployee"/>
+<getElementsByTagName interface="Element" obj="lastEmployee" var="lastempList" tagname="&quot;*&quot;"/>
+<for-each collection="lastempList" member="child">
+<nodeName obj="child" var="childName"/>
+<append collection="result" item="childName"/>
+</for-each>
+<assertEquals actual="result" expected="expectedResult" id="tagNames" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementgettagname.xml b/test/testcases/tests/level1/core/elementgettagname.xml
new file mode 100644
index 0000000..7b27819
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementgettagname.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementgettagname">
+<metadata>
+<title>elementGetTagName</title>
+<creator>NIST</creator>
+<description>
+
+ The "getTagName()" method returns the
+
+ tagName of an element.
+
+
+
+ Invoke the "getTagName()" method one the
+
+ root node. The value returned should be "staff".
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-104682815"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=251"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="root" type="Element"/>
+<var name="tagname" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<tagName obj="root" var="tagname"/>
+<if><contentType type="image/svg+xml"/>
+<assertEquals actual="tagname" expected='"svg"' id="svgTagName" ignoreCase="false"/>
+<else>
+<assertEquals actual="tagname" expected='"staff"' id="elementGetTagNameAssert" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/elementinuseattributeerr.xml b/test/testcases/tests/level1/core/elementinuseattributeerr.xml
new file mode 100644
index 0000000..f167279
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementinuseattributeerr.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementinuseattributeerr">
+<metadata>
+<title>elementInUseAttributeErr</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNode(newAttr)" method raises an
+ "INUSE_ATTRIBUTE_ERR DOMException if the "newAttr"
+ is already an attribute of another element.
+
+ Retrieve the last child of the second employee and append
+ a newly created element. The "createAttribute(name)"
+ and "setAttributeNode(newAttr)" methods are invoked
+ to create and add a new attribute to the newly created
+ Element. The "setAttributeNode(newAttr)" method is
+ once again called to add the new attribute causing an
+ exception to be raised since the attribute is already
+ an attribute of another element.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-887236154')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newAttribute" type="Attr"/>
+<var name="addressElementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<var name="newElement" type="Element"/>
+<var name="appendedChild" type="Node"/>
+<var name="setAttr1" type="Attr"/>
+<var name="setAttr2" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"address"' var="addressElementList"/>
+<item interface="NodeList" obj="addressElementList" index="1" var="testAddress"/>
+<createElement obj="doc" var="newElement" tagName='"newElement"'/>
+<appendChild var="appendedChild" obj="testAddress" newChild="newElement"/>
+<createAttribute obj="doc" var="newAttribute" name='"newAttribute"'/>
+<setAttributeNode var="setAttr1" obj="newElement" newAttr="newAttribute"/>
+<assertDOMException id="throw_INUSE_ATTRIBUTE_ERR">
+ <INUSE_ATTRIBUTE_ERR>
+ <setAttributeNode var="setAttr2" obj="testAddress" newAttr="newAttribute"/>
+ </INUSE_ATTRIBUTE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/elementinvalidcharacterexception.xml b/test/testcases/tests/level1/core/elementinvalidcharacterexception.xml
new file mode 100644
index 0000000..c775c91
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementinvalidcharacterexception.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementinvalidcharacterexception">
+<metadata>
+<title>elementInvalidCharacterException</title>
+<creator>NIST</creator>
+<description>
+
+ The "setAttribute(name,value)" method raises an
+
+ "INVALID_CHARACTER_ERR DOMException if the specified
+
+ name contains an invalid character.
+
+
+
+ Retrieve the last child of the first employee and
+
+ call its "setAttribute(name,value)" method with
+
+ "name" containing an invalid character.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-F68F082')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddress"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<setAttribute obj="testAddress" name="&quot;invalid^Name&quot;" value="&quot;value&quot;"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/elementnormalize.xml b/test/testcases/tests/level1/core/elementnormalize.xml
new file mode 100644
index 0000000..bc85fff
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementnormalize.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementnormalize">
+<metadata>
+<title>elementNormalize</title>
+<creator>NIST</creator>
+<description>
+ The "normalize()" method puts all the nodes in the full
+ depth of the sub-tree underneath this element into a
+ "normal" form.
+
+ Retrieve the third employee and access its second child.
+ This child contains a block of text that is spread
+ across multiple lines. The content of the "name" child
+ should be parsed and treated as a single Text node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-162CF083"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="root" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="testName" type="Element"/>
+<var name="firstChild" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<documentElement obj="doc" var="root"/>
+<normalize obj="root"/>
+<getElementsByTagName interface="Element" obj="root" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testName"/>
+<firstChild interface="Node" obj="testName" var="firstChild"/>
+<nodeValue obj="firstChild" var="childValue"/>
+<assertEquals actual="childValue" expected="&quot;Roger\n Jones&quot;" id="elementNormalizeAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementnotfounderr.xml b/test/testcases/tests/level1/core/elementnotfounderr.xml
new file mode 100644
index 0000000..792c3f1
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementnotfounderr.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementnotfounderr">
+<metadata>
+<title>elementNotFoundErr</title>
+<creator>NIST</creator>
+<description>
+ The "removeAttributeNode(oldAttr)" method raises a
+ NOT_FOUND_ERR DOMException if the "oldAttr" attribute
+ is not an attribute of the element.
+
+ Retrieve the last employee and attempt to remove
+ a non existing attribute node. This should cause the
+ intended exception to be raised. This test makes use
+ of the "createAttribute(name)" method from the Document
+ interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-D589198')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="oldAttribute" type="Attr"/>
+<var name="addressElementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<var name="attrAddress" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="addressElementList"/>
+<item interface="NodeList" obj="addressElementList" index="4" var="testAddress"/>
+<createAttribute obj="doc" var="oldAttribute" name="&quot;oldAttribute&quot;"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeAttributeNode obj="testAddress" oldAttr="oldAttribute" var="attrAddress"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/elementremoveattribute.xml b/test/testcases/tests/level1/core/elementremoveattribute.xml
new file mode 100644
index 0000000..b90c23c
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementremoveattribute.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementremoveattribute">
+<metadata>
+<title>elementRemoveAttribute</title>
+<creator>NIST</creator>
+<description>
+ The "removeAttribute(name)" removes an attribute by name.
+ If the attribute has a default value, it is immediately
+ replaced.
+
+ Retrieve the attribute named "street" from the last child
+ of the fourth employee, then remove the "street"
+ attribute by invoking the "removeAttribute(name)" method.
+ The "street" attribute has a default value defined in the
+ DTD file, that value should immediately replace the old
+ value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D6AC0F9"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"address"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="3" var="testEmployee"/>
+<removeAttribute obj="testEmployee" name='"street"'/>
+<getAttribute obj="testEmployee" var="attrValue" name='"street"'/>
+<assertEquals actual="attrValue" expected='"Yes"' id="streetYes" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementremoveattributeaftercreate.xml b/test/testcases/tests/level1/core/elementremoveattributeaftercreate.xml
new file mode 100644
index 0000000..35b8640
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementremoveattributeaftercreate.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementremoveattributeaftercreate">
+<metadata>
+<title>elementRemoveAttributeAfterCreate</title>
+<creator>NIST</creator>
+<description>
+ The "removeAttributeNode(oldAttr)" method removes the
+ specified attribute.
+
+ Retrieve the last child of the third employee, add a
+ new "district" node to it and then try to remove it.
+ To verify that the node was removed use the
+ "getNamedItem(name)" method from the NamedNodeMap
+ interface. It also uses the "getAttributes()" method
+ from the Node interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--removeAttributeNode-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="newAttribute" type="Attr"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="districtAttr" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<createAttribute obj="doc" var="newAttribute" name="&quot;district&quot;"/>
+<setAttributeNode obj="testEmployee" var="districtAttr" newAttr="newAttribute"/>
+<removeAttributeNode obj="testEmployee" var="districtAttr" oldAttr="newAttribute"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItem obj="attributes" var="districtAttr" name="&quot;district&quot;"/>
+<assertNull actual="districtAttr" id="elementRemoveAttributeAfterCreateAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementremoveattributenode.xml b/test/testcases/tests/level1/core/elementremoveattributenode.xml
new file mode 100644
index 0000000..30de112
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementremoveattributenode.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementremoveattributenode">
+<metadata>
+<title>elementRemoveAttributeNode</title>
+<creator>NIST</creator>
+<description>
+ The "removeAttributeNode(oldAttr)" method returns the
+ node that was removed.
+
+ Retrieve the last child of the third employee and
+ remove its "street" Attr node. The method should
+ return the old attribute node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="streetAttr" type="Attr"/>
+<var name="removedAttr" type="Attr"/>
+<var name="removedValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<getAttributeNode obj="testEmployee" var="streetAttr" name="&quot;street&quot;"/>
+<removeAttributeNode obj="testEmployee" var="removedAttr" oldAttr="streetAttr"/>
+<value interface="Attr" obj="removedAttr" var="removedValue"/>
+<assertEquals actual="removedValue" expected="&quot;No&quot;" id="elementRemoveAttributeNodeAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementremoveattributenodenomodificationallowederr.xml b/test/testcases/tests/level1/core/elementremoveattributenodenomodificationallowederr.xml
new file mode 100644
index 0000000..b8ed52a
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementremoveattributenodenomodificationallowederr.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementremoveattributenodenomodificationallowederr">
+<metadata>
+<title>elementRemoveAttributeNodeNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "removeAttributeNode(oldAttr)" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Try to remove the "domestic" attribute
+ from the entity reference by executing the "removeAttributeNode(oldAttr)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-D589198')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="genList" type="NodeList"/>
+<var name="gen" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="gList" type="NodeList"/>
+<var name="genElement" type="Element"/>
+<var name="attrList" type="NamedNodeMap"/>
+<var name="attrNode" type="Attr"/>
+<var name="removedAttr" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<childNodes obj="gender" var="genList"/>
+<item interface="NodeList" obj="genList" var="gen" index="0"/>
+<assertNotNull actual="gen" id="genNotNull"/>
+<nodeType var="nodeType" obj="gen"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="gen" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="gen" id="createdEntRefNotNull"/>
+</if>
+<childNodes obj="gen" var="gList"/>
+<item interface="NodeList" obj="gList" var="genElement" index="0"/>
+<assertNotNull actual="genElement" id="genElementNotNull"/>
+<attributes obj="genElement" var="attrList"/>
+<getNamedItem obj="attrList" var="attrNode" name='"domestic"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<removeAttributeNode var="removedAttr" obj="genElement" oldAttr="attrNode"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/elementremoveattributenodenomodificationallowederrEE.xml b/test/testcases/tests/level1/core/elementremoveattributenodenomodificationallowederrEE.xml
new file mode 100644
index 0000000..f8d516e
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementremoveattributenodenomodificationallowederrEE.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementremoveattributenodenomodificationallowederrEE">
+<metadata>
+<title>elementRemoveAttributeNodeNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeAttributeNode(oldAttr)" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Create an entity reference and add it to the children of the THIRD "gender" element.
+ Try to remove the "domestic" attribute from the entity
+ reference by executing the "removeAttributeNode(oldAttr)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-21</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-D589198')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/elementremoveattributenodenomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entElement" type="Element"/>
+<var name="attrList" type="NamedNodeMap"/>
+<var name="attrNode" type="Attr"/>
+<var name="nodeType" type="int"/>
+<var name="removedAttr" type="Attr"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<createEntityReference var="entRef" obj="doc" name="&quot;ent4&quot;"/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<appendChild obj="gender" newChild="entRef" var="appendedChild"/>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<attributes obj="entElement" var="attrList"/>
+<getNamedItem obj="attrList" var="attrNode" name='"domestic"'/>
+<assertNotNull actual="attrNode" id="attrNodeNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<removeAttributeNode var="removedAttr" obj="entElement" oldAttr="attrNode"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/elementremoveattributenomodificationallowederr.xml b/test/testcases/tests/level1/core/elementremoveattributenomodificationallowederr.xml
new file mode 100644
index 0000000..4aae1ae
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementremoveattributenomodificationallowederr.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementremoveattributenomodificationallowederr">
+<metadata>
+<title>elementRemoveAttributeNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "removeAttribute(name)" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Try to remove the "domestic" attribute
+ from the entity reference by executing the "removeAttribute(name)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D6AC0F9"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6D6AC0F9')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D6AC0F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="genList" type="NodeList"/>
+<var name="gen" type="Node"/>
+<var name="gList" type="NodeList"/>
+<var name="nodeType" type="int"/>
+<var name="genElement" type="Element"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<childNodes obj="gender" var="genList"/>
+<item interface="NodeList" obj="genList" var="gen" index="0"/>
+<assertNotNull actual="gen" id="genNotNull"/>
+<nodeType var="nodeType" obj="gen"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="gen" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="gen" id="createdEntRefNotNull"/>
+</if>
+<childNodes obj="gen" var="gList"/>
+<item interface="NodeList" obj="gList" var="genElement" index="0"/>
+<assertNotNull actual="genElement" id="genElementNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<removeAttribute obj="genElement" name='"domestic"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/elementremoveattributenomodificationallowederrEE.xml b/test/testcases/tests/level1/core/elementremoveattributenomodificationallowederrEE.xml
new file mode 100644
index 0000000..79248df
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementremoveattributenomodificationallowederrEE.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementremoveattributenomodificationallowederrEE">
+<metadata>
+<title>elementRemoveAttributeNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeAttribute(name)" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Create an reference the entity ent4 and add it to the THIRD "gender" element.
+ Try to remove the "domestic" attribute from the entity reference by executing the "removeAttribute(name)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-21</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D6AC0F9"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6D6AC0F9')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D6AC0F9"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/elementremoveattributenomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entElement" type="Element"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname='"gender"'/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<createEntityReference obj="doc" var="entRef" name='"ent4"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<appendChild obj="gender" newChild="entRef" var="appendedChild"/>
+<firstChild obj="entRef" var="entElement" interface="Node"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<removeAttribute obj="entElement" name='"domestic"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/elementremoveattributerestoredefaultvalue.xml b/test/testcases/tests/level1/core/elementremoveattributerestoredefaultvalue.xml
new file mode 100644
index 0000000..b6e096e
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementremoveattributerestoredefaultvalue.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementremoveattributerestoredefaultvalue">
+<metadata>
+<title>elementRemoveAttributeRestoreDefaultValue</title>
+<creator>NIST</creator>
+<description>
+ The "removeAttributeNode(oldAttr)" method removes the
+ specified attribute node and restores any default values.
+
+ Retrieve the last child of the third employeed and
+ remove its "street" Attr node. Since this node has a
+ default value defined in the DTD file, that default
+ should immediately be the new value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--removeAttributeNode-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="streetAttr" type="Attr"/>
+<var name="attribute" type="DOMString"/>
+<var name="removedAttr" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<getAttributeNode obj="testEmployee" var="streetAttr" name="&quot;street&quot;"/>
+<removeAttributeNode var="removedAttr" obj="testEmployee" oldAttr="streetAttr"/>
+<getAttribute obj="testEmployee" var="attribute" name="&quot;street&quot;"/>
+<assertEquals actual="attribute" expected="&quot;Yes&quot;" id="streetYes" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementreplaceattributewithself.xml b/test/testcases/tests/level1/core/elementreplaceattributewithself.xml
new file mode 100644
index 0000000..fc4b562
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementreplaceattributewithself.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementreplaceattributewithself">
+<metadata>
+<title>elementReplaceAttributeWithSelf</title>
+<creator>Curt Arnold</creator>
+<description>
+This test calls setAttributeNode to replace an attribute with itself.
+Since the node is not an attribute of another Element, it would
+be inappropriate to throw an INUSE_ATTRIBUTE_ERR.
+
+This test was derived from elementinuserattributeerr which
+inadvertanly made this test.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2001-10-31</date>
+<!--setAttributeNode-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="streetAttr" type="Attr"/>
+<var name="replacedAttr" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"address"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<getAttributeNode var="streetAttr" obj="testEmployee" name='"street"'/>
+<setAttributeNode obj="testEmployee" var="replacedAttr" newAttr="streetAttr"/>
+<assertSame actual="replacedAttr" expected="streetAttr" id="replacedAttr"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementreplaceexistingattribute.xml b/test/testcases/tests/level1/core/elementreplaceexistingattribute.xml
new file mode 100644
index 0000000..76aa780
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementreplaceexistingattribute.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementreplaceexistingattribute">
+<metadata>
+<title>elementReplaceExistingAttribute</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNode(newAttr)" method adds a new
+ attribute to the Element. If the "newAttr" Attr node is
+ already present in this element, it should replace the
+ existing one.
+
+ Retrieve the last child of the third employee and add a
+ new attribute node by invoking the "setAttributeNode(new
+ Attr)" method. The new attribute node to be added is
+ "street", which is already present in this element. The
+ method should replace the existing Attr node with the
+ new one. This test uses the "createAttribute(name)"
+ method from the Document interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="newAttribute" type="Attr"/>
+<var name="name" type="DOMString"/>
+<var name="setAttr" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<createAttribute obj="doc" var="newAttribute" name="&quot;street&quot;"/>
+<setAttributeNode var="setAttr" obj="testEmployee" newAttr="newAttribute"/>
+<getAttribute obj="testEmployee" var="name" name="&quot;street&quot;"/>
+<assertEquals actual="name" expected="&quot;&quot;" id="elementReplaceExistingAttributeAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementreplaceexistingattributegevalue.xml b/test/testcases/tests/level1/core/elementreplaceexistingattributegevalue.xml
new file mode 100644
index 0000000..4ce96c1
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementreplaceexistingattributegevalue.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementreplaceexistingattributegevalue">
+<metadata>
+<title>elementReplaceExistingAttributeGeValue</title>
+<creator>NIST</creator>
+<description>
+If the "setAttributeNode(newAttr)" method replaces an
+existing Attr node with the same name, then it should
+return the previously existing Attr node.
+
+Retrieve the last child of the third employee and add a
+new attribute node. The new attribute node is "street",
+which is already present in this Element. The method
+should return the existing Attr node(old "street" Attr).
+This test uses the "createAttribute(name)" method
+from the Document interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--setAttributeNode-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="newAttribute" type="Attr"/>
+<var name="streetAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<createAttribute obj="doc" var="newAttribute" name="&quot;street&quot;"/>
+<setAttributeNode obj="testEmployee" var="streetAttr" newAttr="newAttribute"/>
+<value interface="Attr" obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected="&quot;No&quot;" id="streetNo" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementretrieveallattributes.xml b/test/testcases/tests/level1/core/elementretrieveallattributes.xml
new file mode 100644
index 0000000..ce849d4
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementretrieveallattributes.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementretrieveallattributes">
+<metadata>
+<title>elementRetrieveAllAttributes</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributes()" method(Node Interface) may
+ be used to retrieve the set of all attributes of an
+ element.
+
+ Create a list of all the attributes of the last child
+ of the first employee by using the "getAttributes()"
+ method. Examine the length of the attribute list.
+ This test uses the "getLength()" method from the
+ NameNodeMap interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="addressList"/>
+<item interface="NodeList" obj="addressList" index="0" var="testAddress"/>
+<attributes obj="testAddress" var="attributes"/>
+<assertSize collection="attributes" size="2" id="elementRetrieveAllAttributesAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementretrieveattrvalue.xml b/test/testcases/tests/level1/core/elementretrieveattrvalue.xml
new file mode 100644
index 0000000..41e62e3
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementretrieveattrvalue.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementretrieveattrvalue">
+<metadata>
+<title>elementRetrieveAttrValue</title>
+<creator>NIST</creator>
+<description>
+ The "getAttribute(name)" method returns an attribute
+ value by name.
+
+ Retrieve the second address element, then
+ invoke the 'getAttribute("street")' method. This should
+ return the value of the attribute("No").
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--getAttribute-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-666EE0F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testAddress"/>
+<getAttribute obj="testAddress" var="attrValue" name="&quot;street&quot;"/>
+<assertEquals actual="attrValue" expected="&quot;No&quot;" id="attrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementretrievetagname.xml b/test/testcases/tests/level1/core/elementretrievetagname.xml
new file mode 100644
index 0000000..85bdf1e
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementretrievetagname.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementretrievetagname">
+<metadata>
+<title>elementRetrieveTagName</title>
+<creator>NIST</creator>
+<description>
+ The "getElementsByTagName()" method returns a NodeList
+ of all descendant elements with a given tagName.
+
+ Invoke the "getElementsByTagName()" method and create
+ a NodeList of "position" elements. Retrieve the second
+ "position" element in the list and return the NodeName.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--nodeName attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<!--tagName attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-104682815"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="name" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;position&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="testEmployee"/>
+<nodeName obj="testEmployee" var="name"/>
+<assertEquals actual="name" expected="&quot;position&quot;" id="nodename" ignoreCase="false"/>
+<tagName obj="testEmployee" var="name"/>
+<assertEquals actual="name" expected="&quot;position&quot;" id="tagname" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementsetattributenodenomodificationallowederr.xml b/test/testcases/tests/level1/core/elementsetattributenodenomodificationallowederr.xml
new file mode 100644
index 0000000..198c178
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementsetattributenodenomodificationallowederr.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementsetattributenodenomodificationallowederr">
+<metadata>
+<title>elementSetAttributeNodeNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNode(newAttr)" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Try to remove the "domestic" attribute
+ from the entity reference by executing the "setAttributeNode(newAttr)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-887236154')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="entRef" type="Node"/>
+<var name="entElement" type="Element"/>
+<var name="newAttr" type="Attr"/>
+<var name="nodeType" type="int"/>
+<var name="badAttr" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<firstChild interface="Node" var="entRef" obj="gender"/>
+<assertNotNull actual="entRef" id="entRefNotNull"/>
+<nodeType var="nodeType" obj="entRef"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+</if>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<createAttribute obj="doc" var="newAttr" name='"newAttr"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setAttributeNode var="badAttr" obj="entElement" newAttr="newAttr"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/elementsetattributenodenomodificationallowederrEE.xml b/test/testcases/tests/level1/core/elementsetattributenodenomodificationallowederrEE.xml
new file mode 100644
index 0000000..a540c72
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementsetattributenodenomodificationallowederrEE.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementsetattributenodenomodificationallowederrEE">
+<metadata>
+<title>elementsetattributenodenomodificationallowederree</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setAttributeNode(newAttr)" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Create an entity reference and add to the THIRD "gender" element. The elements
+ content is an entity reference. Try to remove the "domestic" attribute
+ from the entity reference by executing the "setAttributeNode(newAttr)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-21</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-887236154')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/elementsetattributenodenomodificationallowederr.xml"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entElement" type="Element"/>
+<var name="newAttr" type="Attr"/>
+<var name="badAttr" type="Attr"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<appendChild obj="gender" newChild="entRef" var="appendedChild"/>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<createAttribute obj="doc" var="newAttr" name='"newAttr"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setAttributeNode var="badAttr" obj="entElement" newAttr="newAttr"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/elementsetattributenodenull.xml b/test/testcases/tests/level1/core/elementsetattributenodenull.xml
new file mode 100644
index 0000000..7608454
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementsetattributenodenull.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementsetattributenodenull">
+<metadata>
+<title>elementSetAttributeNodeNull</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNode(newAttr)" method returns the
+ null value if no previously existing Attr node with the
+ same name was replaced.
+
+ Retrieve the last child of the third employee and add a
+ new attribute to it. The new attribute node added is
+ "district", which is not part of this Element. The
+ method should return the null value.
+ This test uses the "createAttribute(name)"
+ method from the Document interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="newAttribute" type="Attr"/>
+<var name="districtAttr" type="Attr"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<createAttribute obj="doc" var="newAttribute" name="&quot;district&quot;"/>
+<setAttributeNode obj="testEmployee" var="districtAttr" newAttr="newAttribute"/>
+<assertNull actual="districtAttr" id="elementSetAttributeNodeNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/elementsetattributenomodificationallowederr.xml b/test/testcases/tests/level1/core/elementsetattributenomodificationallowederr.xml
new file mode 100644
index 0000000..978c2ec
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementsetattributenomodificationallowederr.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementsetattributenomodificationallowederr">
+<metadata>
+<title>elementSetAttributeNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "setAttribute(name,value)" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Try to remove the "domestic" attribute
+ from the entity reference by executing the "setAttribute(name,value)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-F68F082')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entElement" type="Element"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<firstChild interface="Node" var="entRef" obj="gender"/>
+<assertNotNull actual="entRef" id="entRefNotNull"/>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setAttribute obj="entElement" name='"newAttr"' value='"newValue"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/elementsetattributenomodificationallowederrEE.xml b/test/testcases/tests/level1/core/elementsetattributenomodificationallowederrEE.xml
new file mode 100644
index 0000000..1821d04
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementsetattributenomodificationallowederrEE.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementsetattributenomodificationallowederrEE">
+<metadata>
+<title>elementSetAttributeNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setAttribute(name,value)" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Add an ent4 reference to the children of the THIRD "gender" element.
+ Try to remove the "domestic" attribute
+ from the entity reference by executing the "setAttribute(name,value)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-21</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-F68F082')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/elementsetattributenomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entElement" type="Element"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<createEntityReference var="entRef" obj="doc" name="&quot;ent4&quot;"/>
+<appendChild obj="gender" newChild="entRef" var="appendedChild"/>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setAttribute obj="entElement" name="&quot;newAttr&quot;" value="&quot;newValue&quot;"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/elementwrongdocumenterr.xml b/test/testcases/tests/level1/core/elementwrongdocumenterr.xml
new file mode 100644
index 0000000..531c512
--- /dev/null
+++ b/test/testcases/tests/level1/core/elementwrongdocumenterr.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="elementwrongdocumenterr">
+<metadata>
+<title>elementWrongDocumentErr</title>
+<creator>NIST</creator>
+<description>
+
+ The "setAttributeNode(newAttr)" method raises an
+
+ "WRONG_DOCUMENT_ERR DOMException if the "newAttr"
+
+ was created from a different document than the one that
+
+ created this document.
+
+
+
+ Retrieve the last employee and attempt to set a new
+
+ attribute node for its "employee" element. The new
+
+ attribute was created from a document other than the
+
+ one that created this element, therefore a
+
+ WRONG_DOCUMENT_ERR DOMException should be raised.
+
+ This test uses the "createAttribute(newAttr)" method
+
+ from the Document interface.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-887236154')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="newAttribute" type="Attr"/>
+<var name="addressElementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<var name="attrAddress" type="Attr"/>
+<load var="doc1" href="staff" willBeModified="true"/>
+<load var="doc2" href="staff" willBeModified="false"/>
+<createAttribute obj="doc2" var="newAttribute" name="&quot;newAttribute&quot;"/>
+<getElementsByTagName interface="Document" obj="doc1" tagname="&quot;address&quot;" var="addressElementList"/>
+<item interface="NodeList" obj="addressElementList" index="4" var="testAddress"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<setAttributeNode obj="testAddress" newAttr="newAttribute" var="attrAddress"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/entitygetentityname.xml b/test/testcases/tests/level1/core/entitygetentityname.xml
new file mode 100644
index 0000000..2aa4be3
--- /dev/null
+++ b/test/testcases/tests/level1/core/entitygetentityname.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="entitygetentityname">
+<metadata>
+<title>entityGetEntityName</title>
+<creator>NIST</creator>
+<description>
+ The nodeName attribute that is inherited from Node
+ contains the name of the entity.
+
+ Retrieve the entity named "ent1" and access its name by
+ invoking the "getNodeName()" method inherited from
+ the Node interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--Entity interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-527DCFF2"/>
+<!--nodeName attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entityList" type="NamedNodeMap"/>
+<var name="entityNode" type="Entity"/>
+<var name="entityName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="entityList"/>
+<assertNotNull actual="entityList" id="entitiesNotNull"/>
+<getNamedItem obj="entityList" var="entityNode" name="&quot;ent1&quot;"/>
+<nodeName obj="entityNode" var="entityName"/>
+<assertEquals actual="entityName" expected="&quot;ent1&quot;" id="entityGetEntityNameAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/entitygetpublicid.xml b/test/testcases/tests/level1/core/entitygetpublicid.xml
new file mode 100644
index 0000000..645a781
--- /dev/null
+++ b/test/testcases/tests/level1/core/entitygetpublicid.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="entitygetpublicid">
+<metadata>
+<title>entityGetPublicId</title>
+<creator>NIST</creator>
+<description>
+ The "getPublicId()" method of an Entity node contains
+ the public identifier associated with the entity, if
+ one was specified.
+
+ Retrieve the entity named "ent5" and access its
+ public identifier. The string "entityURI" should be
+ returned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!-- Entity.publicId -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D7303025"/>
+<!-- Entity.notationName -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6ABAEB38"/>
+<!-- Entity.systemId -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D7C29F3E"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entityList" type="NamedNodeMap"/>
+<var name="entityNode" type="Entity"/>
+<var name="publicId" type="DOMString"/>
+<var name="systemId" type="DOMString"/>
+<var name="notation" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="entityList"/>
+<assertNotNull actual="entityList" id="entitiesNotNull"/>
+<getNamedItem obj="entityList" var="entityNode" name='"ent5"'/>
+<publicId interface="Entity" obj="entityNode" var="publicId"/>
+<assertEquals actual="publicId" expected='"entityURI"' id="publicId" ignoreCase="false"/>
+<systemId interface="Entity" obj="entityNode" var="systemId"/>
+<assertURIEquals actual="systemId" file='"entityFile"' id="systemId"/>
+<notationName interface="Entity" obj="entityNode" var="notation"/>
+<assertEquals actual="notation" expected='"notation1"' id="notation" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/entitygetpublicidnull.xml b/test/testcases/tests/level1/core/entitygetpublicidnull.xml
new file mode 100644
index 0000000..172ba80
--- /dev/null
+++ b/test/testcases/tests/level1/core/entitygetpublicidnull.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="entitygetpublicidnull">
+<metadata>
+<title>entityGetPublicIdNull</title>
+<creator>NIST</creator>
+<description>
+ The "getPublicId()" method of an Entity node contains
+ the public identifier associated with the entity, if
+ one was not specified a null value should be returned.
+
+ Retrieve the entity named "ent1" and access its
+ public identifier. Since a public identifier was not
+ specified for this entity, the "getPublicId()" method
+ should return null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D7303025"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entityList" type="NamedNodeMap"/>
+<var name="entityNode" type="Entity"/>
+<var name="publicId" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="entityList"/>
+<assertNotNull actual="entityList" id="entitiesNotNull"/>
+<getNamedItem obj="entityList" var="entityNode" name='"ent1"'/>
+<publicId interface="Entity" obj="entityNode" var="publicId"/>
+<assertNull actual="publicId" id="entityGetPublicIdNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/files/.cvsignore b/test/testcases/tests/level1/core/files/.cvsignore
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/.cvsignore
diff --git a/test/testcases/tests/level1/core/files/CVS/Entries b/test/testcases/tests/level1/core/files/CVS/Entries
new file mode 100644
index 0000000..4398a4d
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/CVS/Entries
@@ -0,0 +1,16 @@
+/.cvsignore/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodtdstaff.html/1.3/Fri Apr 3 02:48:03 2009//
+/hc_nodtdstaff.svg/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodtdstaff.xhtml/1.2/Fri Apr 3 02:48:03 2009//
+/hc_nodtdstaff.xml/1.3/Fri Apr 3 02:48:03 2009//
+/hc_staff.html/1.8/Fri Apr 3 02:48:03 2009//
+/hc_staff.svg/1.5/Fri Apr 3 02:48:03 2009//
+/hc_staff.xhtml/1.7/Fri Apr 3 02:48:03 2009//
+/hc_staff.xml/1.9/Fri Apr 3 02:48:03 2009//
+/staff.dtd/1.2/Fri Apr 3 02:48:03 2009//
+/staff.svg/1.3/Fri Apr 3 02:48:03 2009//
+/staff.xml/1.2/Fri Apr 3 02:48:03 2009//
+/svgtest.js/1.2/Fri Apr 3 02:48:03 2009/-kb/
+/svgunit.js/1.2/Fri Apr 3 02:48:03 2009/-kb/
+/xhtml1-strict.dtd/1.5/Fri Apr 3 02:48:03 2009/-kb/
+D
diff --git a/test/testcases/tests/level1/core/files/CVS/Repository b/test/testcases/tests/level1/core/files/CVS/Repository
new file mode 100644
index 0000000..e9c06be
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level1/core/files
diff --git a/test/testcases/tests/level1/core/files/CVS/Root b/test/testcases/tests/level1/core/files/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level1/core/files/CVS/Template b/test/testcases/tests/level1/core/files/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/CVS/Template
diff --git a/test/testcases/tests/level1/core/files/hc_nodtdstaff.html b/test/testcases/tests/level1/core/files/hc_nodtdstaff.html
new file mode 100644
index 0000000..f98d0be
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/hc_nodtdstaff.html
@@ -0,0 +1,10 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_nodtdstaff</title></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level1/core/files/hc_nodtdstaff.svg b/test/testcases/tests/level1/core/files/hc_nodtdstaff.svg
new file mode 100644
index 0000000..89f26f6
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/hc_nodtdstaff.svg
@@ -0,0 +1,10 @@
+<svg xmlns='http://www.w3.org/2000/svg'><rect x="0" y="0" width="100" height="100"/><head xmlns='http://www.w3.org/1999/xhtml'><title>hc_nodtdstaff</title></head><body xmlns='http://www.w3.org/1999/xhtml'>
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+</body></svg>
diff --git a/test/testcases/tests/level1/core/files/hc_nodtdstaff.xhtml b/test/testcases/tests/level1/core/files/hc_nodtdstaff.xhtml
new file mode 100644
index 0000000..8a5d8a8
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/hc_nodtdstaff.xhtml
@@ -0,0 +1,10 @@
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>hc_nodtdstaff</title></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level1/core/files/hc_nodtdstaff.xml b/test/testcases/tests/level1/core/files/hc_nodtdstaff.xml
new file mode 100644
index 0000000..85c0693
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/hc_nodtdstaff.xml
@@ -0,0 +1,10 @@
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_nodtdstaff</title></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level1/core/files/hc_staff.html b/test/testcases/tests/level1/core/files/hc_staff.html
new file mode 100644
index 0000000..9acf750
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/hc_staff.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="svgunit.js"></script><script charset="UTF-8" type="text/javascript" src="svgtest.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level1/core/files/hc_staff.svg b/test/testcases/tests/level1/core/files/hc_staff.svg
new file mode 100644
index 0000000..cd0cc47
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/hc_staff.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST acronym dir CDATA "ltr">
+ <!ATTLIST head xmlns CDATA #IMPLIED>
+ <!ATTLIST body xmlns CDATA #IMPLIED>
+ <!ELEMENT svg (rect, script, head, body)>
+ <!ATTLIST svg xmlns CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #IMPLIED
+ y CDATA #IMPLIED
+ width CDATA #IMPLIED
+ height CDATA #IMPLIED>
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<!-- This is comment number 1.-->
+<svg xmlns='http://www.w3.org/2000/svg'><rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script><head xmlns='http://www.w3.org/1999/xhtml'><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title></head><body xmlns='http://www.w3.org/1999/xhtml'>
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></svg>
diff --git a/test/testcases/tests/level1/core/files/hc_staff.xhtml b/test/testcases/tests/level1/core/files/hc_staff.xhtml
new file mode 100644
index 0000000..16d4eb0
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/hc_staff.xhtml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST acronym dir CDATA "ltr">
+]>
+<!-- This is comment number 1.-->
+<html xmlns='http://www.w3.org/1999/xhtml'><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title><script type="text/javascript" src="svgunit.js"/><script charset="UTF-8" type="text/javascript" src="svgtest.js"/><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level1/core/files/hc_staff.xml b/test/testcases/tests/level1/core/files/hc_staff.xml
new file mode 100644
index 0000000..2df9a74
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/hc_staff.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST acronym dir CDATA "ltr">
+]>
+<!-- This is comment number 1.-->
+<html xmlns='http://www.w3.org/1999/xhtml'><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title><script type="text/javascript" src="svgunit.js"/><script charset="UTF-8" type="text/javascript" src="svgtest.js"/><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level1/core/files/staff.dtd b/test/testcases/tests/level1/core/files/staff.dtd
new file mode 100644
index 0000000..02a994d
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/staff.dtd
@@ -0,0 +1,17 @@
+<!ELEMENT employeeId (#PCDATA)>
+<!ELEMENT name (#PCDATA)>
+<!ELEMENT position (#PCDATA)>
+<!ELEMENT salary (#PCDATA)>
+<!ELEMENT address (#PCDATA)>
+<!ELEMENT entElement ( #PCDATA ) >
+<!ELEMENT gender ( #PCDATA | entElement )* >
+<!ELEMENT employee (employeeId, name, position, salary, gender, address) >
+<!ELEMENT staff (employee)+>
+<!ATTLIST entElement
+ attr1 CDATA "Attr">
+<!ATTLIST address
+ domestic CDATA #IMPLIED
+ street CDATA "Yes">
+<!ATTLIST entElement
+ domestic CDATA "MALE" >
+
diff --git a/test/testcases/tests/level1/core/files/staff.svg b/test/testcases/tests/level1/core/files/staff.svg
new file mode 100644
index 0000000..77c9b5b
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/staff.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg SYSTEM "staff.dtd" [
+ <!ENTITY ent1 "es">
+ <!ENTITY ent2 "1900 Dallas Road">
+ <!ENTITY ent3 "Texas">
+ <!ENTITY ent4 "<entElement domestic='Yes'>Element data</entElement><?PItarget PIdata?>">
+ <!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+ <!ENTITY ent1 "This entity should be discarded">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST employee xmlns CDATA #IMPLIED>
+ <!ELEMENT svg (rect, script, employee+)>
+ <!ATTLIST svg
+ xmlns CDATA #FIXED "http://www.w3.org/2000/svg"
+ name CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ELEMENT script (#PCDATA)>
+ <!ATTLIST script type CDATA #IMPLIED>
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<!-- This is comment number 1.-->
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgunit;&svgtest;</script>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0002</employeeId>
+ <name>Martha Raynolds<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></name>
+ <position>Secretary</position>
+ <salary>35,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Yes">&ent2; Dallas, &ent3;
+ 98554</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0003</employeeId>
+ <name>Roger
+ Jones</name>
+ <position>Department Manager</position>
+ <salary>100,000</salary>
+ <gender>&ent4;</gender>
+ <address domestic="Yes" street="No">PO Box 27 Irving, texas 98553</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0004</employeeId>
+ <name>Jeny Oconnor</name>
+ <position>Personnel Director</position>
+ <salary>95,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Y&ent1;">27 South Road. Dallas, Texas 98556</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0005</employeeId>
+ <name>Robert Myers</name>
+ <position>Computer Specialist</position>
+ <salary>90,000</salary>
+ <gender>male</gender>
+ <address street="Yes">1821 Nordic. Road, Irving Texas 98558</address>
+ </employee>
+ </svg>
diff --git a/test/testcases/tests/level1/core/files/staff.xml b/test/testcases/tests/level1/core/files/staff.xml
new file mode 100644
index 0000000..f89c510
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/staff.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE staff SYSTEM "staff.dtd" [
+ <!ENTITY ent1 "es">
+ <!ENTITY ent2 "1900 Dallas Road">
+ <!ENTITY ent3 "Texas">
+ <!ENTITY ent4 "<entElement domestic='Yes'>Element data</entElement><?PItarget PIdata?>">
+ <!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+ <!ENTITY ent1 "This entity should be discarded">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+]>
+<!-- This is comment number 1.-->
+<staff>
+ <employee>
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0002</employeeId>
+ <name>Martha Raynolds<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></name>
+ <position>Secretary</position>
+ <salary>35,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Yes">&ent2; Dallas, &ent3;
+ 98554</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0003</employeeId>
+ <name>Roger
+ Jones</name>
+ <position>Department Manager</position>
+ <salary>100,000</salary>
+ <gender>&ent4;</gender>
+ <address domestic="Yes" street="No">PO Box 27 Irving, texas 98553</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0004</employeeId>
+ <name>Jeny Oconnor</name>
+ <position>Personnel Director</position>
+ <salary>95,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Y&ent1;">27 South Road. Dallas, Texas 98556</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0005</employeeId>
+ <name>Robert Myers</name>
+ <position>Computer Specialist</position>
+ <salary>90,000</salary>
+ <gender>male</gender>
+ <address street="Yes">1821 Nordic. Road, Irving Texas 98558</address>
+ </employee>
+ </staff>
diff --git a/test/testcases/tests/level1/core/files/svgtest.js b/test/testcases/tests/level1/core/files/svgtest.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/svgtest.js
diff --git a/test/testcases/tests/level1/core/files/svgunit.js b/test/testcases/tests/level1/core/files/svgunit.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/svgunit.js
diff --git a/test/testcases/tests/level1/core/files/xhtml1-strict.dtd b/test/testcases/tests/level1/core/files/xhtml1-strict.dtd
new file mode 100644
index 0000000..f3d0fba
--- /dev/null
+++ b/test/testcases/tests/level1/core/files/xhtml1-strict.dtd
@@ -0,0 +1,65 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This is a radically simplified DTD for use in the DOM Test Suites
+due to a XML non-conformance of one implementation in processing
+parameter entities. When that non-conformance is resolved,
+this DTD can be replaced by the normal DTD for XHTML.
+
+-->
+
+
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (meta,title,script*)>
+<!ELEMENT meta EMPTY>
+<!ATTLIST meta
+ http-equiv CDATA #IMPLIED
+ content CDATA #IMPLIED>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT body (p*)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|em|strong|code|sup|var|acronym|abbr)*>
+<!ATTLIST p
+ xmlns:dmstc CDATA #IMPLIED
+ xmlns:nm CDATA #IMPLIED
+ xmlns:emp2 CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT em (#PCDATA)>
+<!ELEMENT span (#PCDATA)>
+<!ELEMENT strong (#PCDATA)>
+<!ELEMENT code (#PCDATA)>
+<!ELEMENT sup (#PCDATA)>
+<!ELEMENT var (#PCDATA|span)*>
+<!ELEMENT acronym (#PCDATA)>
+<!ATTLIST acronym
+ title CDATA #IMPLIED
+ class CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT abbr (#PCDATA)>
+<!ATTLIST abbr
+ title CDATA #IMPLIED
+ class CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ type CDATA #IMPLIED
+ src CDATA #IMPLIED
+ charset CDATA #IMPLIED>
diff --git a/test/testcases/tests/level1/core/hc_attrappendchild1.xml b/test/testcases/tests/level1/core/hc_attrappendchild1.xml
new file mode 100644
index 0000000..e1e669e
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrappendchild1.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrappendchild1">
+<metadata>
+<title>hc_attrappendchild1</title>
+<creator>Curt Arnold</creator>
+<description>
+Appends a text node to an attribute and checks if the value of
+the attribute is changed.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.appendChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="lastChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<createTextNode var="textNode" obj="doc" data='"terday"'/>
+<appendChild var="retval" obj="titleAttr" newChild="textNode"/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that retval is the appended node -->
+<nodeValue obj="retval" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="retvalValue" ignoreCase="false"/>
+
+<!-- check that lastChild is the appended node -->
+<lastChild var="lastChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="lastChild" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="lastChildValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrappendchild2.xml b/test/testcases/tests/level1/core/hc_attrappendchild2.xml
new file mode 100644
index 0000000..793fb8a
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrappendchild2.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrappendchild2">
+<metadata>
+<title>hc_attrappendchild2</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempts to append an element to the child nodes of an attribute.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.appendChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="newChild" type="Node"/>
+<var name="retval" type="Node"/>
+<var name="lastChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<createElement var="newChild" obj="doc" tagName='"terday"'/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+ <HIERARCHY_REQUEST_ERR>
+ <appendChild var="retval" obj="titleAttr" newChild="newChild"/>
+ </HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrappendchild3.xml b/test/testcases/tests/level1/core/hc_attrappendchild3.xml
new file mode 100644
index 0000000..89d826e
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrappendchild3.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrappendchild3">
+<metadata>
+<title>hc_attrappendchild3</title>
+<creator>Curt Arnold</creator>
+<description>
+Appends a document fragment to an attribute and checks if the value of
+the attribute is changed.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.appendChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="terNode" type="Text"/>
+<var name="dayNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="lastChild" type="Node"/>
+<var name="docFrag" type="DocumentFragment"/>
+
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+
+<createTextNode var="terNode" obj="doc" data='"ter"'/>
+<createTextNode var="dayNode" obj="doc" data='"day"'/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<appendChild var="retval" obj="docFrag" newChild="terNode"/>
+<appendChild var="retval" obj="docFrag" newChild="dayNode"/>
+
+<appendChild var="retval" obj="titleAttr" newChild="docFrag"/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that retval is the document fragment -->
+<nodeValue obj="retval" var="value"/>
+<assertNull actual="value" id="retvalValue"/>
+
+<!-- check that lastChild is the final node in the doc fragment node -->
+<lastChild var="lastChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="lastChild" var="value"/>
+<assertEquals actual="value" expected='"day"' id="lastChildValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrappendchild4.xml b/test/testcases/tests/level1/core/hc_attrappendchild4.xml
new file mode 100644
index 0000000..f2bed28
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrappendchild4.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrappendchild4">
+<metadata>
+<title>hc_attrappendchild4</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempt to append a CDATASection to an attribute which should result
+in a HIERARCHY_REQUEST_ERR.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.appendChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Node"/>
+<var name="retval" type="Node"/>
+<var name="lastChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<if><contentType type="text/html"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <createCDATASection var="textNode" obj="doc" data='"terday"'/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+<else>
+<createCDATASection var="textNode" obj="doc" data='"terday"'/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+ <HIERARCHY_REQUEST_ERR>
+ <appendChild var="retval" obj="titleAttr" newChild="textNode"/>
+ </HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrappendchild5.xml b/test/testcases/tests/level1/core/hc_attrappendchild5.xml
new file mode 100644
index 0000000..1dc2693
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrappendchild5.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrappendchild5">
+<metadata>
+<title>hc_attrappendchild5</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempt to append a node from another document to an attribute which should result
+in a WRONG_DOCUMENT_ERR.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.appendChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Node"/>
+<var name="retval" type="Node"/>
+<var name="lastChild" type="Node"/>
+<var name="otherDoc" type="Document"/>
+
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<load var="otherDoc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<createTextNode var="textNode" obj="otherDoc" data='"terday"'/>
+
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+ <WRONG_DOCUMENT_ERR>
+ <appendChild var="retval" obj="titleAttr" newChild="textNode"/>
+ </WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrappendchild6.xml b/test/testcases/tests/level1/core/hc_attrappendchild6.xml
new file mode 100644
index 0000000..d180bc3
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrappendchild6.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrappendchild6">
+<metadata>
+<title>hc_attrappendchild6</title>
+<creator>Curt Arnold</creator>
+<description>
+Creates an new attribute node and appends a text node.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.appendChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="lastChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttribute var="titleAttr" obj="doc" name='"title"'/>
+<createTextNode var="textNode" obj="doc" data='"Yesterday"'/>
+<appendChild var="retval" obj="titleAttr" newChild="textNode"/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that retval is the appended node -->
+<nodeValue obj="retval" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="retvalValue" ignoreCase="false"/>
+
+<!-- check that lastChild is the appended node -->
+<lastChild var="lastChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="lastChild" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="lastChildValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrchildnodes1.xml b/test/testcases/tests/level1/core/hc_attrchildnodes1.xml
new file mode 100644
index 0000000..3a1e911
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrchildnodes1.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrchildnodes1">
+<metadata>
+<title>hc_attrchildnodes1</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.childNodes for an attribute node contains
+the expected text node.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.childNodes -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="childNodes" type="NodeList"/>
+
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<childNodes var="childNodes" obj="titleAttr"/>
+<assertSize size="1" collection="childNodes" id="childNodesSize"/>
+<item var="textNode" obj="childNodes" index="0" interface="NodeList"/>
+<nodeValue var="value" obj="textNode"/>
+<assertEquals actual="value" expected='"Yes"' id="child1IsYes" ignoreCase="false"/>
+<item var="textNode" obj="childNodes" index="1" interface="NodeList"/>
+<assertNull actual="textNode" id="secondItemIsNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrchildnodes2.xml b/test/testcases/tests/level1/core/hc_attrchildnodes2.xml
new file mode 100644
index 0000000..b637567
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrchildnodes2.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrchildnodes2">
+<metadata>
+<title>hc_attrchildnodes2</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks Node.childNodes for an attribute with multiple child nodes.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.childNodes -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="childNodes" type="NodeList"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<childNodes var="childNodes" obj="titleAttr"/>
+
+<createTextNode var="textNode" obj="doc" data='"terday"'/>
+<appendChild var="retval" obj="titleAttr" newChild="textNode"/>
+
+<assertSize size="2" collection="childNodes" id="childNodesSize"/>
+<item var="textNode" obj="childNodes" index="0" interface="NodeList"/>
+<nodeValue var="value" obj="textNode"/>
+<assertEquals actual="value" expected='"Yes"' id="child1IsYes" ignoreCase="false"/>
+
+<item var="textNode" obj="childNodes" index="1" interface="NodeList"/>
+<nodeValue var="value" obj="textNode"/>
+<assertEquals actual="value" expected='"terday"' id="child2IsTerday" ignoreCase="false"/>
+
+<item var="textNode" obj="childNodes" index="2" interface="NodeList"/>
+<assertNull actual="textNode" id="thirdItemIsNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrclonenode1.xml b/test/testcases/tests/level1/core/hc_attrclonenode1.xml
new file mode 100644
index 0000000..ad9654f
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrclonenode1.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrclonenode1">
+<metadata>
+<title>hc_attrclonenode1</title>
+<creator>Curt Arnold</creator>
+<description>
+Appends a text node to an attribute and clones the node.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.cloneNode -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="lastChild" type="Node"/>
+<var name="clonedTitle" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<createTextNode var="textNode" obj="doc" data='"terday"'/>
+<appendChild var="retval" obj="titleAttr" newChild="textNode"/>
+
+<cloneNode var="clonedTitle" obj="titleAttr" deep="false"/>
+<!-- change the original text node, should not affect the clone -->
+<nodeValue obj="textNode" value='"text_node_not_cloned"'/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="clonedTitle" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="clonedTitle" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that lastChild is the the expected value -->
+<lastChild var="lastChild" obj="clonedTitle" interface="Node"/>
+<nodeValue obj="lastChild" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="lastChildValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrcreatedocumentfragment.xml b/test/testcases/tests/level1/core/hc_attrcreatedocumentfragment.xml
new file mode 100644
index 0000000..a8026f9
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrcreatedocumentfragment.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrcreatedocumentfragment">
+<metadata>
+<title>hc_attrcreatedocumentfragment</title>
+<creator>Curt Arnold</creator>
+<description>
+ Create a new DocumentFragment and add a newly created Element node(with one attribute).
+ Once the element is added, its attribute should be available as an attribute associated
+ with an Element within a DocumentFragment.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!-- createDocumentFragment -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-35CB04B5"/>
+<!-- setAttribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+<!-- DocumentFragment -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=184"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="newOne" type="Element"/>
+<var name="domesticNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="attribute" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="langAttrCount" type="int" value="0"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="docFragment"/>
+<createElement obj="doc" var="newOne" tagName='"html"'/>
+<setAttribute obj="newOne" name='"lang"' value='"EN"'/>
+<appendChild var="appendedChild" obj="docFragment" newChild="newOne"/>
+<firstChild interface="Node" obj="docFragment" var="domesticNode"/>
+<attributes obj="domesticNode" var="attributes"/>
+<for-each collection="attributes" member="attribute">
+ <nodeName var="attrName" obj="attribute"/>
+ <if><equals expected='"lang"' actual="attrName" ignoreCase="auto" context="attribute"/>
+ <increment var="langAttrCount" value="1"/>
+ </if>
+</for-each>
+<assertEquals expected="1" actual="langAttrCount" id="hasLangAttr" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrcreatetextnode.xml b/test/testcases/tests/level1/core/hc_attrcreatetextnode.xml
new file mode 100644
index 0000000..86532b3
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrcreatetextnode.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrcreatetextnode">
+<metadata>
+<title>hc_attrCreateTextNode</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setValue()" method for an attribute creates a
+ Text node with the unparsed content of the string.
+ Retrieve the attribute named "class" from the last
+ child of of the fourth employee and assign the "Y&amp;ent1;"
+ string to its value attribute. This value is not yet
+ parsed and therefore should still be the same upon
+ retrieval. This test uses the "getNamedItem(name)" method
+ from the NamedNodeMap interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!-- Attr.value -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474"/>
+<!-- bug report on initial version -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Apr/0057.html"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname='"acronym"'/>
+<item interface="NodeList" obj="addressList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name='"class"'/>
+<value interface="Attr" obj="streetAttr" value='"Y&amp;ent1;"'/>
+<value interface="Attr" obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected='"Y&amp;ent1;"' id="value" ignoreCase="false"/>
+<nodeValue obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected='"Y&amp;ent1;"' id="nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrcreatetextnode2.xml b/test/testcases/tests/level1/core/hc_attrcreatetextnode2.xml
new file mode 100644
index 0000000..474a26b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrcreatetextnode2.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrcreatetextnode2">
+<metadata>
+<title>hc_attrCreateTextNode2</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setNodeValue()" method for an attribute creates a
+ Text node with the unparsed content of the string.
+ Retrieve the attribute named "class" from the last
+ child of of the fourth employee and assign the "Y&amp;ent1;"
+ string to its value attribute. This value is not yet
+ parsed and therefore should still be the same upon
+ retrieval. This test uses the "getNamedItem(name)" method
+ from the NamedNodeMap interface.
+</description>
+<date qualifier="created">2002-06-09</date>
+<!-- Node.nodeValue -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<!-- bug report on initial version -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Apr/0057.html"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname='"acronym"'/>
+<item interface="NodeList" obj="addressList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name='"class"'/>
+<nodeValue obj="streetAttr" value='"Y&amp;ent1;"'/>
+<value interface="Attr" obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected='"Y&amp;ent1;"' id="value" ignoreCase="false"/>
+<nodeValue obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected='"Y&amp;ent1;"' id="nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attreffectivevalue.xml b/test/testcases/tests/level1/core/hc_attreffectivevalue.xml
new file mode 100644
index 0000000..c3dccba
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attreffectivevalue.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attreffectivevalue">
+<metadata>
+<title>hc_attrEffectiveValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ If an Attr is explicitly assigned any value, then that value is the attributes effective value.
+ Retrieve the attribute named "domestic" from the last child of of the first employee
+ and examine its nodeValue attribute. This test uses the "getNamedItem(name)" method
+ from the NamedNodeMap interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!-- Element.attributes -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- NamedNodeMap.getNamedItem -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname='"acronym"'/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name='"title"'/>
+<nodeValue obj="domesticAttr" var="value"/>
+<assertEquals actual="value" expected='"Yes"' id="attrEffectiveValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrfirstchild.xml b/test/testcases/tests/level1/core/hc_attrfirstchild.xml
new file mode 100644
index 0000000..0b19f35
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrfirstchild.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrfirstchild">
+<metadata>
+<title>hc_attrfirstchild</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.firstChild for an attribute node contains
+the expected text node.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.firstChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-169727388"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="otherChild" type="Node"/>
+
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<firstChild var="textNode" obj="titleAttr" interface="Node"/>
+<assertNotNull actual="textNode" id="textNodeNotNull"/>
+<nodeValue var="value" obj="textNode"/>
+<assertEquals actual="value" expected='"Yes"' id="child1IsYes" ignoreCase="false"/>
+<nextSibling var="otherChild" obj="textNode" interface="Node"/>
+<assertNull actual="otherChild" id="nextSiblingIsNull"/>
+<previousSibling var="otherChild" obj="textNode" interface="Node"/>
+<assertNull actual="otherChild" id="previousSiblingIsNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrgetvalue1.xml b/test/testcases/tests/level1/core/hc_attrgetvalue1.xml
new file mode 100644
index 0000000..44344db
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrgetvalue1.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrgetvalue1">
+<metadata>
+<title>hc_attrgetvalue1</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks the value of an attribute that contains entity references.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr.value -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="lastChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"class"'/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Y&#945;"' id="attrValue1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrgetvalue2.xml b/test/testcases/tests/level1/core/hc_attrgetvalue2.xml
new file mode 100644
index 0000000..1b05e58
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrgetvalue2.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrgetvalue2">
+<metadata>
+<title>hc_attrgetvalue2</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks the value of an attribute that contains entity references.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr.value -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="alphaRef" type="EntityReference"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"class"'/>
+
+<if><contentType type="text/html"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <createEntityReference var="alphaRef" obj="doc" name='"alpha"'/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+<else>
+<!-- create an alpha entity reference and place it first -->
+<createEntityReference var="alphaRef" obj="doc" name='"alpha"'/>
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<insertBefore var="retval" obj="titleAttr" newChild="alphaRef" refChild="firstChild"/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"&#945;Y&#945;"' id="attrValue1" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrhaschildnodes.xml b/test/testcases/tests/level1/core/hc_attrhaschildnodes.xml
new file mode 100644
index 0000000..9be5864
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrhaschildnodes.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrhaschildnodes">
+<metadata>
+<title>hc_attrhaschildnodes</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.hasChildNodes() is true for an attribute with content.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.hasChildNodes -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-810594187"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="hasChildNodes" type="boolean"/>
+
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<hasChildNodes var="hasChildNodes" obj="titleAttr"/>
+<assertTrue actual="hasChildNodes" id="hasChildrenIsTrue"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrinsertbefore1.xml b/test/testcases/tests/level1/core/hc_attrinsertbefore1.xml
new file mode 100644
index 0000000..f36124e
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrinsertbefore1.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrinsertbefore1">
+<metadata>
+<title>hc_attrinsertbefore1</title>
+<creator>Curt Arnold</creator>
+<description>
+Appends a text node to an attribute and checks if the value of
+the attribute is changed.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.insertBefore -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="lastChild" type="Node"/>
+<var name="refChild" type="Node" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<createTextNode var="textNode" obj="doc" data='"terday"'/>
+
+<insertBefore var="retval" obj="titleAttr" newChild="textNode" refChild="refChild"/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that retval is the appended node -->
+<nodeValue obj="retval" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="retvalValue" ignoreCase="false"/>
+
+<!-- check that firstChild is the existing node -->
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="firstChild" var="value"/>
+<assertEquals actual="value" expected='"Yes"' id="firstChildValue" ignoreCase="false"/>
+
+
+<!-- check that lastChild is the appended node -->
+<lastChild var="lastChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="lastChild" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="lastChildValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrinsertbefore2.xml b/test/testcases/tests/level1/core/hc_attrinsertbefore2.xml
new file mode 100644
index 0000000..ae51d42
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrinsertbefore2.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrinsertbefore2">
+<metadata>
+<title>hc_attrinsertbefore2</title>
+<creator>Curt Arnold</creator>
+<description>
+Prepends a text node to an attribute and checks if the value of
+the attribute is changed.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.insertBefore -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="lastChild" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="refChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<createTextNode var="textNode" obj="doc" data='"terday"'/>
+<firstChild var="refChild" obj="titleAttr" interface="Node"/>
+<insertBefore var="retval" obj="titleAttr" newChild="textNode" refChild="refChild"/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"terdayYes"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"terdayYes"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that retval is the appended node -->
+<nodeValue obj="retval" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="retvalValue" ignoreCase="false"/>
+
+<!-- check that firstChild is the prepended node -->
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="firstChild" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="firstChildValue" ignoreCase="false"/>
+
+<!-- check that lastChild is the original node -->
+<lastChild var="lastChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="lastChild" var="value"/>
+<assertEquals actual="value" expected='"Yes"' id="lastChildValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrinsertbefore3.xml b/test/testcases/tests/level1/core/hc_attrinsertbefore3.xml
new file mode 100644
index 0000000..1d3e0ff
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrinsertbefore3.xml
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrinsertbefore3">
+<metadata>
+<title>hc_attrinsertbefore3</title>
+<creator>Curt Arnold</creator>
+<description>
+Appends a document fragment to an attribute and checks if the value of
+the attribute is changed.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.insertBefore -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="terNode" type="Text"/>
+<var name="dayNode" type="Text"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="retval" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="lastChild" type="Node"/>
+<var name="refChild" type="Node" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+
+<createTextNode var="terNode" obj="doc" data='"ter"'/>
+<createTextNode var="dayNode" obj="doc" data='"day"'/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<appendChild var="retval" obj="docFrag" newChild="terNode"/>
+<appendChild var="retval" obj="docFrag" newChild="dayNode"/>
+
+<insertBefore var="retval" obj="titleAttr" newChild="docFrag" refChild="refChild"/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that retval is the appended node -->
+<nodeValue obj="retval" var="value"/>
+<assertNull actual="value" id="retvalValue"/>
+
+<!-- check that firstChild is the existing node -->
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="firstChild" var="value"/>
+<assertEquals actual="value" expected='"Yes"' id="firstChildValue" ignoreCase="false"/>
+
+
+<!-- check that lastChild is the last child of the doc fragment -->
+<lastChild var="lastChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="lastChild" var="value"/>
+<assertEquals actual="value" expected='"day"' id="lastChildValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrinsertbefore4.xml b/test/testcases/tests/level1/core/hc_attrinsertbefore4.xml
new file mode 100644
index 0000000..0640396
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrinsertbefore4.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrinsertbefore4">
+<metadata>
+<title>hc_attrinsertbefore4</title>
+<creator>Curt Arnold</creator>
+<description>
+Prepends a document fragment to an attribute and checks if the value of
+the attribute is changed.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.insertBefore -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="terNode" type="Text"/>
+<var name="dayNode" type="Text"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="retval" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="lastChild" type="Node"/>
+<var name="refChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+
+<createTextNode var="terNode" obj="doc" data='"ter"'/>
+<createTextNode var="dayNode" obj="doc" data='"day"'/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<appendChild var="retval" obj="docFrag" newChild="terNode"/>
+<appendChild var="retval" obj="docFrag" newChild="dayNode"/>
+
+
+<firstChild var="refChild" obj="titleAttr" interface="Node"/>
+<insertBefore var="retval" obj="titleAttr" newChild="docFrag" refChild="refChild"/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"terdayYes"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"terdayYes"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that retval is the appended node -->
+<nodeValue obj="retval" var="value"/>
+<assertNull actual="value" id="retvalValue"/>
+
+<!-- check that firstChild is the first node in the document fragment -->
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="firstChild" var="value"/>
+<assertEquals actual="value" expected='"ter"' id="firstChildValue" ignoreCase="false"/>
+
+<!-- check that last child is the original node -->
+<lastChild var="lastChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="lastChild" var="value"/>
+<assertEquals actual="value" expected='"Yes"' id="lastChildValue" ignoreCase="false"/>
+
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrinsertbefore5.xml b/test/testcases/tests/level1/core/hc_attrinsertbefore5.xml
new file mode 100644
index 0000000..71a3029
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrinsertbefore5.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrinsertbefore5">
+<metadata>
+<title>hc_attrinsertbefore5</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempt to append a CDATASection to an attribute which should result
+in a HIERARCHY_REQUEST_ERR.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.insertBefore -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Node"/>
+<var name="retval" type="Node"/>
+<var name="refChild" type="Node" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<if><contentType type="text/html"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <createCDATASection var="textNode" obj="doc" data='"terday"'/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+<else>
+<createCDATASection var="textNode" obj="doc" data='"terday"'/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+ <HIERARCHY_REQUEST_ERR>
+ <insertBefore var="retval" obj="titleAttr" newChild="textNode" refChild="refChild"/>
+ </HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrinsertbefore6.xml b/test/testcases/tests/level1/core/hc_attrinsertbefore6.xml
new file mode 100644
index 0000000..a6347e6
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrinsertbefore6.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrinsertbefore6">
+<metadata>
+<title>hc_attrinsertbefore6</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempt to append a text node from another document to an attribute which should result
+in a WRONG_DOCUMENT_ERR.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.insertBefore -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Node"/>
+<var name="retval" type="Node"/>
+<var name="refChild" type="Node" isNull="true"/>
+<var name="otherDoc" type="Document"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<load var="otherDoc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<createTextNode var="textNode" obj="otherDoc" data='"terday"'/>
+
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+ <WRONG_DOCUMENT_ERR>
+ <insertBefore var="retval" obj="titleAttr" newChild="textNode" refChild="refChild"/>
+ </WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrinsertbefore7.xml b/test/testcases/tests/level1/core/hc_attrinsertbefore7.xml
new file mode 100644
index 0000000..e60045f
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrinsertbefore7.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrinsertbefore7">
+<metadata>
+<title>hc_attrinsertbefore7</title>
+<creator>Curt Arnold</creator>
+<description>
+Appends a document fragment containing a CDATASection to an attribute.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.insertBefore -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="terNode" type="Text"/>
+<var name="dayNode" type="Node"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="retval" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="lastChild" type="Node"/>
+<var name="refChild" type="Node" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+
+<createTextNode var="terNode" obj="doc" data='"ter"'/>
+<if><contentType type="text/html"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <createCDATASection var="dayNode" obj="doc" data='"day"'/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+<else>
+<createCDATASection var="dayNode" obj="doc" data='"day"'/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<appendChild var="retval" obj="docFrag" newChild="terNode"/>
+<appendChild var="retval" obj="docFrag" newChild="dayNode"/>
+
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+ <HIERARCHY_REQUEST_ERR>
+ <insertBefore var="retval" obj="titleAttr" newChild="docFrag" refChild="refChild"/>
+ </HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrlastchild.xml b/test/testcases/tests/level1/core/hc_attrlastchild.xml
new file mode 100644
index 0000000..60319ab
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrlastchild.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrlastchild">
+<metadata>
+<title>hc_attrlastchild</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.lastChild for an attribute node contains
+the expected text node.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.lastChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-61AD09FB"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="otherChild" type="Node"/>
+
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<firstChild var="textNode" obj="titleAttr" interface="Node"/>
+<assertNotNull actual="textNode" id="textNodeNotNull"/>
+<nodeValue var="value" obj="textNode"/>
+<assertEquals actual="value" expected='"Yes"' id="child1IsYes" ignoreCase="false"/>
+<nextSibling var="otherChild" obj="textNode" interface="Node"/>
+<assertNull actual="otherChild" id="nextSiblingIsNull"/>
+<previousSibling var="otherChild" obj="textNode" interface="Node"/>
+<assertNull actual="otherChild" id="previousSiblingIsNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrname.xml b/test/testcases/tests/level1/core/hc_attrname.xml
new file mode 100644
index 0000000..30de522
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrname.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrname">
+<metadata>
+<title>hc_attrName</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the attribute named class from the last
+ child of of the second "p" element and examine its
+ NodeName.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!-- Node.nodeName -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<!-- Attr.name -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1112119403"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="strong1" type="DOMString"/>
+<var name="strong2" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname='"acronym"'/>
+<item interface="NodeList" obj="addressList" var="testNode" index="1"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name='"class"'/>
+<nodeName obj="streetAttr" var="strong1"/>
+<name obj="streetAttr" var="strong2" interface="Attr"/>
+<assertEquals actual="strong1" expected='"class"' id="nodeName" ignoreCase="auto" context="attribute"/>
+<assertEquals actual="strong2" expected='"class"' id="name" ignoreCase="auto" context="attribute"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrnextsiblingnull.xml b/test/testcases/tests/level1/core/hc_attrnextsiblingnull.xml
new file mode 100644
index 0000000..44e0678
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrnextsiblingnull.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrnextsiblingnull">
+<metadata>
+<title>hc_attrNextSiblingNull</title>
+<creator>Curt Arnold</creator>
+<description>
+The "getNextSibling()" method for an Attr node should return null.
+Retrieve the attribute named "domestic" from the last child of of the
+first employee and examine its NextSibling node. This test uses the
+"getNamedItem(name)" method from the NamedNodeMap interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--nextSibling attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6AC54C2F"/>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="s" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname='"acronym"'/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name='"title"'/>
+<nextSibling interface="Node" obj="domesticAttr" var="s"/>
+<assertNull actual="s" id="attrNextSiblingNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrnormalize.xml b/test/testcases/tests/level1/core/hc_attrnormalize.xml
new file mode 100644
index 0000000..bc5a892
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrnormalize.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrnormalize">
+<metadata>
+<title>hc_attrnormalize</title>
+<creator>Curt Arnold</creator>
+<description>
+Appends a text node to an attribute, normalizes the attribute
+and checks for a single child node.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.normalize -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-162CF083"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="secondChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<createTextNode var="textNode" obj="doc" data='"terday"'/>
+<appendChild var="retval" obj="titleAttr" newChild="textNode"/>
+<createTextNode var="textNode" obj="doc" data='""'/>
+<appendChild var="retval" obj="titleAttr" newChild="textNode"/>
+
+
+<!-- in level 1, normalize is on element -->
+<normalize obj="testNode"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that first child has all the content -->
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="firstChild" var="value"/>
+<assertEquals actual="value" expected='"Yesterday"' id="firstChildValue" ignoreCase="false"/>
+
+<nextSibling var="secondChild" obj="firstChild" interface="Node"/>
+<assertNull actual="secondChild" id="secondChildIsNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrparentnodenull.xml b/test/testcases/tests/level1/core/hc_attrparentnodenull.xml
new file mode 100644
index 0000000..1ad351d
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrparentnodenull.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrparentnodenull">
+<metadata>
+<title>hc_attrParentNodeNull</title>
+<creator>Curt Arnold</creator>
+<description>
+The "getParentNode()" method for an Attr node should return null. Retrieve
+the attribute named "domestic" from the last child of the first employee
+and examine its parentNode attribute. This test also uses the "getNamedItem(name)"
+method from the NamedNodeMap interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--parentNode attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1060184317"/>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="s" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname='"acronym"'/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name='"title"'/>
+<parentNode interface="Node" obj="domesticAttr" var="s"/>
+<assertNull actual="s" id="attrParentNodeNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrprevioussiblingnull.xml b/test/testcases/tests/level1/core/hc_attrprevioussiblingnull.xml
new file mode 100644
index 0000000..bd7c262
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrprevioussiblingnull.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrprevioussiblingnull">
+<metadata>
+<title>hc_attrPreviousSiblingNull</title>
+<creator>Curt Arnold</creator>
+<description>
+The "getPreviousSibling()" method for an Attr node should return null.
+Retrieve the attribute named "domestic" from the last child of of the
+first employee and examine its PreviousSibling node. This test uses the
+"getNamedItem(name)" method from the NamedNodeMap interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--previousSibling attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-640FB3C8"/>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="s" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname='"acronym"'/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name='"title"'/>
+<previousSibling interface="Node" obj="domesticAttr" var="s"/>
+<assertNull actual="s" id="attrPreviousSiblingNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrremovechild1.xml b/test/testcases/tests/level1/core/hc_attrremovechild1.xml
new file mode 100644
index 0000000..748d8e7
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrremovechild1.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrremovechild1">
+<metadata>
+<title>hc_attrremovechild1</title>
+<creator>Curt Arnold</creator>
+<description>
+Removes the child node of an attribute and checks that the value is empty.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.removeChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="firstChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<firstChild var="textNode" obj="titleAttr" interface="Node"/>
+<assertNotNull actual="textNode" id="attrChildNotNull"/>
+<removeChild var="retval" obj="titleAttr" oldChild="textNode"/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='""' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='""' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that retval is the removed node -->
+<nodeValue obj="retval" var="value"/>
+<assertEquals actual="value" expected='"Yes"' id="retvalValue" ignoreCase="false"/>
+
+<!-- check that firstChild is null -->
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<assertNull actual="firstChild" id="firstChildNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrremovechild2.xml b/test/testcases/tests/level1/core/hc_attrremovechild2.xml
new file mode 100644
index 0000000..b47726b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrremovechild2.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrremovechild2">
+<metadata>
+<title>hc_attrremovechild2</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempts to remove a freshly created text node which should result in a NOT_FOUND_ERR exception.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.removeChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+
+<createTextNode var="textNode" obj="doc" data='"Yesterday"'/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+ <NOT_FOUND_ERR>
+ <removeChild var="retval" obj="titleAttr" oldChild="textNode"/>
+ </NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrreplacechild1.xml b/test/testcases/tests/level1/core/hc_attrreplacechild1.xml
new file mode 100644
index 0000000..c648e5d
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrreplacechild1.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrreplacechild1">
+<metadata>
+<title>hc_attrreplacechild1</title>
+<creator>Curt Arnold</creator>
+<description>
+Replaces a text node of an attribute and checks if the value of
+the attribute is changed.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.replaceChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="firstChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<createTextNode var="textNode" obj="doc" data='"terday"'/>
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<assertNotNull actual="firstChild" id="attrChildNotNull"/>
+<replaceChild var="retval" obj="titleAttr" newChild="textNode" oldChild="firstChild"/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that retval is the removed node -->
+<nodeValue obj="retval" var="value"/>
+<assertEquals actual="value" expected='"Yes"' id="retvalValue" ignoreCase="false"/>
+
+<!-- check that firstChild is the appended node -->
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="firstChild" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="firstChildValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrreplacechild2.xml b/test/testcases/tests/level1/core/hc_attrreplacechild2.xml
new file mode 100644
index 0000000..b337a3b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrreplacechild2.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrreplacechild2">
+<metadata>
+<title>hc_attrreplacechild2</title>
+<creator>Curt Arnold</creator>
+<description>
+Replaces a text node of an attribute with a document fragment and checks if the value of
+the attribute is changed.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!-- Node.replaceChild -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="terNode" type="Text"/>
+<var name="dayNode" type="Text"/>
+<var name="docFrag" type="DocumentFragment"/>
+
+<var name="retval" type="Node"/>
+<var name="firstChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+
+<createTextNode var="terNode" obj="doc" data='"ter"'/>
+<createTextNode var="dayNode" obj="doc" data='"day"'/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<appendChild var="retval" obj="docFrag" newChild="terNode"/>
+<appendChild var="retval" obj="docFrag" newChild="dayNode"/>
+
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<assertNotNull actual="firstChild" id="attrChildNotNull"/>
+<replaceChild var="retval" obj="titleAttr" newChild="docFrag" oldChild="firstChild"/>
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"terday"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that retval is the removed node -->
+<nodeValue obj="retval" var="value"/>
+<assertEquals actual="value" expected='"Yes"' id="retvalValue" ignoreCase="false"/>
+
+<!-- check that firstChild is the first node of the doc fragment -->
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="firstChild" var="value"/>
+<assertEquals actual="value" expected='"ter"' id="firstChildValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrsetvalue1.xml b/test/testcases/tests/level1/core/hc_attrsetvalue1.xml
new file mode 100644
index 0000000..93afe76
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrsetvalue1.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrsetvalue1">
+<metadata>
+<title>hc_attrsetvalue1</title>
+<creator>Curt Arnold</creator>
+<description>
+Sets Attr.value on an attribute that only has a simple value.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr.value -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="retval" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="otherChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<assertNotNull actual="firstChild" id="attrChildNotNull"/>
+
+<!-- set value which should totally replace child node list -->
+<value obj="titleAttr" value='"Tomorrow"' interface="Attr"/>
+
+<!-- setting the previous first child should have not
+ affect on current value -->
+<nodeValue obj="firstChild" value='"impl reused node"'/>
+
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Tomorrow"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Tomorrow"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that firstChild is an implicitly created node -->
+<lastChild var="firstChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="firstChild" var="value"/>
+<assertEquals actual="value" expected='"Tomorrow"' id="firstChildValue" ignoreCase="false"/>
+
+<nextSibling var="otherChild" obj="firstChild" interface="Node"/>
+<assertNull actual="otherChild" id="nextSiblingIsNull"/>
+
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrsetvalue2.xml b/test/testcases/tests/level1/core/hc_attrsetvalue2.xml
new file mode 100644
index 0000000..d0f9589
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrsetvalue2.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrsetvalue2">
+<metadata>
+<title>hc_attrsetvalue2</title>
+<creator>Curt Arnold</creator>
+<description>
+Sets Attr.value on an attribute that should contain multiple child nodes.
+</description>
+
+<date qualifier="created">2004-01-01</date>
+<!-- Attr.value -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="acronymList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="titleAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retval" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="otherChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="acronymList" tagname='"acronym"'/>
+<item interface="NodeList" obj="acronymList" var="testNode" index="3"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="titleAttr" name='"title"'/>
+<createTextNode var="textNode" obj="doc" data='"terday"'/>
+<appendChild var="retval" obj="titleAttr" newChild="textNode"/>
+<firstChild var="firstChild" obj="titleAttr" interface="Node"/>
+<assertNotNull actual="firstChild" id="attrChildNotNull"/>
+
+<!-- set value which should totally replace child node list -->
+<value obj="titleAttr" value='"Tomorrow"' interface="Attr"/>
+
+<!-- setting the previous first child should have not
+ affect on current value -->
+<nodeValue obj="firstChild" value='"impl reused node"'/>
+
+
+<!-- check that Attr.value gives expected result -->
+<value interface="Attr" obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Tomorrow"' id="attrValue" ignoreCase="false"/>
+
+<!-- check that Node.value gives expected result -->
+<nodeValue obj="titleAttr" var="value"/>
+<assertEquals actual="value" expected='"Tomorrow"' id="attrNodeValue" ignoreCase="false"/>
+
+<!-- check that firstChild is an implicitly created node -->
+<lastChild var="firstChild" obj="titleAttr" interface="Node"/>
+<nodeValue obj="firstChild" var="value"/>
+<assertEquals actual="value" expected='"Tomorrow"' id="firstChildValue" ignoreCase="false"/>
+
+<nextSibling var="otherChild" obj="firstChild" interface="Node"/>
+<assertNull actual="otherChild" id="nextSiblingIsNull"/>
+
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrspecifiedvalue.xml b/test/testcases/tests/level1/core/hc_attrspecifiedvalue.xml
new file mode 100644
index 0000000..55a9647
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrspecifiedvalue.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrspecifiedvalue">
+<metadata>
+<title>hc_attrSpecifiedValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getSpecified()" method for an Attr node should
+ be set to true if the attribute was explicitly given
+ a value.
+ Retrieve the attribute named "domestic" from the last
+ child of of the first employee and examine the value
+ returned by the "getSpecified()" method. This test uses
+ the "getNamedItem(name)" method from the NamedNodeMap
+ interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-862529273"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname='"acronym"'/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name='"title"'/>
+<specified obj="domesticAttr" var="state"/>
+<assertTrue actual="state" id="acronymTitleSpecified"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_attrspecifiedvaluechanged.xml b/test/testcases/tests/level1/core/hc_attrspecifiedvaluechanged.xml
new file mode 100644
index 0000000..4f0c703
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_attrspecifiedvaluechanged.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_attrspecifiedvaluechanged">
+<metadata>
+<title>hc_attrSpecifiedValueChanged</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getSpecified()" method for an Attr node should return true if the
+ value of the attribute is changed.
+ Retrieve the attribute named "class" from the last
+ child of of the THIRD employee and change its
+ value to "Yes"(which is the default DTD value). This
+ should cause the "getSpecified()" method to be true.
+ This test uses the "setAttribute(name,value)" method
+ from the Element interface and the "getNamedItem(name)"
+ method from the NamedNodeMap interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-862529273"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname='"acronym"'/>
+<item interface="NodeList" obj="addressList" var="testNode" index="2"/>
+<setAttribute obj="testNode" name='"class"' value='"Y&#945;"'/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name='"class"'/>
+<specified obj="streetAttr" var="state"/>
+<assertTrue actual="state" id="acronymClassSpecified"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataappenddata.xml b/test/testcases/tests/level1/core/hc_characterdataappenddata.xml
new file mode 100644
index 0000000..d1e3a28
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataappenddata.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataappenddata">
+<metadata>
+<title>hc_characterdataAppendData</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "appendData(arg)" method appends a string to the end
+ of the character data of the node.
+
+ Retrieve the character data from the second child
+ of the first employee. The appendData(arg) method is
+ called with arg=", Esquire". The method should append
+ the specified data to the already existing character
+ data. The new value return by the "getLength()" method
+ should be 24.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-32791A2F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childValue" type="DOMString"/>
+<var name="childLength" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"strong"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<appendData obj="child" arg='", Esquire"'/>
+<data obj="child" var="childValue" interface="CharacterData"/>
+<length obj="childValue" var="childLength" interface="DOMString"/>
+<assertEquals actual="childLength" expected="24" ignoreCase="false" id="characterdataAppendDataAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataappenddatagetdata.xml b/test/testcases/tests/level1/core/hc_characterdataappenddatagetdata.xml
new file mode 100644
index 0000000..5a861d1
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataappenddatagetdata.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataappenddatagetdata">
+<metadata>
+<title>hc_characterdataAppendDataGetData</title>
+<creator>Curt Arnold</creator>
+<description>
+ On successful invocation of the "appendData(arg)"
+ method the "getData()" method provides access to the
+ concatentation of data and the specified string.
+
+ Retrieve the character data from the second child
+ of the first employee. The appendData(arg) method is
+ called with arg=", Esquire". The method should append
+ the specified data to the already existing character
+ data. The new value return by the "getData()" method
+ should be "Margaret Martin, Esquire".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-32791A2F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"strong"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<appendData obj="child" arg='", Esquire"'/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"Margaret Martin, Esquire"' id="characterdataAppendDataGetDataAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatadeletedatabegining.xml b/test/testcases/tests/level1/core/hc_characterdatadeletedatabegining.xml
new file mode 100644
index 0000000..5fb3027
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatadeletedatabegining.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatadeletedatabegining">
+<metadata>
+<title>hc_characterdataDeleteDataBeginning</title>
+<creator>Curt Arnold</creator>
+<description>
+The "deleteData(offset,count)" method removes a range of
+characters from the node. Delete data at the beginning
+of the character data.
+
+Retrieve the character data from the last child of the
+first employee. The "deleteData(offset,count)"
+method is then called with offset=0 and count=16.
+The method should delete the characters from position
+0 thru position 16. The new value of the character data
+should be "Dallas, Texas 98551".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<deleteData obj="child" offset="0" count="16"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"Dallas, Texas 98551"' id="data" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatadeletedataend.xml b/test/testcases/tests/level1/core/hc_characterdatadeletedataend.xml
new file mode 100644
index 0000000..04dea1b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatadeletedataend.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatadeletedataend">
+<metadata>
+<title>hc_characterdataDeleteDataEnd</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "deleteData(offset,count)" method removes a range of
+ characters from the node. Delete data at the end
+ of the character data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=30 and count=5.
+ The method should delete the characters from position
+ 30 thru position 35. The new value of the character data
+ should be "1230 North Ave. Dallas, Texas".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<deleteData obj="child" offset="30" count="5"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"1230 North Ave. Dallas, Texas "' id="characterdataDeleteDataEndAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatadeletedataexceedslength.xml b/test/testcases/tests/level1/core/hc_characterdatadeletedataexceedslength.xml
new file mode 100644
index 0000000..a76bb58
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatadeletedataexceedslength.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatadeletedataexceedslength">
+<metadata>
+<title>hc_characterdataDeleteDataExceedsLength</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the sum of the offset and count used in the
+ "deleteData(offset,count) method is greater than the
+ length of the character data then all the characters
+ from the offset to the end of the data are deleted.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=4 and count=50.
+ The method should delete the characters from position 4
+ to the end of the data since the offset+count(50+4)
+ is greater than the length of the character data(35).
+ The new value of the character data should be "1230".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<deleteData obj="child" offset="4" count="50"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"1230"' id="characterdataDeleteDataExceedsLengthAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatadeletedatagetlengthanddata.xml b/test/testcases/tests/level1/core/hc_characterdatadeletedatagetlengthanddata.xml
new file mode 100644
index 0000000..b241f9f
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatadeletedatagetlengthanddata.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatadeletedatagetlengthanddata">
+<metadata>
+<title>hc_characterdataDeleteDataGetLengthAndData</title>
+<creator>Curt Arnold</creator>
+<description>
+ On successful invocation of the "deleteData(offset,count)"
+ method, the "getData()" and "getLength()" methods reflect
+ the changes.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=30 and count=5.
+ The method should delete the characters from position
+ 30 thru position 35. The new value of the character data
+ should be "1230 North Ave. Dallas, Texas" which is
+ returned by the "getData()" method and "getLength()"
+ method should return 30".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7D61178C"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<var name="childLength" type="int"/>
+<var name="result" type="List"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<deleteData obj="child" offset="30" count="5"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"1230 North Ave. Dallas, Texas "' ignoreCase="false" id="data"/>
+<length interface="CharacterData" obj="child" var="childLength"/>
+<assertEquals actual="childLength" expected="30" ignoreCase="false" id="length"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatadeletedatamiddle.xml b/test/testcases/tests/level1/core/hc_characterdatadeletedatamiddle.xml
new file mode 100644
index 0000000..a7f55f8
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatadeletedatamiddle.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatadeletedatamiddle">
+<metadata>
+<title>hc_characterdataDeleteDataMiddle</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "deleteData(offset,count)" method removes a range of
+ characters from the node. Delete data in the middle
+ of the character data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=16 and count=8.
+ The method should delete the characters from position
+ 16 thru position 24. The new value of the character data
+ should be "1230 North Ave. Texas 98551".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<deleteData obj="child" offset="16" count="8"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"1230 North Ave. Texas 98551"' id="characterdataDeleteDataMiddleAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatagetdata.xml b/test/testcases/tests/level1/core/hc_characterdatagetdata.xml
new file mode 100644
index 0000000..6841b7e
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatagetdata.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatagetdata">
+<metadata>
+<title>hc_characterdataGetData</title>
+<creator>Curt Arnold</creator>
+<description>
+
+ The "getData()" method retrieves the character data
+
+ currently stored in the node.
+
+ Retrieve the character data from the second child
+
+ of the first employee and invoke the "getData()"
+
+ method. The method returns the character data
+
+ string.
+
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"strong"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"Margaret Martin"' id="characterdataGetDataAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatagetlength.xml b/test/testcases/tests/level1/core/hc_characterdatagetlength.xml
new file mode 100644
index 0000000..2c15f87
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatagetlength.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatagetlength">
+<metadata>
+<title>hc_characterdataGetLength</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getLength()" method returns the number of characters
+ stored in this nodes data.
+ Retrieve the character data from the second
+ child of the first employee and examine the
+ value returned by the getLength() method.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7D61178C"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childValue" type="DOMString"/>
+<var name="childLength" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"strong"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<data var="childValue" obj="child" interface="CharacterData"/>
+<length var="childLength" obj="childValue" interface="DOMString"/>
+<assertEquals actual="childLength" expected="15" ignoreCase="false" id="characterdataGetLengthAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.xml b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.xml
new file mode 100644
index 0000000..f122d15
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataindexsizeerrdeletedatacountnegative">
+<metadata>
+<title>hc_characterdataIndexSizeErrDeleteDataCountNegative</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "deleteData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified count
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "deleteData(offset,count)"
+ method with offset=10 and count=-3. It should raise the
+ desired exception since the count is negative.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childSubstring" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<substringData var="childSubstring" obj="child" offset="10" count="-3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.xml b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.xml
new file mode 100644
index 0000000..e6b91e3
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataindexsizeerrdeletedataoffsetgreater">
+<metadata>
+<title>hc_characterdataIndexSizeErrDeleteDataOffsetGreater</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "deleteData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater that the number of characters in the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "deleteData(offset,count)"
+ method with offset=40 and count=3. It should raise the
+ desired exception since the offset is greater than the
+ number of characters in the string.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throw_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<deleteData obj="child" offset="40" count="3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.xml b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.xml
new file mode 100644
index 0000000..6c0042b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataindexsizeerrdeletedataoffsetnegative">
+<metadata>
+<title>hc_characterdataIndexSizeErrDeleteDataOffsetNegative</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "deleteData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "deleteData(offset,count)"
+ method with offset=-5 and count=3. It should raise the
+ desired exception since the offset is negative.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<deleteData obj="child" offset="-5" count="3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.xml b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.xml
new file mode 100644
index 0000000..ffc7022
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataindexsizeerrinsertdataoffsetgreater">
+<metadata>
+<title>hc_characterdataIndexSizeErrInsertDataOffsetGreater</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "insertData(offset,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater than the number of characters in the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its insertData"(offset,arg)"
+ method with offset=40 and arg="ABC". It should raise
+ the desired exception since the offset is greater than
+ the number of characters in the string.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throw_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<deleteData obj="child" offset="40" count="3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.xml b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.xml
new file mode 100644
index 0000000..b182153
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataindexsizeerrinsertdataoffsetnegative">
+<metadata>
+<title>hc_characterdataIndexSizeErrInsertDataOffsetNegative</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "insertData(offset,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its insertData"(offset,arg)"
+ method with offset=-5 and arg="ABC". It should raise
+ the desired exception since the offset is negative.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-E5CBA7FB')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<replaceData obj="child" offset="-5" arg='"ABC"' count="3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.xml b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.xml
new file mode 100644
index 0000000..28f86ff
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataindexsizeerrreplacedatacountnegative">
+<metadata>
+<title>hc_characterdataIndexSizeErrReplaceDataCountNegative</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceData(offset,count,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified count
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its
+ "replaceData(offset,count,arg) method with offset=10
+ and count=-3 and arg="ABC". It should raise the
+ desired exception since the count is negative.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="badString" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<substringData var="badString" obj="child" offset="10" count="-3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.xml b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.xml
new file mode 100644
index 0000000..7a637d9
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataindexsizeerrreplacedataoffsetgreater">
+<metadata>
+<title>hc_characterdataIndexSizeErrReplaceDataOffsetGreater</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceData(offset,count,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater than the length of the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its
+ "replaceData(offset,count,arg) method with offset=40
+ and count=3 and arg="ABC". It should raise the
+ desired exception since the offset is greater than the
+ length of the string.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=242"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throw_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<deleteData obj="child" offset="40" count="3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.xml b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.xml
new file mode 100644
index 0000000..2da064f
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataindexsizeerrreplacedataoffsetnegative">
+<metadata>
+<title>hc_characterdataIndexSizeErrReplaceDataOffsetNegative</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceData(offset,count,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its
+ "replaceData(offset,count,arg) method with offset=-5
+ and count=3 and arg="ABC". It should raise the
+ desired exception since the offset is negative.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-E5CBA7FB')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<replaceData obj="child" offset="-5" count="3" arg='"ABC"'/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.xml b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.xml
new file mode 100644
index 0000000..7400e58
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataindexsizeerrsubstringcountnegative">
+<metadata>
+<title>hc_characterdataIndexSizeErrSubstringCountNegative</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "substringData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified count
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "substringData(offset,count)
+ method with offset=10 and count=-3. It should raise the
+ desired exception since the count is negative.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="badSubstring" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<substringData var="badSubstring" obj="child" offset="10" count="-3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.xml b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.xml
new file mode 100644
index 0000000..382330b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataindexsizeerrsubstringnegativeoffset">
+<metadata>
+<title>hc_characterdataIndexSizeErrSubstringNegativeOffset</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "substringData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "substringData(offset,count)
+ method with offset=-5 and count=3. It should raise the
+ desired exception since the offset is negative.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="badString" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<substringData var="badString" obj="child" offset="-5" count="3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.xml b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.xml
new file mode 100644
index 0000000..702db8b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdataindexsizeerrsubstringoffsetgreater">
+<metadata>
+<title>hc_characterdataIndexSizeErrSubstringOffsetGreater</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "substringData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater than the number of characters in the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "substringData(offset,count)
+ method with offset=40 and count=3. It should raise the
+ desired exception since the offsets value is greater
+ than the length.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="badString" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<assertDOMException id="throw_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<substringData var="badString" obj="child" offset="40" count="3"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatainsertdatabeginning.xml b/test/testcases/tests/level1/core/hc_characterdatainsertdatabeginning.xml
new file mode 100644
index 0000000..0df7aaf
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatainsertdatabeginning.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatainsertdatabeginning">
+<metadata>
+<title>hc_characterdataInsertDataBeginning</title>
+<creator>Curt Arnold</creator>
+<description>
+The "insertData(offset,arg)" method will insert a string
+at the specified character offset. Insert the data at
+the beginning of the character data.
+
+Retrieve the character data from the second child of
+the first employee. The "insertData(offset,arg)"
+method is then called with offset=0 and arg="Mss.".
+The method should insert the string "Mss." at position 0.
+The new value of the character data should be
+"Mss. Margaret Martin".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--insertData-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"strong"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<insertData obj="child" offset="0" arg='"Mss. "'/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"Mss. Margaret Martin"' id="characterdataInsertDataBeginningAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatainsertdataend.xml b/test/testcases/tests/level1/core/hc_characterdatainsertdataend.xml
new file mode 100644
index 0000000..9e0bcc2
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatainsertdataend.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatainsertdataend">
+<metadata>
+<title>hc_characterdataInsertDataEnd</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "insertData(offset,arg)" method will insert a string
+ at the specified character offset. Insert the data at
+ the end of the character data.
+
+ Retrieve the character data from the second child of
+ the first employee. The "insertData(offset,arg)"
+ method is then called with offset=15 and arg=", Esquire".
+ The method should insert the string ", Esquire" at
+ position 15. The new value of the character data should
+ be "Margaret Martin, Esquire".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"strong"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<insertData obj="child" offset="15" arg='", Esquire"'/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"Margaret Martin, Esquire"' id="characterdataInsertDataEndAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatainsertdatamiddle.xml b/test/testcases/tests/level1/core/hc_characterdatainsertdatamiddle.xml
new file mode 100644
index 0000000..9c4d6a5
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatainsertdatamiddle.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatainsertdatamiddle">
+<metadata>
+<title>hc_characterdataInsertDataMiddle</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "insertData(offset,arg)" method will insert a string
+ at the specified character offset. Insert the data in
+ the middle of the character data.
+
+ Retrieve the character data from the second child of
+ the first employee. The "insertData(offset,arg)"
+ method is then called with offset=9 and arg="Ann".
+ The method should insert the string "Ann" at position 9.
+ The new value of the character data should be
+ "Margaret Ann Martin".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"strong"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<insertData obj="child" offset="9" arg='"Ann "'/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"Margaret Ann Martin"' id="characterdataInsertDataMiddleAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatareplacedatabegining.xml b/test/testcases/tests/level1/core/hc_characterdatareplacedatabegining.xml
new file mode 100644
index 0000000..64e3bad
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatareplacedatabegining.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatareplacedatabegining">
+<metadata>
+<title>hc_characterdataReplaceDataBeginning</title>
+<creator>Curt Arnold</creator>
+<description>
+The "replaceData(offset,count,arg)" method replaces the
+characters starting at the specified offset with the
+specified string. Test for replacement in the
+middle of the data.
+
+Retrieve the character data from the last child of the
+first employee. The "replaceData(offset,count,arg)"
+method is then called with offset=5 and count=5 and
+arg="South". The method should replace characters five
+thru 9 of the character data with "South".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--replaceData-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<replaceData obj="child" offset="0" count="4" arg='"2500"'/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"2500 North Ave. Dallas, Texas 98551"' id="characterdataReplaceDataBeginingAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatareplacedataend.xml b/test/testcases/tests/level1/core/hc_characterdatareplacedataend.xml
new file mode 100644
index 0000000..23d1163
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatareplacedataend.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatareplacedataend">
+<metadata>
+<title>hc_characterdataReplaceDataEnd</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceData(offset,count,arg)" method replaces the
+ characters starting at the specified offset with the
+ specified string. Test for replacement at the
+ end of the data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=30 and count=5 and
+ arg="98665". The method should replace characters 30
+ thru 34 of the character data with "98665".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<replaceData obj="child" offset="30" count="5" arg='"98665"'/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"1230 North Ave. Dallas, Texas 98665"' id="characterdataReplaceDataEndAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatareplacedataexceedslengthofarg.xml b/test/testcases/tests/level1/core/hc_characterdatareplacedataexceedslengthofarg.xml
new file mode 100644
index 0000000..36ee700
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatareplacedataexceedslengthofarg.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatareplacedataexceedslengthofarg">
+<metadata>
+<title>hc_characterdataReplaceDataExceedsLengthOfArg</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceData(offset,count,arg)" method replaces the
+ characters starting at the specified offset with the
+ specified string. Test the situation where the length
+ of the arg string is greater than the specified offset.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=0 and count=4 and
+ arg="260030". The method should replace characters one
+ thru four with "260030". Note that the length of the
+ specified string is greater that the specified offset.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<replaceData obj="child" offset="0" count="4" arg='"260030"'/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"260030 North Ave. Dallas, Texas 98551"' id="characterdataReplaceDataExceedsLengthOfArgAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatareplacedataexceedslengthofdata.xml b/test/testcases/tests/level1/core/hc_characterdatareplacedataexceedslengthofdata.xml
new file mode 100644
index 0000000..fa03bd5
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatareplacedataexceedslengthofdata.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatareplacedataexceedslengthofdata">
+<metadata>
+<title>hc_characterdataReplaceDataExceedsLengthOfData</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the sum of the offset and count exceeds the length then
+ all the characters to the end of the data are replaced.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=0 and count=50 and
+ arg="2600". The method should replace all the characters
+ with "2600". This is because the sum of the offset and
+ count exceeds the length of the character data.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<replaceData obj="child" offset="0" count="50" arg='"2600"'/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"2600"' id="characterdataReplaceDataExceedsLengthOfDataAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatareplacedatamiddle.xml b/test/testcases/tests/level1/core/hc_characterdatareplacedatamiddle.xml
new file mode 100644
index 0000000..d93000b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatareplacedatamiddle.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatareplacedatamiddle">
+<metadata>
+<title>hc_characterdataReplaceDataMiddle</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceData(offset,count,arg)" method replaces the
+ characters starting at the specified offset with the
+ specified string. Test for replacement in the
+ middle of the data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=5 and count=5 and
+ arg="South". The method should replace characters five
+ thru 9 of the character data with "South".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<replaceData obj="child" offset="5" count="5" arg='"South"'/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"1230 South Ave. Dallas, Texas 98551"' id="characterdataReplaceDataMiddleAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatasetnodevalue.xml b/test/testcases/tests/level1/core/hc_characterdatasetnodevalue.xml
new file mode 100644
index 0000000..3f0a88f
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatasetnodevalue.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatasetnodevalue">
+<metadata>
+<title>hc_characterdataSetNodeValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setNodeValue()" method changes the character data
+ currently stored in the node.
+ Retrieve the character data from the second child
+ of the first employee and invoke the "setNodeValue()"
+ method, call "getData()" and compare.
+</description>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="childData" type="DOMString"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"strong"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<nodeValue obj="child" value='"Marilyn Martin"'/>
+<data interface="CharacterData" obj="child" var="childData"/>
+<assertEquals actual="childData" expected='"Marilyn Martin"' id="data" ignoreCase="false"/>
+<nodeValue obj="child" var="childValue"/>
+<assertEquals actual="childValue" expected='"Marilyn Martin"' id="value" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatasubstringexceedsvalue.xml b/test/testcases/tests/level1/core/hc_characterdatasubstringexceedsvalue.xml
new file mode 100644
index 0000000..0651a6d
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatasubstringexceedsvalue.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatasubstringexceedsvalue">
+<metadata>
+<title>hc_characterdataSubStringExceedsValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the sum of the "offset" and "count" exceeds the
+ "length" then the "substringData(offset,count)" method
+ returns all the characters to the end of the data.
+
+ Retrieve the character data from the second child
+ of the first employee and access part of the data
+ by using the substringData(offset,count) method
+ with offset=9 and count=10. The method should return
+ the substring "Martin" since offset+count &gt; length
+ (19 &gt; 15).
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--CharacterData.substringData-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="substring" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"strong"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<substringData obj="child" var="substring" offset="9" count="10"/>
+<assertEquals actual="substring" expected='"Martin"' id="characterdataSubStringExceedsValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_characterdatasubstringvalue.xml b/test/testcases/tests/level1/core/hc_characterdatasubstringvalue.xml
new file mode 100644
index 0000000..477ac20
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_characterdatasubstringvalue.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_characterdatasubstringvalue">
+<metadata>
+<title>hc_characterdataSubStringValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "substringData(offset,count)" method returns the
+ specified string.
+
+ Retrieve the character data from the second child
+ of the first employee and access part of the data
+ by using the substringData(offset,count) method. The
+ method should return the specified substring starting
+ at position "offset" and extract "count" characters.
+ The method should return the string "Margaret".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--CharacterData.substringData-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="child" type="CharacterData"/>
+<var name="substring" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"strong"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="nameNode"/>
+<firstChild interface="Node" obj="nameNode" var="child"/>
+<substringData obj="child" var="substring" offset="0" count="8"/>
+<assertEquals actual="substring" expected='"Margaret"' id="characterdataSubStringValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_commentgetcomment.xml b/test/testcases/tests/level1/core/hc_commentgetcomment.xml
new file mode 100644
index 0000000..b0f3eca
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_commentgetcomment.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_commentgetcomment">
+<metadata>
+<title>hc_commentgetcomment</title>
+<creator>Curt Arnold</creator>
+<description>
+ A comment is all the characters between the starting
+ '&lt;!--' and ending '--&gt;'
+ Retrieve the nodes of the DOM document. Search for a
+ comment node and the content is its value.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!-- Comment interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1334481328"/>
+<!--Node.nodeName attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<!--Node.nodeValue attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<!--Node.nodeType attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=509"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="childValue" type="DOMString"/>
+<var name="commentCount" type="int" value="0"/>
+<var name="childType" type="int"/>
+<var name="attributes" type="NamedNodeMap"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<childNodes obj="doc" var="elementList"/>
+<for-each collection="elementList" member="child">
+<nodeType obj="child" var="childType"/>
+<if>
+<equals actual="childType" expected="8" ignoreCase="false"/>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected='"#comment"' ignoreCase="false" id="nodeName"/>
+<nodeValue obj="child" var="childValue"/>
+<assertEquals actual="childValue" expected='" This is comment number 1."' id="nodeValue" ignoreCase="false"/>
+<attributes var="attributes" obj="child"/>
+<assertNull actual="attributes" id="attributes"/>
+<increment var="commentCount" value="1"/>
+</if>
+</for-each>
+<assertTrue id="atMostOneComment"><less actual="commentCount" expected="2"/></assertTrue>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentcreateattribute.xml b/test/testcases/tests/level1/core/hc_documentcreateattribute.xml
new file mode 100644
index 0000000..67a2f34
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentcreateattribute.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentcreateattribute">
+<metadata>
+<title>hc_documentcreateattribute</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the entire DOM document and invoke its
+ "createAttribute(name)" method. It should create a
+ new Attribute node with the given name. The name, value
+ and type of the newly created object are retrieved and
+ output.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=243"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newAttrNode" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<var name="attrName" type="DOMString"/>
+<var name="attrType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttribute obj="doc" var="newAttrNode" name='"title"'/>
+<nodeValue obj="newAttrNode" var="attrValue"/>
+<assertEquals actual="attrValue" expected='""' ignoreCase="false" id="value"/>
+<nodeName obj="newAttrNode" var="attrName"/>
+<assertEquals actual="attrName" expected='"title"' ignoreCase="auto" context="attribute" id="name"/>
+<nodeType obj="newAttrNode" var="attrType"/>
+<assertEquals actual="attrType" expected="2" ignoreCase="false" id="type"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentcreatecomment.xml b/test/testcases/tests/level1/core/hc_documentcreatecomment.xml
new file mode 100644
index 0000000..106fa06
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentcreatecomment.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentcreatecomment">
+<metadata>
+<title>hc_documentCreateComment</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "createComment(data)" method creates a new Comment
+ node given the specified string.
+ Retrieve the entire DOM document and invoke its
+ "createComment(data)" method. It should create a new
+ Comment node whose "data" is the specified string.
+ The content, name and type are retrieved and output.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1334481328"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newCommentNode" type="Comment"/>
+<var name="newCommentValue" type="DOMString"/>
+<var name="newCommentName" type="DOMString"/>
+<var name="newCommentType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createComment obj="doc" var="newCommentNode" data='"This is a new Comment node"'/>
+<nodeValue obj="newCommentNode" var="newCommentValue"/>
+<assertEquals actual="newCommentValue" expected='"This is a new Comment node"' ignoreCase="false" id="value"/>
+<nodeName obj="newCommentNode" var="newCommentName"/>
+<assertEquals actual="newCommentName" expected='"#comment"' ignoreCase="false" id="strong"/>
+<nodeType obj="newCommentNode" var="newCommentType"/>
+<assertEquals actual="newCommentType" expected="8" ignoreCase="false" id="type"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentcreatedocumentfragment.xml b/test/testcases/tests/level1/core/hc_documentcreatedocumentfragment.xml
new file mode 100644
index 0000000..b4bb21a
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentcreatedocumentfragment.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentcreatedocumentfragment">
+<metadata>
+<title>hc_documentCreateDocumentFragment</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "createDocumentFragment()" method creates an empty
+ DocumentFragment object.
+ Retrieve the entire DOM document and invoke its
+ "createDocumentFragment()" method. The content, name,
+ type and value of the newly created object are output.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-35CB04B5"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDocFragment" type="DocumentFragment"/>
+<var name="children" type="NodeList"/>
+<var name="length" type="int"/>
+<var name="newDocFragmentName" type="DOMString"/>
+<var name="newDocFragmentType" type="int"/>
+<var name="newDocFragmentValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="newDocFragment"/>
+<childNodes obj="newDocFragment" var="children"/>
+<length interface="NodeList" obj="children" var="length"/>
+<assertEquals actual="length" expected="0" ignoreCase="false" id="length"/>
+<nodeName obj="newDocFragment" var="newDocFragmentName"/>
+<assertEquals actual="newDocFragmentName" expected='"#document-fragment"' ignoreCase="false" id="strong"/>
+<nodeType obj="newDocFragment" var="newDocFragmentType"/>
+<assertEquals actual="newDocFragmentType" expected="11" ignoreCase="false" id="type"/>
+<nodeValue obj="newDocFragment" var="newDocFragmentValue"/>
+<assertNull actual="newDocFragmentValue" id="value"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentcreateelement.xml b/test/testcases/tests/level1/core/hc_documentcreateelement.xml
new file mode 100644
index 0000000..6204b3a
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentcreateelement.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentcreateelement">
+<metadata>
+<title>hc_documentCreateElement</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "createElement(tagName)" method creates an Element
+ of the type specified.
+ Retrieve the entire DOM document and invoke its
+ "createElement(tagName)" method with tagName="acronym".
+ The method should create an instance of an Element node
+ whose tagName is "acronym". The NodeName, NodeType
+ and NodeValue are returned.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newElement" type="Element"/>
+<var name="newElementName" type="DOMString"/>
+<var name="newElementType" type="int"/>
+<var name="newElementValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElement obj="doc" var="newElement" tagName='"acronym"'/>
+<nodeName obj="newElement" var="newElementName"/>
+<assertEquals actual="newElementName" expected='"acronym"' ignoreCase="auto" id="strong"/>
+<nodeType obj="newElement" var="newElementType"/>
+<assertEquals actual="newElementType" expected="1" ignoreCase="false" id="type"/>
+<nodeValue obj="newElement" var="newElementValue"/>
+<assertNull actual="newElementValue" id="valueInitiallyNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentcreateelementcasesensitive.xml b/test/testcases/tests/level1/core/hc_documentcreateelementcasesensitive.xml
new file mode 100644
index 0000000..62051cf
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentcreateelementcasesensitive.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentcreateelementcasesensitive">
+<metadata>
+<title>hc_documentCreateElementCaseSensitive</title>
+<creator>Curt Arnold</creator>
+<description>
+ The tagName parameter in the "createElement(tagName)"
+ method is case-sensitive for XML documents.
+ Retrieve the entire DOM document and invoke its
+ "createElement(tagName)" method twice. Once for tagName
+ equal to "acronym" and once for tagName equal to "ACRONYM"
+ Each call should create a distinct Element node. The
+ newly created Elements are then assigned attributes
+ that are retrieved.
+
+ Modified on 27 June 2003 to avoid setting an invalid style
+ values and checked the node names to see if they matched expectations.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=243"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newElement1" type="Element"/>
+<var name="newElement2" type="Element"/>
+<var name="attribute1" type="DOMString"/>
+<var name="attribute2" type="DOMString"/>
+<var name="nodeName1" type="DOMString"/>
+<var name="nodeName2" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElement obj="doc" var="newElement1" tagName='"ACRONYM"'/>
+<createElement obj="doc" var="newElement2" tagName='"acronym"'/>
+<setAttribute obj="newElement1" name='"lang"' value='"EN"'/>
+<setAttribute obj="newElement2" name='"title"' value='"Dallas"'/>
+<getAttribute obj="newElement1" var="attribute1" name='"lang"'/>
+<getAttribute obj="newElement2" var="attribute2" name='"title"'/>
+<assertEquals actual="attribute1" expected='"EN"' ignoreCase="false" id="attrib1"/>
+<assertEquals actual="attribute2" expected='"Dallas"' ignoreCase="false" id="attrib2"/>
+<nodeName var="nodeName1" obj="newElement1"/>
+<nodeName var="nodeName2" obj="newElement2"/>
+<assertEquals actual="nodeName1" expected='"ACRONYM"' ignoreCase="auto" id="nodeName1"/>
+<assertEquals actual="nodeName2" expected='"acronym"' ignoreCase="auto" id="nodeName2"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentcreatetextnode.xml b/test/testcases/tests/level1/core/hc_documentcreatetextnode.xml
new file mode 100644
index 0000000..94bed5c
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentcreatetextnode.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentcreatetextnode">
+<metadata>
+<title>hc_documentCreateTextNode</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "createTextNode(data)" method creates a Text node
+ given the specfied string.
+ Retrieve the entire DOM document and invoke its
+ "createTextNode(data)" method. It should create a
+ new Text node whose "data" is the specified string.
+ The NodeName and NodeType are also checked.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1975348127"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newTextNode" type="Text"/>
+<var name="newTextName" type="DOMString"/>
+<var name="newTextValue" type="DOMString"/>
+<var name="newTextType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createTextNode obj="doc" var="newTextNode" data='"This is a new Text node"'/>
+<nodeValue obj="newTextNode" var="newTextValue"/>
+<assertEquals actual="newTextValue" expected='"This is a new Text node"' ignoreCase="false" id="value"/>
+<nodeName obj="newTextNode" var="newTextName"/>
+<assertEquals actual="newTextName" expected='"#text"' ignoreCase="false" id="strong"/>
+<nodeType obj="newTextNode" var="newTextType"/>
+<assertEquals actual="newTextType" expected="3" ignoreCase="false" id="type"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentgetdoctype.xml b/test/testcases/tests/level1/core/hc_documentgetdoctype.xml
new file mode 100644
index 0000000..34ffaf5
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentgetdoctype.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentgetdoctype">
+<metadata>
+<title>hc_documentgetdoctype</title>
+<creator>Curt Arnold</creator>
+<description>
+Access Document.doctype for hc_staff, if not text/html should return DocumentType node.
+HTML implementations may return null.
+</description>
+<date qualifier="created">2004-01-27</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A31"/>
+<!-- TODO: link to errata -->
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="docTypeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="attributes" type="NamedNodeMap"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<if><not><contentType type="text/html"/></not>
+ <assertNotNull actual="docType" id="docTypeNotNull"/>
+</if>
+<if><notNull obj="docType"/>
+ <name interface="DocumentType" obj="docType" var="docTypeName"/>
+ <if><contentType type="image/svg+xml"/>
+ <assertEquals actual="docTypeName" expected='"svg"' id="nodeNameSVG" ignoreCase="false"/>
+ <else>
+ <assertEquals actual="docTypeName" expected='"html"' id="nodeName" ignoreCase="false"/>
+ </else>
+ </if>
+ <nodeValue obj="docType" var="nodeValue"/>
+ <assertNull actual="nodeValue" id="nodeValue"/>
+ <attributes var="attributes" obj="docType"/>
+ <assertNull actual="attributes" id="attributes"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentgetelementsbytagnamelength.xml b/test/testcases/tests/level1/core/hc_documentgetelementsbytagnamelength.xml
new file mode 100644
index 0000000..d92ebae
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentgetelementsbytagnamelength.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentgetelementsbytagnamelength">
+<metadata>
+<title>hc_documentGetElementsByTagNameLength</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getElementsByTagName(tagName)" method returns a
+ NodeList of all the Elements with a given tagName.
+
+ Retrieve the entire DOM document and invoke its
+ "getElementsByTagName(tagName)" method with tagName
+ equal to "strong". The method should return a NodeList
+ that contains 5 elements.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-A6C9094"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nameList" type="NodeList"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nameList" tagname='"strong"'/>
+<assertSize collection="nameList" size="5" id="documentGetElementsByTagNameLengthAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentgetelementsbytagnametotallength.xml b/test/testcases/tests/level1/core/hc_documentgetelementsbytagnametotallength.xml
new file mode 100644
index 0000000..7f290be
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentgetelementsbytagnametotallength.xml
@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentgetelementsbytagnametotallength">
+<metadata>
+<title>hc_documentgetelementsbytagnametotallength</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the entire DOM document and invoke its
+ "getElementsByTagName(tagName)" method with tagName
+ equal to "*". The method should return a NodeList
+ that contains all the elements of the document.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-A6C9094"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=251"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nameList" type="NodeList"/>
+<var name="expectedNames" type="List">
+ <member>"html"</member>
+ <member>"head"</member>
+ <member>"meta"</member>
+ <member>"title"</member>
+ <member>"script"</member>
+ <member>"script"</member>
+ <member>"script"</member>
+ <member>"body"</member>
+ <member>"p"</member>
+ <member>"em"</member>
+ <member>"strong"</member>
+ <member>"code"</member>
+ <member>"sup"</member>
+ <member>"var"</member>
+ <member>"acronym"</member>
+ <member>"p"</member>
+ <member>"em"</member>
+ <member>"strong"</member>
+ <member>"code"</member>
+ <member>"sup"</member>
+ <member>"var"</member>
+ <member>"acronym"</member>
+ <member>"p"</member>
+ <member>"em"</member>
+ <member>"strong"</member>
+ <member>"code"</member>
+ <member>"sup"</member>
+ <member>"var"</member>
+ <member>"acronym"</member>
+ <member>"p"</member>
+ <member>"em"</member>
+ <member>"strong"</member>
+ <member>"code"</member>
+ <member>"sup"</member>
+ <member>"var"</member>
+ <member>"acronym"</member>
+ <member>"p"</member>
+ <member>"em"</member>
+ <member>"strong"</member>
+ <member>"code"</member>
+ <member>"sup"</member>
+ <member>"var"</member>
+ <member>"acronym"</member>
+</var>
+<var name="svgExpectedNames" type="List">
+ <member>"svg"</member>
+ <member>"rect"</member>
+ <member>"script"</member>
+ <member>"head"</member>
+ <member>"meta"</member>
+ <member>"title"</member>
+ <member>"body"</member>
+ <member>"p"</member>
+ <member>"em"</member>
+ <member>"strong"</member>
+ <member>"code"</member>
+ <member>"sup"</member>
+ <member>"var"</member>
+ <member>"acronym"</member>
+ <member>"p"</member>
+ <member>"em"</member>
+ <member>"strong"</member>
+ <member>"code"</member>
+ <member>"sup"</member>
+ <member>"var"</member>
+ <member>"acronym"</member>
+ <member>"p"</member>
+ <member>"em"</member>
+ <member>"strong"</member>
+ <member>"code"</member>
+ <member>"sup"</member>
+ <member>"var"</member>
+ <member>"acronym"</member>
+ <member>"p"</member>
+ <member>"em"</member>
+ <member>"strong"</member>
+ <member>"code"</member>
+ <member>"sup"</member>
+ <member>"var"</member>
+ <member>"acronym"</member>
+ <member>"p"</member>
+ <member>"em"</member>
+ <member>"strong"</member>
+ <member>"code"</member>
+ <member>"sup"</member>
+ <member>"var"</member>
+ <member>"acronym"</member>
+</var>
+<var name="actualNames" type="List"/>
+<var name="thisElement" type="Element"/>
+<var name="thisTag" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nameList" tagname='"*"'/>
+<for-each collection="nameList" member="thisElement">
+ <tagName var="thisTag" obj="thisElement"/>
+ <append collection="actualNames" item="thisTag"/>
+</for-each>
+<if><contentType type="image/svg+xml"/>
+<assertEquals expected="svgExpectedNames" actual="actualNames" ignoreCase="auto" id="svgTagNames"/>
+<else>
+<assertEquals expected="expectedNames" actual="actualNames" ignoreCase="auto" id="tagNames"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentgetelementsbytagnamevalue.xml b/test/testcases/tests/level1/core/hc_documentgetelementsbytagnamevalue.xml
new file mode 100644
index 0000000..77d7e9d
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentgetelementsbytagnamevalue.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentgetelementsbytagnamevalue">
+<metadata>
+<title>hc_documentGetElementsByTagNameValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getElementsByTagName(tagName)" method returns a
+ NodeList of all the Elements with a given tagName
+ in a pre-order traversal of the tree.
+
+ Retrieve the entire DOM document and invoke its
+ "getElementsByTagName(tagName)" method with tagName
+ equal to "strong". The method should return a NodeList
+ that contains 5 elements. The FOURTH item in the
+ list is retrieved and output.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-A6C9094"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nameList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nameList" tagname='"strong"'/>
+<item interface="NodeList" obj="nameList" var="nameNode" index="3"/>
+<firstChild interface="Node" obj="nameNode" var="firstChild"/>
+<nodeValue obj="firstChild" var="childValue"/>
+<assertEquals actual="childValue" expected='"Jeny Oconnor"' id="documentGetElementsByTagNameValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentgetimplementation.xml b/test/testcases/tests/level1/core/hc_documentgetimplementation.xml
new file mode 100644
index 0000000..bfdf26b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentgetimplementation.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentgetimplementation">
+<metadata>
+<title>hc_documentgetimplementation</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the entire DOM document and invoke its
+ "getImplementation()" method. If contentType="text/html",
+ DOMImplementation.hasFeature("HTML","1.0") should be true.
+ Otherwise, DOMImplementation.hasFeature("XML", "1.0")
+ should be true.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1B793EBA"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=245"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docImpl" type="DOMImplementation"/>
+<var name="xmlstate" type="boolean"/>
+<var name="htmlstate" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation obj="doc" var="docImpl"/>
+<hasFeature obj="docImpl" var="xmlstate" feature='"XML"' version='"1.0"'/>
+<hasFeature obj="docImpl" var="htmlstate" feature='"HTML"' version='"1.0"'/>
+<if><contentType type="text/html"/>
+<assertTrue actual="htmlstate" id="supports_HTML_1.0"/>
+<else>
+<assertTrue actual="xmlstate" id="supports_XML_1.0"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentgetrootnode.xml b/test/testcases/tests/level1/core/hc_documentgetrootnode.xml
new file mode 100644
index 0000000..6e8dec8
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentgetrootnode.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentgetrootnode">
+<metadata>
+<title>hc_documentgetrootnode</title>
+<creator>Curt Arnold</creator>
+<description>
+ Load a document and invoke its
+ "getDocumentElement()" method.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--documentElement attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-87CD092"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=251"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="root" type="Element"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<nodeName obj="root" var="rootName"/>
+<if><contentType type="image/svg+xml"/>
+<assertEquals actual="rootName" expected='"svg"' id="svgTagName" ignoreCase="false"/>
+<else>
+<assertEquals actual="rootName" expected='"html"' id="docElemName" ignoreCase="auto"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.xml b/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.xml
new file mode 100644
index 0000000..0a73b4e
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentinvalidcharacterexceptioncreateattribute">
+<metadata>
+<title>hc_documentInvalidCharacterExceptionCreateAttribute</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "createAttribute(tagName)" method raises an
+ INVALID_CHARACTER_ERR DOMException if the specified
+ tagName contains an invalid character.
+
+ Retrieve the entire DOM document and invoke its
+ "createAttribute(tagName)" method with the tagName equal
+ to the string "invalid^Name". Due to the invalid
+ character the desired EXCEPTION should be raised.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1084891198')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="createdAttr" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createAttribute var="createdAttr" obj="doc" name='"invalid^Name"'/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.xml b/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.xml
new file mode 100644
index 0000000..e9b70f8
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentinvalidcharacterexceptioncreateattribute1">
+<metadata>
+<title>hc_documentinvalidcharacterexceptioncreateattribute1</title>
+<creator>Curt Arnold</creator>
+<description>
+Creating an attribute with an empty name should cause an INVALID_CHARACTER_ERR.
+</description>
+<date qualifier="created">2004-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1084891198')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=525"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="createdAttr" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createAttribute var="createdAttr" obj="doc" name='""'/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateelement.xml b/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateelement.xml
new file mode 100644
index 0000000..9adca61
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateelement.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentinvalidcharacterexceptioncreateelement">
+<metadata>
+<title>hc_documentInvalidCharacterExceptionCreateElement</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "createElement(tagName)" method raises an
+ INVALID_CHARACTER_ERR DOMException if the specified
+ tagName contains an invalid character.
+
+ Retrieve the entire DOM document and invoke its
+ "createElement(tagName)" method with the tagName equal
+ to the string "invalid^Name". Due to the invalid
+ character the desired EXCEPTION should be raised.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-2141741547')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="badElement" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createElement var="badElement" obj="doc" tagName='"invalid^Name"'/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.xml b/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.xml
new file mode 100644
index 0000000..3f0bc53
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_documentinvalidcharacterexceptioncreateelement1">
+<metadata>
+<title>hc_documentinvalidcharacterexceptioncreateelement1</title>
+<creator>Curt Arnold</creator>
+<description>
+Creating an element with an empty name should cause an INVALID_CHARACTER_ERR.
+</description>
+<date qualifier="created">2004-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-2141741547')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=525"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="badElement" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createElement var="badElement" obj="doc" tagName='""'/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_domimplementationfeaturenoversion.xml b/test/testcases/tests/level1/core/hc_domimplementationfeaturenoversion.xml
new file mode 100644
index 0000000..9fbec5a
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_domimplementationfeaturenoversion.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_domimplementationfeaturenoversion">
+<metadata>
+<title>hc_domimplementationfeaturenoversion</title>
+<creator>Curt Arnold</creator>
+<description>
+ Load a document and invoke its
+ "getImplementation()" method. This should create a
+ DOMImplementation object whose "hasFeature(feature,
+ version)" method is invoked with version equal to "".
+ If the version is not specified, supporting any version
+ feature will cause the method to return "true".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7"/>
+<subject resource="http://www.w3.org/2000/11/DOM-Level-2-errata#core-14"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=245"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<if><contentType type="text/html"/>
+<hasFeature obj="domImpl" var="state" feature='"HTML"' version='""'/>
+<else>
+<hasFeature obj="domImpl" var="state" feature='"XML"' version='""'/>
+</else>
+</if>
+<assertTrue actual="state" id="hasFeatureBlank"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_domimplementationfeaturenull.xml b/test/testcases/tests/level1/core/hc_domimplementationfeaturenull.xml
new file mode 100644
index 0000000..e80d15f
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_domimplementationfeaturenull.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_domimplementationfeaturenull">
+<metadata>
+<title>hc_domimplementationfeaturenull</title>
+<creator>Curt Arnold</creator>
+<description>
+ Load a document and invoke its
+ "getImplementation()" method. This should create a
+ DOMImplementation object whose "hasFeature(feature,
+ version)" method is invoked with version equal to null.
+ If the version is not specified, supporting any version
+ feature will cause the method to return "true".
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7"/>
+<subject resource="http://www.w3.org/2000/11/DOM-Level-2-errata#core-14"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=245"/>
+</metadata>
+<implementationAttribute name="hasNullString" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<!-- version (omitted) = null -->
+<if><contentType type="text/html"/>
+<hasFeature obj="domImpl" var="state" feature='"HTML"'/>
+<assertTrue actual="state" id="supports_HTML_null"/>
+<else>
+<hasFeature obj="domImpl" var="state" feature='"XML"'/>
+<assertTrue actual="state" id="supports_XML_null"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_domimplementationfeaturexml.xml b/test/testcases/tests/level1/core/hc_domimplementationfeaturexml.xml
new file mode 100644
index 0000000..e9da496
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_domimplementationfeaturexml.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_domimplementationfeaturexml">
+<metadata>
+<title>hc_domimplementationfeaturexml</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the entire DOM document and invoke its
+ "getImplementation()" method. This should create a
+ DOMImplementation object whose "hasFeature(feature,
+ version)" method is invoked with "feature" equal to "html" or "xml".
+ The method should return a boolean "true".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=245"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<if><contentType type="text/html"/>
+<hasFeature obj="domImpl" var="state" feature='"html"' version='"1.0"'/>
+<assertTrue actual="state" id="supports_html_1.0"/>
+<else>
+<hasFeature obj="domImpl" var="state" feature='"xml"' version='"1.0"'/>
+<assertTrue actual="state" id="supports_xml_1.0"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementaddnewattribute.xml b/test/testcases/tests/level1/core/hc_elementaddnewattribute.xml
new file mode 100644
index 0000000..e7a494d
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementaddnewattribute.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementaddnewattribute">
+<metadata>
+<title>hc_elementAddNewAttribute</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setAttribute(name,value)" method adds a new attribute
+ to the Element
+
+ Retrieve the last child of the last employee, then
+ add an attribute to it by invoking the
+ "setAttribute(name,value)" method. It should create
+ a "strong" attribute with an assigned value equal to
+ "value".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--setAttribute-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=243"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="4" var="testEmployee"/>
+<setAttribute obj="testEmployee" name='"lang"' value='"EN-us"'/>
+<getAttribute obj="testEmployee" var="attrValue" name='"lang"'/>
+<assertEquals actual="attrValue" expected='"EN-us"' id="attrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementassociatedattribute.xml b/test/testcases/tests/level1/core/hc_elementassociatedattribute.xml
new file mode 100644
index 0000000..c79b153
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementassociatedattribute.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementassociatedattribute">
+<metadata>
+<title>hc_elementAssociatedAttribute</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the first attribute from the last child of
+ the first employee and invoke the "getSpecified()"
+ method. This test is only intended to show that
+ Elements can actually have attributes. This test uses
+ the "getNamedItem(name)" method from the NamedNodeMap
+ interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="specified" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name='"title"'/>
+<specified obj="domesticAttr" var="specified"/>
+<assertTrue actual="specified" id="acronymTitleSpecified"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementchangeattributevalue.xml b/test/testcases/tests/level1/core/hc_elementchangeattributevalue.xml
new file mode 100644
index 0000000..cabca5b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementchangeattributevalue.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementchangeattributevalue">
+<metadata>
+<title>hc_elementChangeAttributeValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setAttribute(name,value)" method adds a new attribute
+ to the Element. If the "strong" is already present, then
+ its value should be changed to the new one that is in
+ the "value" parameter.
+
+ Retrieve the last child of the fourth employee, then add
+ an attribute to it by invoking the
+ "setAttribute(name,value)" method. Since the name of the
+ used attribute("class") is already present in this
+ element, then its value should be changed to the new one
+ of the "value" parameter.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--setAttribute-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="3" var="testEmployee"/>
+<setAttribute obj="testEmployee" name='"class"' value='"Neither"'/>
+<getAttribute obj="testEmployee" var="attrValue" name='"class"'/>
+<assertEquals actual="attrValue" expected='"Neither"' id="elementChangeAttributeValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementcreatenewattribute.xml b/test/testcases/tests/level1/core/hc_elementcreatenewattribute.xml
new file mode 100644
index 0000000..aac3a12
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementcreatenewattribute.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementcreatenewattribute">
+<metadata>
+<title>hc_elementCreateNewAttribute</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setAttributeNode(newAttr)" method adds a new
+ attribute to the Element.
+
+ Retrieve first address element and add
+ a new attribute node to it by invoking its
+ "setAttributeNode(newAttr)" method. This test makes use
+ of the "createAttribute(name)" method from the Document
+ interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--setAttributeNode-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=243"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<var name="newAttribute" type="Attr"/>
+<var name="oldAttr" type="Attr"/>
+<var name="districtAttr" type="Attr"/>
+<var name="attrVal" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddress"/>
+<createAttribute obj="doc" var="newAttribute" name='"lang"'/>
+<setAttributeNode obj="testAddress" var="oldAttr" newAttr="newAttribute"/>
+<assertNull actual="oldAttr" id="old_attr_doesnt_exist"/>
+<getAttributeNode obj="testAddress" var="districtAttr" name='"lang"'/>
+<assertNotNull actual="districtAttr" id="new_district_accessible"/>
+<getAttribute var="attrVal" obj="testAddress" name='"lang"'/>
+<assertEquals actual="attrVal" expected='""' id="attr_value" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementgetattributenode.xml b/test/testcases/tests/level1/core/hc_elementgetattributenode.xml
new file mode 100644
index 0000000..2896efa
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementgetattributenode.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementgetattributenode">
+<metadata>
+<title>hc_elementgetattributenode</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the attribute "title" from the last child
+ of the first "p" element and check its node name.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-217A91B8"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="nodeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<getAttributeNode obj="testEmployee" var="domesticAttr" name='"title"'/>
+<nodeName obj="domesticAttr" var="nodeName"/>
+<assertEquals actual="nodeName" expected='"title"' id="nodeName" ignoreCase="auto" context="attribute"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementgetattributenodenull.xml b/test/testcases/tests/level1/core/hc_elementgetattributenodenull.xml
new file mode 100644
index 0000000..3bab65b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementgetattributenodenull.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementgetattributenodenull">
+<metadata>
+<title>hc_elementGetAttributeNodeNull</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getAttributeNode(name)" method retrieves an
+ attribute node by name. It should return null if the
+ "strong" attribute does not exist.
+
+ Retrieve the last child of the first employee and attempt
+ to retrieve a non-existing attribute. The method should
+ return "null". The non-existing attribute to be used
+ is "invalidAttribute".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-217A91B8"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="domesticAttr" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<getAttributeNode obj="testEmployee" var="domesticAttr" name='"invalidAttribute"'/>
+<assertNull actual="domesticAttr" id="elementGetAttributeNodeNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementgetelementempty.xml b/test/testcases/tests/level1/core/hc_elementgetelementempty.xml
new file mode 100644
index 0000000..90606a2
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementgetelementempty.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementgetelementempty">
+<metadata>
+<title>hc_elementGetElementEmpty</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getAttribute(name)" method returns an empty
+ string if no value was assigned to an attribute and
+ no default value was given in the DTD file.
+
+ Retrieve the last child of the last employee, then
+ invoke "getAttribute(name)" method, where "strong" is an
+ attribute without a specified or DTD default value.
+ The "getAttribute(name)" method should return the empty
+ string. This method makes use of the
+ "createAttribute(newAttr)" method from the Document
+ interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--getAttribute-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-666EE0F9"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=243"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newAttribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttribute obj="doc" var="newAttribute" name='"lang"'/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="3" var="testEmployee"/>
+<setAttributeNode obj="testEmployee" var="domesticAttr" newAttr="newAttribute"/>
+<getAttribute obj="testEmployee" var="attrValue" name='"lang"'/>
+<assertEquals actual="attrValue" expected='""' id="elementGetElementEmptyAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementgetelementsbytagname.xml b/test/testcases/tests/level1/core/hc_elementgetelementsbytagname.xml
new file mode 100644
index 0000000..9284ce2
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementgetelementsbytagname.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementgetelementsbytagname">
+<metadata>
+<title>hc_elementGetElementsByTagName</title>
+<creator>Curt Arnold</creator>
+<description>
+The "getElementsByTagName(name)" method returns a list
+of all descendant Elements with the given tag name.
+Test for an empty list.
+
+Create a NodeList of all the descendant elements
+using the string "noMatch" as the tagName.
+The method should return a NodeList whose length is
+"0" since there are not any descendant elements
+that match the given tag name.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--getElementsByTagName-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<assertSize collection="elementList" size="5" id="elementGetElementsByTagNameAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementgetelementsbytagnameaccessnodelist.xml b/test/testcases/tests/level1/core/hc_elementgetelementsbytagnameaccessnodelist.xml
new file mode 100644
index 0000000..d7af247
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementgetelementsbytagnameaccessnodelist.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementgetelementsbytagnameaccessnodelist">
+<metadata>
+<title>hc_elementGetElementsByTagName</title>
+<creator>Curt Arnold</creator>
+<description>
+The "getElementsByTagName(name)" method returns a list
+of all descendant Elements in the order the children
+were encountered in a pre order traversal of the element
+tree.
+
+Create a NodeList of all the descendant elements
+using the string "p" as the tagName.
+The method should return a NodeList whose length is
+"5" in the order the children were encountered.
+Access the FOURTH element in the NodeList. The FOURTH
+element, the first or second should be an "em" node with
+the content "EMP0004".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--getElementsByTagName-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="firstC" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="employeeIDNode" type="CharacterData"/>
+<var name="employeeID" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="3" var="testEmployee"/>
+<firstChild interface="Node" obj="testEmployee" var="firstC"/>
+<nodeType var="nodeType" obj="firstC"/>
+<!-- if a text node, get the next sibling -->
+<while><equals actual="nodeType" expected="3"/>
+<nextSibling interface="Node" var="firstC" obj="firstC"/>
+<nodeType var="nodeType" obj="firstC"/>
+</while>
+<nodeName obj="firstC" var="childName"/>
+<assertEquals actual="childName" expected='"em"' id="childName" ignoreCase="auto"/>
+<firstChild interface="Node" var="employeeIDNode" obj="firstC"/>
+<nodeValue var="employeeID" obj="employeeIDNode"/>
+<assertEquals actual="employeeID" expected='"EMP0004"' ignoreCase="false" id="employeeID"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementgetelementsbytagnamenomatch.xml b/test/testcases/tests/level1/core/hc_elementgetelementsbytagnamenomatch.xml
new file mode 100644
index 0000000..6576b8c
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementgetelementsbytagnamenomatch.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementgetelementsbytagnamenomatch">
+<metadata>
+<title>hc_elementGetElementsByTagName</title>
+<creator>Curt Arnold</creator>
+<description>
+The "getElementsByTagName(name)" method returns a list
+of all descendant Elements with the given tag name.
+
+Create a NodeList of all the descendant elements
+using the string "employee" as the tagName.
+The method should return a NodeList whose length is
+"5".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--getElementsByTagName-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"noMatch"' var="elementList"/>
+<assertSize collection="elementList" size="0" id="elementGetElementsByTagNameNoMatchNoMatchAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementgetelementsbytagnamespecialvalue.xml b/test/testcases/tests/level1/core/hc_elementgetelementsbytagnamespecialvalue.xml
new file mode 100644
index 0000000..66a9013
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementgetelementsbytagnamespecialvalue.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementgetelementsbytagnamespecialvalue">
+<metadata>
+<title>hc_elementGetElementsByTagNamesSpecialValue</title>
+<creator>Curt Arnold</creator>
+<description>
+The "getElementsByTagName(name)" method may use the
+special value "*" to match all tags in the element
+tree.
+
+Create a NodeList of all the descendant elements
+of the last employee by using the special value "*".
+The method should return all the descendant children(6)
+in the order the children were encountered.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="lastEmployee" type="Element"/>
+<var name="lastempList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>"em"</member>
+<member>"strong"</member>
+<member>"code"</member>
+<member>"sup"</member>
+<member>"var"</member>
+<member>"acronym"</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="4" var="lastEmployee"/>
+<getElementsByTagName interface="Element" obj="lastEmployee" var="lastempList" tagname='"*"'/>
+<for-each collection="lastempList" member="child">
+<nodeName obj="child" var="childName"/>
+<append collection="result" item="childName"/>
+</for-each>
+<assertEquals actual="result" expected="expectedResult" id="tagNames" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementgettagname.xml b/test/testcases/tests/level1/core/hc_elementgettagname.xml
new file mode 100644
index 0000000..25601a5
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementgettagname.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementgettagname">
+<metadata>
+<title>hc_elementgettagname</title>
+<creator>Curt Arnold</creator>
+<description>
+ Invoke the "getTagName()" method one the
+ root node. The value returned should be "html" or "svg".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-104682815"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=251"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="root" type="Element"/>
+<var name="tagname" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<tagName obj="root" var="tagname"/>
+<if><contentType type="image/svg+xml"/>
+<assertEquals actual="tagname" expected='"svg"' id="svgTagname" ignoreCase="false"/>
+<else>
+<assertEquals actual="tagname" expected='"html"' id="tagname" ignoreCase="auto"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementinuseattributeerr.xml b/test/testcases/tests/level1/core/hc_elementinuseattributeerr.xml
new file mode 100644
index 0000000..6a5e8df
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementinuseattributeerr.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementinuseattributeerr">
+<metadata>
+<title>hc_elementInUseAttributeErr</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setAttributeNode(newAttr)" method raises an
+ "INUSE_ATTRIBUTE_ERR DOMException if the "newAttr"
+ is already an attribute of another element.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-887236154')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=244"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newAttribute" type="Attr"/>
+<var name="addressElementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<var name="newElement" type="Element"/>
+<var name="attrAddress" type="Attr"/>
+<var name="appendedChild" type="Node"/>
+<var name="setAttr1" type="Attr"/>
+<var name="setAttr2" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"body"' var="addressElementList"/>
+<item interface="NodeList" obj="addressElementList" index="0" var="testAddress"/>
+<createElement obj="doc" var="newElement" tagName='"p"'/>
+<appendChild var="appendedChild" obj="testAddress" newChild="newElement"/>
+<createAttribute obj="doc" var="newAttribute" name='"title"'/>
+<setAttributeNode var="setAttr1" obj="newElement" newAttr="newAttribute"/>
+<assertDOMException id="throw_INUSE_ATTRIBUTE_ERR">
+ <INUSE_ATTRIBUTE_ERR>
+ <setAttributeNode var="setAttr2" obj="testAddress" newAttr="newAttribute"/>
+ </INUSE_ATTRIBUTE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementinvalidcharacterexception.xml b/test/testcases/tests/level1/core/hc_elementinvalidcharacterexception.xml
new file mode 100644
index 0000000..3695b93
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementinvalidcharacterexception.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementinvalidcharacterexception">
+<metadata>
+<title>hc_elementInvalidCharacterException</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setAttribute(name,value)" method raises an
+ "INVALID_CHARACTER_ERR DOMException if the specified
+ name contains an invalid character.
+
+ Retrieve the last child of the first employee and
+ call its "setAttribute(name,value)" method with
+ "strong" containing an invalid character.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-F68F082')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddress"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<setAttribute obj="testAddress" name='"invalid^Name"' value='"value"'/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementinvalidcharacterexception1.xml b/test/testcases/tests/level1/core/hc_elementinvalidcharacterexception1.xml
new file mode 100644
index 0000000..2953282
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementinvalidcharacterexception1.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementinvalidcharacterexception1">
+<metadata>
+<title>hc_elementinvalidcharacterexception1</title>
+<creator>Curt Arnold</creator>
+<description>
+Calling Element.setAttribute with an empty name will cause an INVALID_CHARACTER_ERR.
+</description>
+<date qualifier="created">2004-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-F68F082')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=525"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;acronym&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddress"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<setAttribute obj="testAddress" name='""' value="&quot;value&quot;"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementnormalize.xml b/test/testcases/tests/level1/core/hc_elementnormalize.xml
new file mode 100644
index 0000000..e1df08f
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementnormalize.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementnormalize">
+<metadata>
+<title>hc_elementnormalize</title>
+<creator>Curt Arnold</creator>
+<description>
+Append a couple of text nodes to the first sup element, normalize the
+document element and check that the element has been normalized.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-162CF083"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=546"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="root" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="testName" type="Element"/>
+<var name="firstChild" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="retNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"sup"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testName"/>
+<createTextNode var="textNode" obj="doc" data='""'/>
+<appendChild var="retNode" obj="testName" newChild="textNode"/>
+<createTextNode var="textNode" obj="doc" data='",000"'/>
+<appendChild var="retNode" obj="testName" newChild="textNode"/>
+<documentElement obj="doc" var="root"/>
+<normalize obj="root"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"sup"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testName"/>
+<firstChild interface="Node" obj="testName" var="firstChild"/>
+<nodeValue obj="firstChild" var="childValue"/>
+<assertEquals actual="childValue" expected='"56,000,000"' id="elementNormalizeAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementnormalize2.xml b/test/testcases/tests/level1/core/hc_elementnormalize2.xml
new file mode 100644
index 0000000..0adf0d8
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementnormalize2.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementnormalize2">
+<metadata>
+<title>hc_elementnormalize2</title>
+<creator>Curt Arnold</creator>
+<description>
+Add an empty text node to an existing attribute node, normalize the containing element
+and check that the attribute node has eliminated the empty text.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-162CF083"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=482"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="root" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="firstChild" type="Node"/>
+<var name="secondChild" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<var name="emptyText" type="Text"/>
+<var name="attrNode" type="Attr"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement obj="doc" var="root"/>
+<createTextNode var="emptyText" obj="doc" data='""'/>
+<getElementsByTagName interface="Element" obj="root" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="element"/>
+<getAttributeNode var="attrNode" obj="element" name='"title"'/>
+<appendChild var="retval" obj="attrNode" newChild="emptyText"/>
+<normalize obj="element"/>
+<getAttributeNode var="attrNode" obj="element" name='"title"'/>
+<firstChild interface="Node" obj="attrNode" var="firstChild"/>
+<nodeValue obj="firstChild" var="childValue"/>
+<assertEquals actual="childValue" expected='"Yes"' id="firstChild" ignoreCase="false"/>
+<nextSibling var="secondChild" obj="firstChild" interface="Node"/>
+<assertNull actual="secondChild" id="secondChildNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementnotfounderr.xml b/test/testcases/tests/level1/core/hc_elementnotfounderr.xml
new file mode 100644
index 0000000..73de389
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementnotfounderr.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementnotfounderr">
+<metadata>
+<title>hc_elementNotFoundErr</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeAttributeNode(oldAttr)" method raises a
+ NOT_FOUND_ERR DOMException if the "oldAttr" attribute
+ is not an attribute of the element.
+
+ Retrieve the last employee and attempt to remove
+ a non existing attribute node. This should cause the
+ intended exception to be raised. This test makes use
+ of the "createAttribute(name)" method from the Document
+ interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-D589198')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="oldAttribute" type="Attr"/>
+<var name="addressElementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<var name="attrAddress" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="addressElementList"/>
+<item interface="NodeList" obj="addressElementList" index="4" var="testAddress"/>
+<createAttribute obj="doc" var="oldAttribute" name='"title"'/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeAttributeNode obj="testAddress" oldAttr="oldAttribute" var="attrAddress"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementremoveattribute.xml b/test/testcases/tests/level1/core/hc_elementremoveattribute.xml
new file mode 100644
index 0000000..f5d46f2
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementremoveattribute.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementremoveattribute">
+<metadata>
+<title>hc_elementRemoveAttribute</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeAttribute(name)" removes an attribute by name.
+ If the attribute has a default value, it is immediately
+ replaced. However, there is no default values in the HTML
+ compatible tests, so its value is "".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D6AC0F9"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="3" var="testEmployee"/>
+<removeAttribute obj="testEmployee" name='"class"'/>
+<getAttribute obj="testEmployee" var="attrValue" name='"class"'/>
+<assertEquals actual="attrValue" expected='""' id="attrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementremoveattributeaftercreate.xml b/test/testcases/tests/level1/core/hc_elementremoveattributeaftercreate.xml
new file mode 100644
index 0000000..b3339e7
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementremoveattributeaftercreate.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementremoveattributeaftercreate">
+<metadata>
+<title>hc_elementRemoveAttributeAfterCreate</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeAttributeNode(oldAttr)" method removes the
+ specified attribute.
+
+ Retrieve the last child of the third employee, add a
+ new "lang" attribute to it and then try to remove it.
+ To verify that the node was removed use the
+ "getNamedItem(name)" method from the NamedNodeMap
+ interface. It also uses the "getAttributes()" method
+ from the Node interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--removeAttributeNode-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=243"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="newAttribute" type="Attr"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="districtAttr" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<createAttribute obj="doc" var="newAttribute" name='"lang"'/>
+<setAttributeNode obj="testEmployee" var="districtAttr" newAttr="newAttribute"/>
+<removeAttributeNode obj="testEmployee" var="districtAttr" oldAttr="newAttribute"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItem obj="attributes" var="districtAttr" name='"lang"'/>
+<assertNull actual="districtAttr" id="removed_item_null"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementremoveattributenode.xml b/test/testcases/tests/level1/core/hc_elementremoveattributenode.xml
new file mode 100644
index 0000000..ccb4ae6
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementremoveattributenode.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementremoveattributenode">
+<metadata>
+<title>hc_elementRemoveAttributeNode</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeAttributeNode(oldAttr)" method returns the
+ node that was removed.
+
+ Retrieve the last child of the third employee and
+ remove its "class" Attr node. The method should
+ return the old attribute node.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="streetAttr" type="Attr"/>
+<var name="removedAttr" type="Attr"/>
+<var name="removedValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<getAttributeNode obj="testEmployee" var="streetAttr" name='"class"'/>
+<removeAttributeNode obj="testEmployee" var="removedAttr" oldAttr="streetAttr"/>
+<assertNotNull actual="removedAttr" id="removedAttrNotNull"/>
+<value interface="Attr" obj="removedAttr" var="removedValue"/>
+<assertEquals actual="removedValue" expected='"No"' id="elementRemoveAttributeNodeAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementreplaceattributewithself.xml b/test/testcases/tests/level1/core/hc_elementreplaceattributewithself.xml
new file mode 100644
index 0000000..927b8e5
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementreplaceattributewithself.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementreplaceattributewithself">
+<metadata>
+<title>hc_elementReplaceAttributeWithSelf</title>
+<creator>Curt Arnold</creator>
+<description>
+This test calls setAttributeNode to replace an attribute with itself.
+Since the node is not an attribute of another Element, it would
+be inappropriate to throw an INUSE_ATTRIBUTE_ERR.
+
+This test was derived from elementinuserattributeerr which
+inadvertanly made this test.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-06-09</date>
+<!--setAttributeNode-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="streetAttr" type="Attr"/>
+<var name="replacedAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<getAttributeNode var="streetAttr" obj="testEmployee" name='"class"'/>
+<setAttributeNode obj="testEmployee" var="replacedAttr" newAttr="streetAttr"/>
+<assertSame actual="replacedAttr" expected="streetAttr" id="replacedAttr"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementreplaceexistingattribute.xml b/test/testcases/tests/level1/core/hc_elementreplaceexistingattribute.xml
new file mode 100644
index 0000000..6af3483
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementreplaceexistingattribute.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementreplaceexistingattribute">
+<metadata>
+<title>hc_elementReplaceExistingAttribute</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setAttributeNode(newAttr)" method adds a new
+ attribute to the Element. If the "newAttr" Attr node is
+ already present in this element, it should replace the
+ existing one.
+
+ Retrieve the last child of the third employee and add a
+ new attribute node by invoking the "setAttributeNode(new
+ Attr)" method. The new attribute node to be added is
+ "class", which is already present in this element. The
+ method should replace the existing Attr node with the
+ new one. This test uses the "createAttribute(name)"
+ method from the Document interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="newAttribute" type="Attr"/>
+<var name="strong" type="DOMString"/>
+<var name="setAttr" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<createAttribute obj="doc" var="newAttribute" name='"class"'/>
+<setAttributeNode var="setAttr" obj="testEmployee" newAttr="newAttribute"/>
+<getAttribute obj="testEmployee" var="strong" name='"class"'/>
+<assertEquals actual="strong" expected='""' id="replacedValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementreplaceexistingattributegevalue.xml b/test/testcases/tests/level1/core/hc_elementreplaceexistingattributegevalue.xml
new file mode 100644
index 0000000..5c04a86
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementreplaceexistingattributegevalue.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementreplaceexistingattributegevalue">
+<metadata>
+<title>hc_elementReplaceExistingAttributeGeValue</title>
+<creator>Curt Arnold</creator>
+<description>
+If the "setAttributeNode(newAttr)" method replaces an
+existing Attr node with the same name, then it should
+return the previously existing Attr node.
+
+Retrieve the last child of the third employee and add a
+new attribute node. The new attribute node is "class",
+which is already present in this Element. The method
+should return the existing Attr node(old "class" Attr).
+This test uses the "createAttribute(name)" method
+from the Document interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--setAttributeNode-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="newAttribute" type="Attr"/>
+<var name="streetAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<createAttribute obj="doc" var="newAttribute" name='"class"'/>
+<setAttributeNode obj="testEmployee" var="streetAttr" newAttr="newAttribute"/>
+<assertNotNull actual="streetAttr" id="previousAttrNotNull"/>
+<value interface="Attr" obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected='"No"' id="previousAttrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementretrieveallattributes.xml b/test/testcases/tests/level1/core/hc_elementretrieveallattributes.xml
new file mode 100644
index 0000000..9b50924
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementretrieveallattributes.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementretrieveallattributes">
+<metadata>
+<title>hc_elementretrieveallattributes</title>
+<creator>Curt Arnold</creator>
+<description>
+ Create a list of all the attributes of the last child
+ of the first "p" element by using the "getAttributes()"
+ method.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=184"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="attribute" type="Attr"/>
+<var name="attributeName" type="DOMString"/>
+<var name="actual" type="Collection"/>
+<var name="htmlExpected" type="Collection">
+ <member>"title"</member>
+</var>
+<var name="expected" type="Collection">
+ <member>"title"</member>
+ <member>"dir"</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="addressList"/>
+<item interface="NodeList" obj="addressList" index="0" var="testAddress"/>
+<attributes obj="testAddress" var="attributes"/>
+<for-each collection="attributes" member="attribute">
+ <nodeName var="attributeName" obj="attribute"/>
+ <append collection="actual" item="attributeName"/>
+</for-each>
+<if><contentType type="text/html"/>
+ <assertEquals id="htmlAttributeNames" actual="actual" expected="htmlExpected" ignoreCase="true"/>
+ <else>
+ <assertEquals id="attributeNames" actual="actual" expected="expected" ignoreCase="true"/>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementretrieveattrvalue.xml b/test/testcases/tests/level1/core/hc_elementretrieveattrvalue.xml
new file mode 100644
index 0000000..6d5a96e
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementretrieveattrvalue.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementretrieveattrvalue">
+<metadata>
+<title>hc_elementRetrieveAttrValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getAttribute(name)" method returns an attribute
+ value by name.
+
+ Retrieve the second address element, then
+ invoke the 'getAttribute("class")' method. This should
+ return the value of the attribute("No").
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--getAttribute-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-666EE0F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testAddress"/>
+<getAttribute obj="testAddress" var="attrValue" name='"class"'/>
+<assertEquals actual="attrValue" expected='"No"' id="attrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementretrievetagname.xml b/test/testcases/tests/level1/core/hc_elementretrievetagname.xml
new file mode 100644
index 0000000..d6f5744
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementretrievetagname.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementretrievetagname">
+<metadata>
+<title>hc_elementRetrieveTagName</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getElementsByTagName()" method returns a NodeList
+ of all descendant elements with a given tagName.
+
+ Invoke the "getElementsByTagName()" method and create
+ a NodeList of "code" elements. Retrieve the second
+ "code" element in the list and return the NodeName.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--nodeName attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<!--tagName attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-104682815"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="strong" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"code"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="testEmployee"/>
+<nodeName obj="testEmployee" var="strong"/>
+<assertEquals actual="strong" expected='"code"' id="nodename" ignoreCase="auto"/>
+<tagName obj="testEmployee" var="strong"/>
+<assertEquals actual="strong" expected='"code"' id="tagname" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementsetattributenodenull.xml b/test/testcases/tests/level1/core/hc_elementsetattributenodenull.xml
new file mode 100644
index 0000000..49e6df9
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementsetattributenodenull.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementsetattributenodenull">
+<metadata>
+<title>hc_elementSetAttributeNodeNull</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setAttributeNode(newAttr)" method returns the
+ null value if no previously existing Attr node with the
+ same name was replaced.
+
+ Retrieve the last child of the third employee and add a
+ new attribute to it. The new attribute node added is
+ "lang", which is not part of this Element. The
+ method should return the null value.
+ This test uses the "createAttribute(name)"
+ method from the Document interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=243"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="newAttribute" type="Attr"/>
+<var name="districtAttr" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testEmployee"/>
+<createAttribute obj="doc" var="newAttribute" name='"lang"'/>
+<setAttributeNode obj="testEmployee" var="districtAttr" newAttr="newAttribute"/>
+<assertNull actual="districtAttr" id="elementSetAttributeNodeNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_elementwrongdocumenterr.xml b/test/testcases/tests/level1/core/hc_elementwrongdocumenterr.xml
new file mode 100644
index 0000000..8d36120
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_elementwrongdocumenterr.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_elementwrongdocumenterr">
+<metadata>
+<title>hc_elementWrongDocumentErr</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setAttributeNode(newAttr)" method raises an
+ "WRONG_DOCUMENT_ERR DOMException if the "newAttr"
+ was created from a different document than the one that
+ created this document.
+
+ Retrieve the last employee and attempt to set a new
+ attribute node for its "employee" element. The new
+ attribute was created from a document other than the
+ one that created this element, therefore a
+ WRONG_DOCUMENT_ERR DOMException should be raised.
+
+ This test uses the "createAttribute(newAttr)" method
+ from the Document interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-887236154')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="newAttribute" type="Attr"/>
+<var name="addressElementList" type="NodeList"/>
+<var name="testAddress" type="Element"/>
+<var name="attrAddress" type="Attr"/>
+<load var="doc1" href="hc_staff" willBeModified="true"/>
+<load var="doc2" href="hc_staff" willBeModified="false"/>
+<createAttribute obj="doc2" var="newAttribute" name='"newAttribute"'/>
+<getElementsByTagName interface="Document" obj="doc1" tagname='"acronym"' var="addressElementList"/>
+<item interface="NodeList" obj="addressElementList" index="4" var="testAddress"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<setAttributeNode obj="testAddress" newAttr="newAttribute" var="attrAddress"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_entitiesremovenameditem1.xml b/test/testcases/tests/level1/core/hc_entitiesremovenameditem1.xml
new file mode 100644
index 0000000..0bd5d38
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_entitiesremovenameditem1.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_entitiesremovenameditem1">
+<metadata>
+<title>hc_entitiesremovenameditem1</title>
+<creator>Curt Arnold</creator>
+<description>
+An attempt to add remove an entity should result in a NO_MODIFICATION_ERR.
+</description>
+<date qualifier="created">2004-01-11</date>
+<!-- DocumentType.entities -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1788794630"/>
+<!-- NamedNodeMap.removeNamedItem -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<if><not><contentType type="text/html"/></not>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities var="entities" obj="docType"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeNamedItem var="retval" obj="entities" name='"alpha"'/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_entitiessetnameditem1.xml b/test/testcases/tests/level1/core/hc_entitiessetnameditem1.xml
new file mode 100644
index 0000000..301bdf1
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_entitiessetnameditem1.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_entitiessetnameditem1">
+<metadata>
+<title>hc_entitiessetnameditem1</title>
+<creator>Curt Arnold</creator>
+<description>
+An attempt to add an element to the named node map returned by entities should
+result in a NO_MODIFICATION_ERR or HIERARCHY_REQUEST_ERR.
+</description>
+<date qualifier="created">2004-01-11</date>
+<!-- DocumentType.entities -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1788794630"/>
+<!-- NamedNodeMap.setNamedItem -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<var name="retval" type="Node"/>
+<var name="elem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<if><not><contentType type="text/html"/></not>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities var="entities" obj="docType"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<createElement var="elem" obj="doc" tagName='"br"'/>
+<try>
+ <setNamedItem var="retval" obj="entities" arg="elem"/>
+ <fail id="throw_HIER_OR_NO_MOD_ERR"/>
+ <catch>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ </catch>
+</try>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapchildnoderange.xml b/test/testcases/tests/level1/core/hc_namednodemapchildnoderange.xml
new file mode 100644
index 0000000..d7c8b7d
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapchildnoderange.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapchildnoderange">
+<metadata>
+<title>hc_namednodemapchildnoderange</title>
+<creator>Curt Arnold</creator>
+<description>
+ Create a NamedNodeMap object from the attributes of the
+ last child of the third "p" element and traverse the
+ list from index 0 thru length -1. All indices should
+ be valid.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!--item-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+<!--length attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D0FB19E"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=250"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="child" type="Node"/>
+<var name="strong" type="DOMString"/>
+<var name="length" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="2"/>
+<attributes obj="testEmployee" var="attributes"/>
+<length var="length" obj="attributes" interface="NamedNodeMap"/>
+<if><contentType type="text/html"/>
+<assertEquals actual="length" expected="2" id="htmlLength" ignoreCase="false"/>
+<else>
+<assertEquals actual="length" expected="3" id="length" ignoreCase="false"/>
+<item var="child" index="2" obj="attributes" interface="NamedNodeMap"/>
+<assertNotNull actual="child" id="attr2"/>
+</else>
+</if>
+<item var="child" index="0" obj="attributes" interface="NamedNodeMap"/>
+<assertNotNull actual="child" id="attr0"/>
+<item var="child" index="1" obj="attributes" interface="NamedNodeMap"/>
+<assertNotNull actual="child" id="attr1"/>
+<item var="child" index="3" obj="attributes" interface="NamedNodeMap"/>
+<assertNull actual="child" id="attr3"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapgetnameditem.xml b/test/testcases/tests/level1/core/hc_namednodemapgetnameditem.xml
new file mode 100644
index 0000000..a8802ab
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapgetnameditem.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapgetnameditem">
+<metadata>
+<title>hc_namednodemapgetnameditem</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the second "p" element and create a NamedNodeMap
+ listing of the attributes of the last child. Once the
+ list is created an invocation of the "getNamedItem(name)"
+ method is done with name="title". This should result
+ in the title Attr node being returned.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="1"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name='"title"'/>
+<nodeName obj="domesticAttr" var="attrName"/>
+<assertEquals actual="attrName" expected='"title"'
+ id="nodeName" ignoreCase="auto" context="attribute"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapinuseattributeerr.xml b/test/testcases/tests/level1/core/hc_namednodemapinuseattributeerr.xml
new file mode 100644
index 0000000..0220da5
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapinuseattributeerr.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapinuseattributeerr">
+<metadata>
+<title>hc_namedNodeMapInUseAttributeErr</title>
+<creator>Curt Arnold</creator>
+<description>
+The "setNamedItem(arg)" method raises a
+INUSE_ATTRIBUTE_ERR DOMException if "arg" is an
+Attr that is already in an attribute of another Element.
+
+Create a NamedNodeMap object from the attributes of the
+last child of the third employee and attempt to add
+an attribute that is already being used by the first
+employee. This should raise the desired exception.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1025163788')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="firstNode" type="Element"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="setAttr" type="Attr"/>
+<var name="setNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="firstNode" index="0"/>
+<createAttribute obj="doc" var="domesticAttr" name='"title"'/>
+<value interface="Attr" obj="domesticAttr" value='"Y&#945;"'/>
+<setAttributeNode var="setAttr" obj="firstNode" newAttr="domesticAttr"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testNode" index="2"/>
+<attributes obj="testNode" var="attributes"/>
+<assertDOMException id="throw_INUSE_ATTRIBUTE_ERR">
+<INUSE_ATTRIBUTE_ERR>
+<setNamedItem var="setNode" interface="NamedNodeMap" obj="attributes" arg="domesticAttr"/>
+</INUSE_ATTRIBUTE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapnotfounderr.xml b/test/testcases/tests/level1/core/hc_namednodemapnotfounderr.xml
new file mode 100644
index 0000000..d3d2c64
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapnotfounderr.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapnotfounderr">
+<metadata>
+<title>hc_namednodemapNotFoundErr</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeNamedItem(name)" method raises a
+ NOT_FOUND_ERR DOMException if there is not a node
+ named "strong" in the map.
+
+ Create a NamedNodeMap object from the attributes of the
+ last child of the third employee and attempt to remove
+ the "lang" attribute. There is not a node named
+ "lang" in the list and therefore the desired
+ exception should be raised.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-D58B193')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=243"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="2"/>
+<attributes obj="testEmployee" var="attributes"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeNamedItem var="removedNode" interface="NamedNodeMap" obj="attributes" name='"lang"'/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapnumberofnodes.xml b/test/testcases/tests/level1/core/hc_namednodemapnumberofnodes.xml
new file mode 100644
index 0000000..488b258
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapnumberofnodes.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapnumberofnodes">
+<metadata>
+<title>hc_namednodemapnumberofnodes</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the second "p" element and evaluate Node.attributes.length.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!--length attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D0FB19E"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=250"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="length" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="2"/>
+<attributes obj="testEmployee" var="attributes"/>
+<length var="length" obj="attributes" interface="NamedNodeMap"/>
+<if><contentType type="text/html"/>
+<assertEquals actual="length" expected="2" id="htmlLength" ignoreCase="false"/>
+<else>
+<assertEquals actual="length" expected="3" id="length" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapremovenameditem.xml b/test/testcases/tests/level1/core/hc_namednodemapremovenameditem.xml
new file mode 100644
index 0000000..b686f9a
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapremovenameditem.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapremovenameditem">
+<metadata>
+<title>hc_namednodemapRemoveNamedItem</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeNamedItem(name)" method removes a node
+ specified by name.
+
+ Retrieve the third employee and create a NamedNodeMap
+ object of the attributes of the last child. Once the
+ list is created invoke the "removeNamedItem(name)"
+ method with name="class". This should result
+ in the removal of the specified attribute.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="newAttribute" type="Attr"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="specified" type="boolean"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="2"/>
+<attributes obj="testAddress" var="attributes"/>
+<removeNamedItem var="removedNode" interface="NamedNodeMap" obj="attributes" name='"class"'/>
+<getNamedItem obj="attributes" var="streetAttr" name='"class"'/>
+<assertNull actual="streetAttr" id="isnull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapreturnattrnode.xml b/test/testcases/tests/level1/core/hc_namednodemapreturnattrnode.xml
new file mode 100644
index 0000000..53edc6b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapreturnattrnode.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapreturnattrnode">
+<metadata>
+<title>hc_namednodemapreturnattrnode</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the second p element and create a NamedNodeMap
+ listing of the attributes of the last child. Once the
+ list is created an invocation of the "getNamedItem(name)"
+ method is done with name="class". This should result
+ in the method returning an Attr node.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--getNamedItem-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549"/>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!--name attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1112119403"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Node"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="1"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name='"class"'/>
+<assertInstanceOf obj="streetAttr" type="Attr" id="typeAssert"/>
+<nodeName obj="streetAttr" var="attrName"/>
+<assertEquals actual="attrName" expected='"class"' id="nodeName" ignoreCase="auto" context="attribute"/>
+<name obj="streetAttr" var="attrName" interface="Attr"/>
+<assertEquals actual="attrName" expected='"class"' id="name" ignoreCase="auto" context="attribute"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapreturnfirstitem.xml b/test/testcases/tests/level1/core/hc_namednodemapreturnfirstitem.xml
new file mode 100644
index 0000000..a7a6ebd
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapreturnfirstitem.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapreturnfirstitem">
+<metadata>
+<title>hc_namednodemapReturnFirstItem</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "item(index)" method returns the indexth item in
+ the map(test for first item).
+
+ Retrieve the second "acronym" get the NamedNodeMap of the attributes. Since the
+ DOM does not specify an order of these nodes the contents
+ of the FIRST node can contain either "title", "class" or "dir".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=184"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="child" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="htmlExpected" type="Collection">
+ <member>"title"</member>
+ <member>"class"</member>
+</var>
+<var name="expected" type="Collection">
+ <member>"title"</member>
+ <member>"class"</member>
+ <member>"dir"</member>
+</var>
+<var name="actual" type="Collection"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="1"/>
+<attributes obj="testAddress" var="attributes"/>
+<for-each collection="attributes" member="child">
+<nodeName obj="child" var="nodeName"/>
+<append collection="actual" item="nodeName"/>
+</for-each>
+<if><contentType type="text/html"/>
+<assertEquals id="attrName_html" actual="actual" expected="htmlExpected" ignoreCase="true"/>
+<else>
+<assertEquals id="attrName" actual="actual" expected="expected" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapreturnlastitem.xml b/test/testcases/tests/level1/core/hc_namednodemapreturnlastitem.xml
new file mode 100644
index 0000000..bd6f7a8
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapreturnlastitem.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapreturnlastitem">
+<metadata>
+<title>hc_namednodemapReturnLastItem</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "item(index)" method returns the indexth item in
+ the map(test for last item).
+
+ Retrieve the second "acronym" and get the attribute name. Since the
+ DOM does not specify an order of these nodes the contents
+ of the LAST node can contain either "title" or "class".
+ The test should return "true" if the LAST node is either
+ of these values.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=184"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="child" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="htmlExpected" type="Collection">
+ <member>"title"</member>
+ <member>"class"</member>
+</var>
+<var name="expected" type="Collection">
+ <member>"title"</member>
+ <member>"class"</member>
+ <member>"dir"</member>
+</var>
+<var name="actual" type="Collection"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="1"/>
+<attributes obj="testEmployee" var="attributes"/>
+<for-each collection="attributes" member="child">
+<nodeName obj="child" var="nodeName"/>
+<append collection="actual" item="nodeName"/>
+</for-each>
+<if><contentType type="text/html"/>
+<assertEquals id="attrName_html" actual="actual" expected="htmlExpected" ignoreCase="true"/>
+<else>
+<assertEquals id="attrName" actual="actual" expected="expected" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapreturnnull.xml b/test/testcases/tests/level1/core/hc_namednodemapreturnnull.xml
new file mode 100644
index 0000000..12037d8
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapreturnnull.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapreturnnull">
+<metadata>
+<title>hc_namednodemapReturnNull</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getNamedItem(name)" method returns null of the
+ specified name did not identify any node in the map.
+
+ Retrieve the second employee and create a NamedNodeMap
+ listing of the attributes of the last child. Once the
+ list is created an invocation of the "getNamedItem(name)"
+ method is done with name="lang". This name does not
+ match any names in the list therefore the method should
+ return null.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--getNamedItem-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=243"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="districtNode" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="1"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItem obj="attributes" var="districtNode" name='"lang"'/>
+<assertNull actual="districtNode" id="langAttrNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapsetnameditem.xml b/test/testcases/tests/level1/core/hc_namednodemapsetnameditem.xml
new file mode 100644
index 0000000..e4dcfd7
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapsetnameditem.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapsetnameditem">
+<metadata>
+<title>hc_namednodemapsetnameditem</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the second "p" element and create a NamedNodeMap
+ object from the attributes of the last child by
+ invoking the "getAttributes()" method. Once the
+ list is created an invocation of the "setNamedItem(arg)"
+ method is done with arg=newAttr, where newAttr is a
+ new Attr Node previously created. The "setNamedItem(arg)"
+ method should add then new node to the NamedNodeItem
+ object by using its "nodeName" attribute("lang').
+ This node is then retrieved using the "getNamedItem(name)"
+ method.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=243"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="newAttribute" type="Attr"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="districtNode" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<var name="setNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="1"/>
+<createAttribute obj="doc" var="newAttribute" name='"lang"'/>
+<attributes obj="testAddress" var="attributes"/>
+<setNamedItem var="setNode" obj="attributes" arg="newAttribute"/>
+<getNamedItem obj="attributes" var="districtNode" name='"lang"'/>
+<nodeName obj="districtNode" var="attrName"/>
+<assertEquals actual="attrName" expected='"lang"' id="nodeName"
+ ignoreCase="auto" context="attribute"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapsetnameditemreturnvalue.xml b/test/testcases/tests/level1/core/hc_namednodemapsetnameditemreturnvalue.xml
new file mode 100644
index 0000000..1470e4c
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapsetnameditemreturnvalue.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapsetnameditemreturnvalue">
+<metadata>
+<title>hc_namednodemapSetNamedItemReturnValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the "setNamedItem(arg)" method replaces an already
+ existing node with the same name then the already
+ existing node is returned.
+
+ Retrieve the third employee and create a NamedNodeMap
+ object from the attributes of the last child by
+ invoking the "getAttributes()" method. Once the
+ list is created an invocation of the "setNamedItem(arg)"
+ method is done with arg=newAttr, where newAttr is a
+ new Attr Node previously created and whose node name
+ already exists in the map. The "setNamedItem(arg)"
+ method should replace the already existing node with
+ the new one and return the existing node.
+ This test uses the "createAttribute(name)" method from
+ the document interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="newAttribute" type="Attr"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="newNode" type="Node"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="2"/>
+<createAttribute obj="doc" var="newAttribute" name='"class"'/>
+<attributes obj="testAddress" var="attributes"/>
+<setNamedItem interface="NamedNodeMap" obj="attributes" var="newNode" arg="newAttribute"/>
+<assertNotNull actual="newNode" id="previousAttrNotNull"/>
+<nodeValue obj="newNode" var="attrValue"/>
+<assertEquals actual="attrValue" expected='"No"' id="previousAttrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapsetnameditemthatexists.xml b/test/testcases/tests/level1/core/hc_namednodemapsetnameditemthatexists.xml
new file mode 100644
index 0000000..d7a6407
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapsetnameditemthatexists.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapsetnameditemthatexists">
+<metadata>
+<title>hc_namednodemapSetNamedItemThatExists</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the node to be added by the "setNamedItem(arg)" method
+ already exists in the NamedNodeMap, it is replaced by
+ the new one.
+
+ Retrieve the second employee and create a NamedNodeMap
+ object from the attributes of the last child by
+ invoking the "getAttributes()" method. Once the
+ list is created an invocation of the "setNamedItem(arg)"
+ method is done with arg=newAttr, where newAttr is a
+ new Attr Node previously created and whose node name
+ already exists in the map. The "setNamedItem(arg)"
+ method should replace the already existing node with
+ the new one.
+ This node is then retrieved using the "getNamedItem(name)"
+ method. This test uses the "createAttribute(name)"
+ method from the document interface
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="newAttribute" type="Attr"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="districtNode" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<var name="setNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="1"/>
+<createAttribute obj="doc" var="newAttribute" name='"class"'/>
+<attributes obj="testAddress" var="attributes"/>
+<setNamedItem var="setNode" obj="attributes" arg="newAttribute"/>
+<getNamedItem obj="attributes" var="districtNode" name='"class"'/>
+<nodeValue obj="districtNode" var="attrValue"/>
+<assertEquals actual="attrValue" expected='""' id="namednodemapSetNamedItemThatExistsAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapsetnameditemwithnewvalue.xml b/test/testcases/tests/level1/core/hc_namednodemapsetnameditemwithnewvalue.xml
new file mode 100644
index 0000000..087e7df
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapsetnameditemwithnewvalue.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapsetnameditemwithnewvalue">
+<metadata>
+<title>hc_namednodemapSetNamedItemWithNewValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the "setNamedItem(arg)" method does not replace an
+ existing node with the same name then it returns null.
+
+ Retrieve the third employee and create a NamedNodeMap
+ object from the attributes of the last child.
+ Once the list is created the "setNamedItem(arg)" method
+ is invoked with arg=newAttr, where newAttr is a
+ newly created Attr Node and whose node name
+ already exists in the map. The "setNamedItem(arg)"
+ method should add the new node and return null.
+ This test uses the "createAttribute(name)" method from
+ the document interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=243"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="newAttribute" type="Attr"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="newNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="2"/>
+<createAttribute obj="doc" var="newAttribute" name='"lang"'/>
+<attributes obj="testAddress" var="attributes"/>
+<setNamedItem interface="NamedNodeMap" obj="attributes" var="newNode" arg="newAttribute"/>
+<assertNull actual="newNode" id="prevValueNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_namednodemapwrongdocumenterr.xml b/test/testcases/tests/level1/core/hc_namednodemapwrongdocumenterr.xml
new file mode 100644
index 0000000..bd2fedb
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_namednodemapwrongdocumenterr.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_namednodemapwrongdocumenterr">
+<metadata>
+<title>hc_namednodemapWrongDocumentErr</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setNamedItem(arg)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if "arg" was created
+ from a different document than the one that created
+ the NamedNodeMap.
+
+ Create a NamedNodeMap object from the attributes of the
+ last child of the third employee and attempt to add
+ another Attr node to it that was created from a
+ different DOM document. This should raise the desired
+ exception. This method uses the "createAttribute(name)"
+ method from the Document interface.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1025163788')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="newAttribute" type="Node"/>
+<var name="strong" type="DOMString"/>
+<var name="setNode" type="Node"/>
+<load var="doc1" href="hc_staff" willBeModified="true"/>
+<load var="doc2" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc1" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="2"/>
+<createAttribute obj="doc2" var="newAttribute" name='"newAttribute"'/>
+<attributes obj="testAddress" var="attributes"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<setNamedItem var="setNode" obj="attributes" arg="newAttribute"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeappendchild.xml b/test/testcases/tests/level1/core/hc_nodeappendchild.xml
new file mode 100644
index 0000000..3ab84d7
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeappendchild.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeappendchild">
+<metadata>
+<title>hc_nodeAppendChild</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the second "p" and append a "br" Element
+ node to the list of children. The last node in the list
+ is then retrieved and its NodeName examined. The
+ "getNodeName()" method should return "br".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="createdNode" type="Node"/>
+<var name="lchild" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<createElement obj="doc" tagName='"br"' var="createdNode"/>
+<appendChild var="appendedChild" obj="employeeNode" newChild="createdNode"/>
+<lastChild interface="Node" obj="employeeNode" var="lchild"/>
+<nodeName obj="lchild" var="childName"/>
+<assertEquals actual="childName" expected='"br"' id="nodeName" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeappendchildchildexists.xml b/test/testcases/tests/level1/core/hc_nodeappendchildchildexists.xml
new file mode 100644
index 0000000..b832113
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeappendchildchildexists.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeappendchildchildexists">
+<metadata>
+<title>hc_nodeAppendChildChildExists</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the "newChild" is already in the tree, it is first
+ removed before the new one is appended.
+
+ Retrieve the "em" second employee and
+ append the first child to the end of the list. After
+ the "appendChild(newChild)" method is invoked the first
+ child should be the one that was second and the last
+ child should be the one that was first.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="childList" type="NodeList"/>
+<var name="childNode" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="memberNode" type="Node"/>
+<var name="memberName" type="DOMString"/>
+<var name="refreshedActual" type="List"/>
+<var name="actual" type="List"/>
+<var name="nodeType" type="int"/>
+<var name="expected" type="List">
+<member>"strong"</member>
+<member>"code"</member>
+<member>"sup"</member>
+<member>"var"</member>
+<member>"acronym"</member>
+<member>"em"</member>
+</var>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="childNode"/>
+<getElementsByTagName interface="Element" obj="childNode" var="childList" tagname='"*"'/>
+<item interface="NodeList" obj="childList" index="0" var="newChild"/>
+<appendChild var="appendedChild" obj="childNode" newChild="newChild"/>
+<for-each collection="childList" member="memberNode">
+ <nodeName var="memberName" obj="memberNode"/>
+ <append collection="actual" item="memberName"/>
+</for-each>
+<assertEquals id="liveByTagName" actual="actual" expected='expected' ignoreCase="auto"/>
+<childNodes var="childList" obj="childNode"/>
+<for-each collection="childList" member="memberNode">
+ <nodeType var="nodeType" obj="memberNode"/>
+ <if><equals actual="nodeType" expected="1"/>
+ <nodeName var="memberName" obj="memberNode"/>
+ <append collection="refreshedActual" item="memberName"/>
+ </if>
+</for-each>
+<assertEquals id="refreshedChildNodes" actual="refreshedActual" expected='expected' ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeappendchilddocfragment.xml b/test/testcases/tests/level1/core/hc_nodeappendchilddocfragment.xml
new file mode 100644
index 0000000..79879fe
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeappendchilddocfragment.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeappendchilddocfragment">
+<metadata>
+<title>hc_nodeAppendChildDocFragment</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the "newChild" is a DocumentFragment object then
+ all its content is added to the child list of this node.
+
+ Create and populate a new DocumentFragment object and
+ append it to the second employee. After the
+ "appendChild(newChild)" method is invoked retrieve the
+ new nodes at the end of the list, they should be the
+ two Element nodes from the DocumentFragment.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="newdocFragment" type="DocumentFragment"/>
+<var name="newChild1" type="Node"/>
+<var name="newChild2" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="result" type="List"/>
+<var name="appendedChild" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="expected" type="List">
+<member>"em"</member>
+<member>"strong"</member>
+<member>"code"</member>
+<member>"sup"</member>
+<member>"var"</member>
+<member>"acronym"</member>
+<member>"br"</member>
+<member>"b"</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<createDocumentFragment obj="doc" var="newdocFragment"/>
+<createElement obj="doc" tagName='"br"' var="newChild1"/>
+<createElement obj="doc" tagName='"b"' var="newChild2"/>
+<appendChild var="appendedChild" obj="newdocFragment" newChild="newChild1"/>
+<appendChild var="appendedChild" obj="newdocFragment" newChild="newChild2"/>
+<appendChild var="appendedChild" obj="employeeNode" newChild="newdocFragment"/>
+<for-each collection="childList" member="child">
+<nodeType var="nodeType" obj="child"/>
+<if><equals actual="nodeType" expected="1"/>
+<nodeName var="childName" obj="child"/>
+<append collection="result" item="childName"/>
+</if>
+</for-each>
+<assertEquals actual="result" expected="expected" ignoreCase="auto" id="nodeNames"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeappendchildgetnodename.xml b/test/testcases/tests/level1/core/hc_nodeappendchildgetnodename.xml
new file mode 100644
index 0000000..ed29709
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeappendchildgetnodename.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeappendchildgetnodename">
+<metadata>
+<title>hc_nodeAppendChildGetNodeName</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "appendChild(newChild)" method returns the node
+ added.
+
+ Append a newly created node to the child list of the
+ second employee and check the NodeName returned. The
+ "getNodeName()" method should return "br".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="newChild" type="Node"/>
+<var name="appendNode" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<createElement obj="doc" tagName='"br"' var="newChild"/>
+<appendChild obj="employeeNode" newChild="newChild" var="appendNode"/>
+<nodeName obj="appendNode" var="childName"/>
+<assertEquals actual="childName" expected='"br"' id="nodeName" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeappendchildinvalidnodetype.xml b/test/testcases/tests/level1/core/hc_nodeappendchildinvalidnodetype.xml
new file mode 100644
index 0000000..6db51ab
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeappendchildinvalidnodetype.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeappendchildinvalidnodetype">
+<metadata>
+<title>hc_nodeAppendChildInvalidNodeType</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "appendChild(newChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if this node is of
+ a type that does not allow children of the type "newChild"
+ to be inserted.
+
+ Retrieve the root node and attempt to append a newly
+ created Attr node. An Element node cannot have children
+ of the "Attr" type, therefore the desired exception
+ should be raised.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-184E7107')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Element"/>
+<var name="newChild" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement obj="doc" var="rootNode"/>
+<createAttribute obj="doc" name='"newAttribute"' var="newChild"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<appendChild var="appendedChild" obj="rootNode" newChild="newChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeappendchildnewchilddiffdocument.xml b/test/testcases/tests/level1/core/hc_nodeappendchildnewchilddiffdocument.xml
new file mode 100644
index 0000000..8730502
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeappendchildnewchilddiffdocument.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeappendchildnewchilddiffdocument">
+<metadata>
+<title>hc_nodeAppendChildNewChildDiffDocument</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "appendChild(newChild)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if the "newChild" was
+ created from a different document than the one that
+ created this node.
+
+ Retrieve the second employee and attempt to append
+ a node created from a different document. An attempt
+ to make such a replacement should raise the desired
+ exception.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-184E7107')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc1" href="hc_staff" willBeModified="false"/>
+<load var="doc2" href="hc_staff" willBeModified="true"/>
+<createElement obj="doc1" tagName='"br"' var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc2" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<appendChild var="appendedChild" obj="elementNode" newChild="newChild"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeappendchildnodeancestor.xml b/test/testcases/tests/level1/core/hc_nodeappendchildnodeancestor.xml
new file mode 100644
index 0000000..3fe2efc
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeappendchildnodeancestor.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeappendchildnodeancestor">
+<metadata>
+<title>hc_nodeAppendChildNodeAncestor</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "appendChild(newChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if the node to
+ append is one of this node's ancestors.
+
+ Retrieve the second employee and attempt to append
+ an ancestor node(root node) to it.
+ An attempt to make such an addition should raise the
+ desired exception.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-184E7107')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement obj="doc" var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<appendChild var="appendedChild" obj="employeeNode" newChild="newChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeattributenodeattribute.xml b/test/testcases/tests/level1/core/hc_nodeattributenodeattribute.xml
new file mode 100644
index 0000000..34886a8
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeattributenodeattribute.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeattributenodeattribute">
+<metadata>
+<title>hc_characterdataDeleteDataEnd</title>
+<creator>Curt Arnold</creator>
+<description>
+The "getAttributes()" method invoked on an Attribute
+Node returns null.
+
+Retrieve the first attribute from the last child of the
+first employee and invoke the "getAttributes()" method
+on the Attribute Node. It should return null.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="NamedNodeMap"/>
+<var name="attrNode" type="Node"/>
+<var name="attrList" type="NamedNodeMap"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<attributes obj="testAddr" var="addrAttr"/>
+<item interface="NamedNodeMap" obj="addrAttr" var="attrNode" index="0"/>
+<attributes obj="attrNode" var="attrList"/>
+<assertNull actual="attrList" id="nodeAttributeNodeAttributeAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeattributenodename.xml b/test/testcases/tests/level1/core/hc_nodeattributenodename.xml
new file mode 100644
index 0000000..3c14306
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeattributenodename.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeattributenodename">
+<metadata>
+<title>hc_nodeattributenodename</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the Attribute named "title" from the last
+ child of the first p element and check the string returned
+ by the "getNodeName()" method. It should be equal to
+ "title".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<getAttributeNode obj="testAddr" name='"title"' var="addrAttr"/>
+<nodeName obj="addrAttr" var="attrName"/>
+<assertEquals actual="attrName" expected='"title"' id="nodeName"
+ ignoreCase="auto" context="attribute"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeattributenodetype.xml b/test/testcases/tests/level1/core/hc_nodeattributenodetype.xml
new file mode 100644
index 0000000..0aea5d1
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeattributenodetype.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeattributenodetype">
+<metadata>
+<title>hc_nodeAttributeNodeType</title>
+<creator>Curt Arnold</creator>
+<description>
+
+ The "getNodeType()" method for an Attribute Node
+
+ returns the constant value 2.
+
+
+
+ Retrieve the first attribute from the last child of
+
+ the first employee and invoke the "getNodeType()"
+
+ method. The method should return 2.
+
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="Attr"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<getAttributeNode obj="testAddr" name='"title"' var="addrAttr"/>
+<nodeType obj="addrAttr" var="nodeType"/>
+<assertEquals actual="nodeType" expected="2" id="nodeAttrNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeattributenodevalue.xml b/test/testcases/tests/level1/core/hc_nodeattributenodevalue.xml
new file mode 100644
index 0000000..a59db72
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeattributenodevalue.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeattributenodevalue">
+<metadata>
+<title>hc_nodeAttributeNodeValue</title>
+<creator>Curt Arnold</creator>
+<description>
+
+ The string returned by the "getNodeValue()" method for an
+ Attribute Node is the value of the Attribute.
+
+ Retrieve the Attribute named "title" from the last
+ child of the first "p" and check the string returned
+ by the "getNodeValue()" method. It should be equal to
+ "Yes".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<getAttributeNode obj="testAddr" name='"title"' var="addrAttr"/>
+<nodeValue obj="addrAttr" var="attrValue"/>
+<assertEquals actual="attrValue" expected='"Yes"' id="nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodechildnodes.xml b/test/testcases/tests/level1/core/hc_nodechildnodes.xml
new file mode 100644
index 0000000..30864d6
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodechildnodes.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodechildnodes">
+<metadata>
+<title>hc_nodeChildNodes</title>
+<creator>Curt Arnold</creator>
+<description>
+
+ The "getChildNodes()" method returns a NodeList
+ that contains all children of this node.
+
+ Retrieve the second employee and check the NodeList
+ returned by the "getChildNodes()" method. The
+ length of the list should be 13.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childNode" type="Node"/>
+<var name="childNodes" type="NodeList"/>
+<var name="nodeType" type="int"/>
+<var name="childName" type="DOMString"/>
+<var name="actual" type="List"/>
+<var name="expected" type="List">
+<member>"em"</member>
+<member>"strong"</member>
+<member>"code"</member>
+<member>"sup"</member>
+<member>"var"</member>
+<member>"acronym"</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childNodes"/>
+<for-each collection="childNodes" member="childNode">
+ <nodeType var="nodeType" obj="childNode"/>
+ <nodeName var="childName" obj="childNode"/>
+ <if><equals actual="nodeType" expected="1"/>
+ <append collection="actual" item="childName"/>
+ <else>
+ <assertEquals actual="nodeType" expected="3" ignoreCase="false" id="textNodeType"/>
+ </else>
+ </if>
+</for-each>
+<assertEquals actual="actual" expected="expected" id="elementNames" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodechildnodesappendchild.xml b/test/testcases/tests/level1/core/hc_nodechildnodesappendchild.xml
new file mode 100644
index 0000000..654877b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodechildnodesappendchild.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodechildnodesappendchild">
+<metadata>
+<title>hc_nodeChildNodesAppendChild</title>
+<creator>Curt Arnold</creator>
+<description>
+ The NodeList returned by the "getChildNodes()" method
+ is live. Changes on the node's children are immediately
+ reflected on the nodes returned in the NodeList.
+
+ Create a NodeList of the children of the second employee
+ and then add a newly created element that was created
+ by the "createElement()" method(Document Interface) to
+ the second employee by using the "appendChild()" method.
+ The length of the NodeList should reflect this new
+ addition to the child list. It should return the value 14.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="createdNode" type="Node"/>
+<var name="childNode" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="childType" type="int"/>
+<var name="textNode" type="Node"/>
+<var name="actual" type="List"/>
+<var name="expected" type="List">
+<member>"em"</member>
+<member>"strong"</member>
+<member>"code"</member>
+<member>"sup"</member>
+<member>"var"</member>
+<member>"acronym"</member>
+<member>"br"</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<createElement obj="doc" var="createdNode" tagName='"br"'/>
+<appendChild obj="employeeNode" newChild="createdNode" var="employeeNode"/>
+<for-each collection="childList" member="childNode">
+ <nodeName var="childName" obj="childNode"/>
+ <nodeType var="childType" obj="childNode"/>
+ <if><equals actual="childType" expected="1"/>
+ <append collection="actual" item="childName"/>
+ <else>
+ <assertEquals id="textNodeType" actual="childType" expected="3" ignoreCase="false"/>
+ </else>
+ </if>
+</for-each>
+<assertEquals actual="actual" expected="expected" id="childElements" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodechildnodesempty.xml b/test/testcases/tests/level1/core/hc_nodechildnodesempty.xml
new file mode 100644
index 0000000..1cc01da
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodechildnodesempty.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodechildnodesempty">
+<metadata>
+<title>hc_nodeChildNodesEmpty</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getChildNodes()" method returns a NodeList
+ that contains all children of this node. If there
+ are not any children, this is a NodeList that does not
+ contain any nodes.
+
+ Retrieve the character data of the second "em" node and
+ invoke the "getChildNodes()" method. The
+ NodeList returned should not have any nodes.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="childList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="textNode" type="Node"/>
+<var name="length" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"em"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<firstChild var="textNode" obj="employeeNode"/>
+<childNodes var="childList" obj="textNode"/>
+<length var="length" obj="childList" interface="NodeList"/>
+<assertEquals expected="0" actual="length" id="length_zero" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodecloneattributescopied.xml b/test/testcases/tests/level1/core/hc_nodecloneattributescopied.xml
new file mode 100644
index 0000000..e03df1b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodecloneattributescopied.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodecloneattributescopied">
+<metadata>
+<title>hc_nodecloneattributescopied</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the second acronym element and invoke
+ the cloneNode method. The
+ duplicate node returned by the method should copy the
+ attributes associated with this node.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=184"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="addressNode" type="Node"/>
+<var name="clonedNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="attributeNode" type="Node"/>
+<var name="attributeName" type="DOMString"/>
+<var name="result" type="Collection"/>
+<var name="htmlExpected" type="Collection">
+<member>"class"</member>
+<member>"title"</member>
+</var>
+<var name="expected" type="Collection">
+<member>"class"</member>
+<member>"title"</member>
+<member>"dir"</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="addressNode"/>
+<cloneNode obj="addressNode" deep="false" var="clonedNode"/>
+<attributes obj="clonedNode" var="attributes"/>
+<for-each collection="attributes" member="attributeNode">
+<nodeName obj="attributeNode" var="attributeName"/>
+<append collection="result" item="attributeName"/>
+</for-each>
+<if><contentType type="text/html"/>
+<assertEquals actual="result" expected="htmlExpected" id="nodeNames_html" ignoreCase="true"/>
+<else>
+<assertEquals actual="result" expected="expected" id="nodeNames" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeclonefalsenocopytext.xml b/test/testcases/tests/level1/core/hc_nodeclonefalsenocopytext.xml
new file mode 100644
index 0000000..2b43302
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeclonefalsenocopytext.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeclonefalsenocopytext">
+<metadata>
+<title>hc_nodeCloneFalseNoCopyText</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "cloneNode(deep)" method does not copy text unless it
+ is deep cloned.(Test for deep=false)
+
+ Retrieve the fourth child of the second employee and
+ the "cloneNode(deep)" method with deep=false. The
+ duplicate node returned by the method should not copy
+ any text data contained in this node.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="childNode" type="Node"/>
+<var name="clonedNode" type="Node"/>
+<var name="lastChildNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="3" var="childNode"/>
+<cloneNode obj="childNode" deep="false" var="clonedNode"/>
+<lastChild interface="Node" obj="clonedNode" var="lastChildNode"/>
+<assertNull actual="lastChildNode" id="nodeCloneFalseNoCopyTextAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeclonegetparentnull.xml b/test/testcases/tests/level1/core/hc_nodeclonegetparentnull.xml
new file mode 100644
index 0000000..ee2b0a2
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeclonegetparentnull.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeclonegetparentnull">
+<metadata>
+<title>hc_nodeCloneGetParentNull</title>
+<creator>Curt Arnold</creator>
+<description>
+ The duplicate node returned by the "cloneNode(deep)"
+ method does not have a ParentNode.
+
+ Retrieve the second employee and invoke the
+ "cloneNode(deep)" method with deep=false. The
+ duplicate node returned should return null when the
+ "getParentNode()" is invoked.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="clonedNode" type="Node"/>
+<var name="parentNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<cloneNode obj="employeeNode" deep="false" var="clonedNode"/>
+<parentNode interface="Node" obj="clonedNode" var="parentNode"/>
+<assertNull actual="parentNode" id="nodeCloneGetParentNullAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeclonenodefalse.xml b/test/testcases/tests/level1/core/hc_nodeclonenodefalse.xml
new file mode 100644
index 0000000..fd919fe
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeclonenodefalse.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeclonenodefalse">
+<metadata>
+<title>hc_nodeCloneNodeFalse</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "cloneNode(deep)" method returns a copy of the node
+ only if deep=false.
+
+ Retrieve the second employee and invoke the
+ "cloneNode(deep)" method with deep=false. The
+ method should only clone this node. The NodeName and
+ length of the NodeList are checked. The "getNodeName()"
+ method should return "employee" and the "getLength()"
+ method should return 0.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="clonedNode" type="Node"/>
+<var name="cloneName" type="DOMString"/>
+<var name="cloneChildren" type="NodeList"/>
+<var name="length" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<cloneNode obj="employeeNode" deep="false" var="clonedNode"/>
+<nodeName obj="clonedNode" var="cloneName"/>
+<assertEquals actual="cloneName" expected='"p"' ignoreCase="auto" id="strong"/>
+<childNodes obj="clonedNode" var="cloneChildren"/>
+<length interface="NodeList" obj="cloneChildren" var="length"/>
+<assertEquals actual="length" expected="0" ignoreCase="false" id="length"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeclonenodetrue.xml b/test/testcases/tests/level1/core/hc_nodeclonenodetrue.xml
new file mode 100644
index 0000000..45889d9
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeclonenodetrue.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeclonenodetrue">
+<metadata>
+<title>hc_nodeCloneNodeTrue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "cloneNode(deep)" method returns a copy of the node
+ and the subtree under it if deep=true.
+
+ Retrieve the second employee and invoke the
+ "cloneNode(deep)" method with deep=true. The
+ method should clone this node and the subtree under it.
+ The NodeName of each child in the returned node is
+ checked to insure the entire subtree under the second
+ employee was cloned.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="clonedNode" type="Node"/>
+<var name="clonedList" type="NodeList"/>
+<var name="clonedChild" type="Node"/>
+<var name="clonedChildName" type="DOMString"/>
+<var name="origList" type="NodeList"/>
+<var name="origChild" type="Node"/>
+<var name="origChildName" type="DOMString"/>
+<var name="result" type="List"/>
+<var name="expected" type="List"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="origList"/>
+<for-each collection="origList" member="origChild">
+<nodeName obj="origChild" var="origChildName"/>
+<append collection="expected" item="origChildName"/>
+</for-each>
+<cloneNode obj="employeeNode" deep="true" var="clonedNode"/>
+<childNodes obj="clonedNode" var="clonedList"/>
+<for-each collection="clonedList" member="clonedChild">
+<nodeName obj="clonedChild" var="clonedChildName"/>
+<append collection="result" item="clonedChildName"/>
+</for-each>
+<assertEquals actual="result" expected="expected" id="clone" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeclonetruecopytext.xml b/test/testcases/tests/level1/core/hc_nodeclonetruecopytext.xml
new file mode 100644
index 0000000..8e4572f
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeclonetruecopytext.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeclonetruecopytext">
+<metadata>
+<title>hc_nodeCloneTrueCopyText</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "cloneNode(deep)" method does not copy text unless it
+ is deep cloned.(Test for deep=true)
+
+ Retrieve the eighth child of the second employee and
+ the "cloneNode(deep)" method with deep=true. The
+ duplicate node returned by the method should copy
+ any text data contained in this node.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="childNode" type="Node"/>
+<var name="clonedNode" type="Node"/>
+<var name="lastChildNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"sup"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="childNode"/>
+<cloneNode obj="childNode" deep="true" var="clonedNode"/>
+<lastChild interface="Node" obj="clonedNode" var="lastChildNode"/>
+<nodeValue obj="lastChildNode" var="childValue"/>
+<assertEquals actual="childValue" expected='"35,000"' id="cloneContainsText" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodecommentnodeattributes.xml b/test/testcases/tests/level1/core/hc_nodecommentnodeattributes.xml
new file mode 100644
index 0000000..c469443
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodecommentnodeattributes.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodecommentnodeattributes">
+<metadata>
+<title>hc_nodeCommentNodeAttributes</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getAttributes()" method invoked on a Comment
+ Node returns null.
+
+ Find any comment that is an immediate child of the root
+ and assert that Node.attributes is null. Then create
+ a new comment node (in case they had been omitted) and
+ make the assertion.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=248"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=263"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="commentNode" type="Node"/>
+<var name="nodeList" type="NodeList"/>
+<var name="attrList" type="NamedNodeMap"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<childNodes obj="doc" var="nodeList"/>
+<for-each collection="nodeList" member="commentNode">
+<nodeType obj="commentNode" var="nodeType"/>
+<if>
+<equals actual="nodeType" expected="8" ignoreCase="false"/>
+<attributes obj="commentNode" var="attrList"/>
+<assertNull actual="attrList" id="existingCommentAttributesNull"/>
+</if>
+</for-each>
+<createComment var="commentNode" obj="doc" data='"This is a comment"'/>
+<attributes obj="commentNode" var="attrList"/>
+<assertNull actual="attrList" id="createdCommentAttributesNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodecommentnodename.xml b/test/testcases/tests/level1/core/hc_nodecommentnodename.xml
new file mode 100644
index 0000000..61a6ea7
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodecommentnodename.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodecommentnodename">
+<metadata>
+<title>hc_nodeCommentNodeName</title>
+<creator>Curt Arnold</creator>
+<description>
+ The string returned by the "getNodeName()" method for a
+ Comment Node is "#comment".
+
+ Retrieve the Comment node in the XML file
+ and check the string returned by the "getNodeName()"
+ method. It should be equal to "#comment".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=248"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="commentNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="commentName" type="DOMString"/>
+<var name="commentNodeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<childNodes obj="doc" var="elementList"/>
+<for-each collection="elementList" member="commentNode">
+<nodeType obj="commentNode" var="nodeType"/>
+<if>
+<equals actual="nodeType" expected="8" ignoreCase="false"/>
+<nodeName obj="commentNode" var="commentNodeName"/>
+<assertEquals actual="commentNodeName" expected='"#comment"' id="existingNodeName" ignoreCase="false"/>
+</if>
+</for-each>
+<createComment var="commentNode" obj="doc" data='"This is a comment"'/>
+<nodeName obj="commentNode" var="commentNodeName"/>
+<assertEquals actual="commentNodeName" expected='"#comment"' id="createdNodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodecommentnodetype.xml b/test/testcases/tests/level1/core/hc_nodecommentnodetype.xml
new file mode 100644
index 0000000..78abc40
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodecommentnodetype.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodecommentnodetype">
+<metadata>
+<title>hc_nodeCommentNodeType</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getNodeType()" method for a Comment Node
+ returns the constant value 8.
+
+ Retrieve the nodes from the document and check for
+ a comment node and invoke the "getNodeType()" method. This should
+ return 8.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=248"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="testList" type="NodeList"/>
+<var name="commentNode" type="Node"/>
+<var name="commentNodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<childNodes obj="doc" var="testList"/>
+<for-each collection="testList" member="commentNode">
+<nodeName obj="commentNode" var="commentNodeName"/>
+<if>
+<equals actual="commentNodeName" expected='"#comment"' ignoreCase="false"/>
+<nodeType obj="commentNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="8" id="existingCommentNodeType" ignoreCase="false"/>
+</if>
+</for-each>
+<createComment var="commentNode" obj="doc" data='"This is a comment"'/>
+<nodeType obj="commentNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="8" id="createdCommentNodeType" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodecommentnodevalue.xml b/test/testcases/tests/level1/core/hc_nodecommentnodevalue.xml
new file mode 100644
index 0000000..cc802c8
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodecommentnodevalue.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodecommentnodevalue">
+<metadata>
+<title>hc_nodeCommentNodeValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ Comment Node is the content of the comment.
+
+ Retrieve the comment in the XML file and
+ check the string returned by the "getNodeValue()" method.
+ It should be equal to "This is comment number 1".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=248"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="commentNode" type="Node"/>
+<var name="commentName" type="DOMString"/>
+<var name="commentValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<childNodes obj="doc" var="elementList"/>
+<for-each collection="elementList" member="commentNode">
+<nodeName obj="commentNode" var="commentName"/>
+<if>
+<equals actual="commentName" expected='"#comment"' ignoreCase="false"/>
+<nodeValue obj="commentNode" var="commentValue"/>
+<assertEquals actual="commentValue" expected='" This is comment number 1."' id="value" ignoreCase="false"/>
+</if>
+</for-each>
+<createComment var="commentNode" obj="doc" data='" This is a comment"'/>
+<nodeValue obj="commentNode" var="commentValue"/>
+<assertEquals actual="commentValue" expected='" This is a comment"' id="createdCommentNodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodedocumentfragmentnodename.xml b/test/testcases/tests/level1/core/hc_nodedocumentfragmentnodename.xml
new file mode 100644
index 0000000..e39d866
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodedocumentfragmentnodename.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodedocumentfragmentnodename">
+<metadata>
+<title>hc_nodeDocumentFragmentNodeName</title>
+<creator>Curt Arnold</creator>
+<description>
+ The string returned by the "getNodeName()" method for a
+ DocumentFragment Node is "#document-frament".
+
+ Retrieve the DOM document and invoke the
+ "createDocumentFragment()" method and check the string
+ returned by the "getNodeName()" method. It should be
+ equal to "#document-fragment".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="documentFragmentName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="docFragment"/>
+<nodeName obj="docFragment" var="documentFragmentName"/>
+<assertEquals actual="documentFragmentName" expected='"#document-fragment"' id="nodeDocumentFragmentNodeNameAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodedocumentfragmentnodetype.xml b/test/testcases/tests/level1/core/hc_nodedocumentfragmentnodetype.xml
new file mode 100644
index 0000000..fcc8dd0
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodedocumentfragmentnodetype.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodedocumentfragmentnodetype">
+<metadata>
+<title>hc_nodeDocumentFragmentNodeType</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getNodeType()" method for a DocumentFragment Node
+ returns the constant value 11.
+
+ Invoke the "createDocumentFragment()" method and
+ examine the NodeType of the document fragment
+ returned by the "getNodeType()" method. The method
+ should return 11.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="documentFragmentNode" type="DocumentFragment"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="documentFragmentNode"/>
+<nodeType obj="documentFragmentNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="11" id="nodeDocumentFragmentNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodedocumentfragmentnodevalue.xml b/test/testcases/tests/level1/core/hc_nodedocumentfragmentnodevalue.xml
new file mode 100644
index 0000000..b446835
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodedocumentfragmentnodevalue.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodedocumentfragmentnodevalue">
+<metadata>
+<title>hc_nodeDocumentFragmentNodeValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ DocumentFragment Node is null.
+
+ Retrieve the DOM document and invoke the
+ "createDocumentFragment()" method and check the string
+ returned by the "getNodeValue()" method. It should be
+ equal to null.
+</description>
+
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3"/>
+<!--nodeValue attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<!-- Node.attributes -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="attrList" type="NamedNodeMap"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="docFragment"/>
+<!-- despite the name, this was the only assertion in the original test -->
+<attributes obj="docFragment" var="attrList"/>
+<assertNull actual="attrList" id="attributesNull"/>
+<!-- now actually test the initial value of nodeValue -->
+<nodeValue obj="docFragment" var="value"/>
+<assertNull actual="value" id="initiallyNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodedocumentnodeattribute.xml b/test/testcases/tests/level1/core/hc_nodedocumentnodeattribute.xml
new file mode 100644
index 0000000..87ac348
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodedocumentnodeattribute.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodedocumentnodeattribute">
+<metadata>
+<title>hc_nodedocumentnodeattribute</title>
+<creator>Curt Arnold</creator>
+<description>
+The "getAttributes()" method invoked on a Document
+Node returns null.
+
+Retrieve the DOM Document and invoke the
+"getAttributes()" method on the Document Node.
+It should return null.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- Document interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attrList" type="NamedNodeMap"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<attributes obj="doc" var="attrList"/>
+<assertNull actual="attrList" id="doc_attributes_is_null"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodedocumentnodename.xml b/test/testcases/tests/level1/core/hc_nodedocumentnodename.xml
new file mode 100644
index 0000000..e2c4882
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodedocumentnodename.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodedocumentnodename">
+<metadata>
+<title>hc_nodeDocumentNodeName</title>
+<creator>Curt Arnold</creator>
+<description>
+ The string returned by the "getNodeName()" method for a
+ Document Node is "#document".
+
+ Retrieve the DOM document and check the string returned
+ by the "getNodeName()" method. It should be equal to
+ "#document".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!-- Document interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="documentName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<nodeName obj="doc" var="documentName"/>
+<assertEquals actual="documentName" expected='"#document"' id="documentNodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodedocumentnodetype.xml b/test/testcases/tests/level1/core/hc_nodedocumentnodetype.xml
new file mode 100644
index 0000000..dd0ea93
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodedocumentnodetype.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodedocumentnodetype">
+<metadata>
+<title>hc_nodeDocumentNodeType</title>
+<creator>Curt Arnold</creator>
+<description>
+The "getNodeType()" method for a Document Node
+returns the constant value 9.
+
+Retrieve the document and invoke the "getNodeType()"
+method. The method should return 9.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!-- Document interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<nodeType obj="doc" var="nodeType"/>
+<assertEquals actual="nodeType" expected="9" id="nodeDocumentNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodedocumentnodevalue.xml b/test/testcases/tests/level1/core/hc_nodedocumentnodevalue.xml
new file mode 100644
index 0000000..101372f
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodedocumentnodevalue.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodedocumentnodevalue">
+<metadata>
+<title>hc_nodeDocumentNodeValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ Document Node is null.
+
+ Retrieve the DOM Document and check the string returned
+ by the "getNodeValue()" method. It should be equal to
+ null.
+
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!-- Document interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="documentValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<nodeValue obj="doc" var="documentValue"/>
+<assertNull actual="documentValue" id="documentNodeValue"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeelementnodeattributes.xml b/test/testcases/tests/level1/core/hc_nodeelementnodeattributes.xml
new file mode 100644
index 0000000..bba5013
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeelementnodeattributes.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeelementnodeattributes">
+<metadata>
+<title>hc_nodeelementnodeattributes</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the third "acronym" element and evaluate Node.attributes.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=236"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=184"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="NamedNodeMap"/>
+<var name="attrNode" type="Node"/>
+<var name="attrName" type="DOMString"/>
+<var name="attrList" type="Collection"/>
+<var name="htmlExpected" type="Collection">
+<member>"title"</member>
+<member>"class"</member>
+</var>
+<var name="expected" type="Collection">
+<member>"title"</member>
+<member>"class"</member>
+<member>"dir"</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testAddr"/>
+<attributes obj="testAddr" var="addrAttr"/>
+<for-each collection="addrAttr" member="attrNode">
+<nodeName obj="attrNode" var="attrName"/>
+<append collection="attrList" item="attrName"/>
+</for-each>
+<if><contentType type="text/html"/>
+<assertEquals actual="attrList" expected="htmlExpected" id="attrNames_html"
+ ignoreCase="true"/>
+<else>
+<assertEquals actual="attrList" expected="expected" id="attrNames" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeelementnodename.xml b/test/testcases/tests/level1/core/hc_nodeelementnodename.xml
new file mode 100644
index 0000000..8a7188c
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeelementnodename.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeelementnodename">
+<metadata>
+<title>hc_nodeelementnodename</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the first Element Node(Root Node) of the
+ DOM object and check the string returned by the
+ "getNodeName()" method. It should be equal to its
+ tagName.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=251"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementNode" type="Element"/>
+<var name="elementName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentElement obj="doc" var="elementNode"/>
+<nodeName obj="elementNode" var="elementName"/>
+<if><contentType type="image/svg+xml"/>
+<assertEquals actual="elementName" expected='"svg"' id="svgNodeName" ignoreCase="false"/>
+<else>
+<assertEquals actual="elementName" expected='"html"' id="nodeName" ignoreCase="auto"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeelementnodetype.xml b/test/testcases/tests/level1/core/hc_nodeelementnodetype.xml
new file mode 100644
index 0000000..704a9c3
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeelementnodetype.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeelementnodetype">
+<metadata>
+<title>hc_nodeElementNodeType</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getNodeType()" method for an Element Node
+ returns the constant value 1.
+
+ Retrieve the root node and invoke the "getNodeType()"
+ method. The method should return 1.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Element"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<nodeType obj="rootNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="1" id="nodeElementNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeelementnodevalue.xml b/test/testcases/tests/level1/core/hc_nodeelementnodevalue.xml
new file mode 100644
index 0000000..50f8912
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeelementnodevalue.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeelementnodevalue">
+<metadata>
+<title>hc_nodeElementNodeValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The string returned by the "getNodeValue()" method for an
+ Element Node is null.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementNode" type="Element"/>
+<var name="elementValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentElement obj="doc" var="elementNode"/>
+<nodeValue obj="elementNode" var="elementValue"/>
+<assertNull actual="elementValue" id="elementNodeValue"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodegetfirstchild.xml b/test/testcases/tests/level1/core/hc_nodegetfirstchild.xml
new file mode 100644
index 0000000..76d1b93
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodegetfirstchild.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodegetfirstchild">
+<metadata>
+<title>hc_nodeGetFirstChild</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getFirstChild()" method returns the first child
+ of this node.
+
+ Retrieve the second employee and invoke the
+ "getFirstChild()" method. The NodeName returned
+ should be "#text" or "EM".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-169727388"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="fchildNode" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<firstChild interface="Node" obj="employeeNode" var="fchildNode"/>
+<nodeName obj="fchildNode" var="childName"/>
+<if><equals expected='"#text"' actual="childName"/>
+<assertEquals actual="childName" expected='"#text"' id="firstChild_w_whitespace" ignoreCase="false"/>
+<else>
+<assertEquals actual="childName" expected='"em"' id="firstChild_wo_whitespace" ignoreCase="auto"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodegetfirstchildnull.xml b/test/testcases/tests/level1/core/hc_nodegetfirstchildnull.xml
new file mode 100644
index 0000000..2d85cc2
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodegetfirstchildnull.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodegetfirstchildnull">
+<metadata>
+<title>hc_nodeGetFirstChildNull</title>
+<creator>Curt Arnold</creator>
+<description>
+ If there is not a first child then the "getFirstChild()"
+ method returns null.
+
+ Retrieve the text of the first "em" element and invoke the "getFirstChild()" method. It
+ should return null.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-169727388"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="emList" type="NodeList"/>
+<var name="emNode" type="Node"/>
+<var name="emText" type="CharacterData"/>
+<var name="nullChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"em"' var="emList"/>
+<item interface="NodeList" obj="emList" index="0" var="emNode"/>
+<firstChild var="emText" obj="emNode" interface="Node"/>
+<firstChild var="nullChild" obj="emText" interface="Node"/>
+<assertNull actual="nullChild" id="nullChild"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodegetlastchild.xml b/test/testcases/tests/level1/core/hc_nodegetlastchild.xml
new file mode 100644
index 0000000..37952f6
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodegetlastchild.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodegetlastchild">
+<metadata>
+<title>hc_nodeGetLastChild</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getLastChild()" method returns the last child
+ of this node.
+
+ Retrieve the second employee and invoke the
+ "getLastChild()" method. The NodeName returned
+ should be "#text".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-61AD09FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="lchildNode" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<lastChild interface="Node" obj="employeeNode" var="lchildNode"/>
+<nodeName obj="lchildNode" var="childName"/>
+<assertEquals actual="childName" expected='"#text"' id="whitespace" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodegetlastchildnull.xml b/test/testcases/tests/level1/core/hc_nodegetlastchildnull.xml
new file mode 100644
index 0000000..dd6e9f8
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodegetlastchildnull.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodegetlastchildnull">
+<metadata>
+<title>hc_nodeGetLastChildNull</title>
+<creator>Curt Arnold</creator>
+<description>
+
+ If there is not a last child then the "getLastChild()"
+ method returns null.
+
+ Retrieve the text of the first "em" element and invoke the "getFirstChild()" method. It
+ should return null.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-61AD09FB"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="emList" type="NodeList"/>
+<var name="emNode" type="Node"/>
+<var name="emText" type="CharacterData"/>
+<var name="nullChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"em"' var="emList"/>
+<item interface="NodeList" obj="emList" index="0" var="emNode"/>
+<firstChild var="emText" obj="emNode" interface="Node"/>
+<lastChild var="nullChild" obj="emText" interface="Node"/>
+<assertNull actual="nullChild" id="nullChild"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodegetnextsibling.xml b/test/testcases/tests/level1/core/hc_nodegetnextsibling.xml
new file mode 100644
index 0000000..9410116
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodegetnextsibling.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodegetnextsibling">
+<metadata>
+<title>hc_nodeGetNextSibling</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getNextSibling()" method returns the node immediately
+ following this node.
+
+ Retrieve the first child of the second employee and
+ invoke the "getNextSibling()" method. It should return
+ a node with the NodeName of "#text".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6AC54C2F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="emNode" type="Node"/>
+<var name="nsNode" type="Node"/>
+<var name="nsName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"em"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="emNode"/>
+<nextSibling interface="Node" obj="emNode" var="nsNode"/>
+<nodeName obj="nsNode" var="nsName"/>
+<assertEquals actual="nsName" expected='"#text"' id="whitespace" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodegetnextsiblingnull.xml b/test/testcases/tests/level1/core/hc_nodegetnextsiblingnull.xml
new file mode 100644
index 0000000..069f877
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodegetnextsiblingnull.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodegetnextsiblingnull">
+<metadata>
+<title>hc_nodeGetNextSiblingNull</title>
+<creator>Curt Arnold</creator>
+<description>
+
+ If there is not a node immediately following this node the
+
+ "getNextSibling()" method returns null.
+
+
+
+ Retrieve the first child of the second employee and
+
+ invoke the "getNextSibling()" method. It should
+
+ be set to null.
+
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6AC54C2F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="lcNode" type="Node"/>
+<var name="nsNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<lastChild interface="Node" obj="employeeNode" var="lcNode"/>
+<nextSibling interface="Node" obj="lcNode" var="nsNode"/>
+<assertNull actual="nsNode" id="nodeGetNextSiblingNullAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodegetownerdocument.xml b/test/testcases/tests/level1/core/hc_nodegetownerdocument.xml
new file mode 100644
index 0000000..524b786
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodegetownerdocument.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodegetownerdocument">
+<metadata>
+<title>hc_nodegetownerdocument</title>
+<creator>Curt Arnold</creator>
+<description>
+Evaluate Node.ownerDocument on the second "p" element.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#node-ownerDoc"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=251"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="docNode" type="Node"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docElement" type="Element"/>
+<var name="elementName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="docNode"/>
+<ownerDocument obj="docNode" var="ownerDocument"/>
+<documentElement obj="ownerDocument" var="docElement"/>
+<nodeName obj="docElement" var="elementName"/>
+<if><contentType type="image/svg+xml"/>
+<assertEquals actual="elementName" expected='"svg"' id="svgNodeName" ignoreCase="false"/>
+<else>
+<assertEquals actual="elementName" expected='"html"' id="ownerDocElemTagName" ignoreCase="auto"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodegetownerdocumentnull.xml b/test/testcases/tests/level1/core/hc_nodegetownerdocumentnull.xml
new file mode 100644
index 0000000..4366b19
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodegetownerdocumentnull.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodegetownerdocumentnull">
+<metadata>
+<title>hc_nodeGetOwnerDocumentNull</title>
+<creator>Curt Arnold</creator>
+<description>
+
+ The "getOwnerDocument()" method returns null if the target
+
+ node itself is a document.
+
+
+
+ Invoke the "getOwnerDocument()" method on the master
+
+ document. The Document returned should be null.
+
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#node-ownerDoc"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="ownerDocument" type="Document"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<ownerDocument obj="doc" var="ownerDocument"/>
+<assertNull actual="ownerDocument" id="nodeGetOwnerDocumentNullAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodegetprevioussibling.xml b/test/testcases/tests/level1/core/hc_nodegetprevioussibling.xml
new file mode 100644
index 0000000..0ececda
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodegetprevioussibling.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodegetprevioussibling">
+<metadata>
+<title>hc_nodeGetPreviousSibling</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getPreviousSibling()" method returns the node
+ immediately preceding this node.
+
+ Retrieve the second child of the second employee and
+ invoke the "getPreviousSibling()" method. It should
+ return a node with a NodeName of "#text".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-640FB3C8"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="psNode" type="Node"/>
+<var name="psName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"strong"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="nameNode"/>
+<previousSibling interface="Node" obj="nameNode" var="psNode"/>
+<nodeName obj="psNode" var="psName"/>
+<assertEquals actual="psName" expected='"#text"' id="whitespace" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodegetprevioussiblingnull.xml b/test/testcases/tests/level1/core/hc_nodegetprevioussiblingnull.xml
new file mode 100644
index 0000000..c9cc459
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodegetprevioussiblingnull.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodegetprevioussiblingnull">
+<metadata>
+<title>hc_nodeGetPreviousSiblingNull</title>
+<creator>Curt Arnold</creator>
+<description>
+
+ If there is not a node immediately preceding this node the
+
+ "getPreviousSibling()" method returns null.
+
+
+
+ Retrieve the first child of the second employee and
+
+ invoke the "getPreviousSibling()" method. It should
+
+ be set to null.
+
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-640FB3C8"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="fcNode" type="Node"/>
+<var name="psNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="employeeNode"/>
+<firstChild interface="Node" obj="employeeNode" var="fcNode"/>
+<previousSibling interface="Node" obj="fcNode" var="psNode"/>
+<assertNull actual="psNode" id="nodeGetPreviousSiblingNullAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodehaschildnodes.xml b/test/testcases/tests/level1/core/hc_nodehaschildnodes.xml
new file mode 100644
index 0000000..eaba4da
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodehaschildnodes.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodehaschildnodes">
+<metadata>
+<title>hc_nodeHasChildNodes</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "hasChildNodes()" method returns true if the node
+ has children.
+
+ Retrieve the root node("staff") and invoke the
+ "hasChildNodes()" method. It should return the boolean
+ value "true".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-810594187"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<hasChildNodes obj="employeeNode" var="state"/>
+<assertTrue actual="state" id="nodeHasChildAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodehaschildnodesfalse.xml b/test/testcases/tests/level1/core/hc_nodehaschildnodesfalse.xml
new file mode 100644
index 0000000..15d29d7
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodehaschildnodesfalse.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodehaschildnodesfalse">
+<metadata>
+<title>hc_nodeHasChildNodesFalse</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "hasChildNodes()" method returns false if the node
+ does not have any children.
+
+ Retrieve the text of the first "em" element and invoke the "hasChildNodes()" method. It
+ should return false.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-810594187"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="emList" type="NodeList"/>
+<var name="emNode" type="Node"/>
+<var name="emText" type="CharacterData"/>
+<var name="hasChild" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"em"' var="emList"/>
+<item interface="NodeList" obj="emList" index="0" var="emNode"/>
+<firstChild var="emText" obj="emNode" interface="Node"/>
+<hasChildNodes var="hasChild" obj="emText" interface="Node"/>
+<assertFalse actual="hasChild" id="hasChild"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeinsertbefore.xml b/test/testcases/tests/level1/core/hc_nodeinsertbefore.xml
new file mode 100644
index 0000000..eb5d415
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeinsertbefore.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeinsertbefore">
+<metadata>
+<title>hc_nodeInsertBefore</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method inserts the
+ node "newChild" before the node "refChild".
+
+ Insert a newly created Element node before the second
+ sup element in the document and check the "newChild"
+ and "refChild" after insertion for correct placement.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=261"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="insertedNode" type="Node"/>
+<var name="actual" type="List"/>
+<var name="expected" type="List">
+<member>"em"</member>
+<member>"strong"</member>
+<member>"code"</member>
+<member>"br"</member>
+<member>"sup"</member>
+<member>"var"</member>
+<member>"acronym"</member>
+</var>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"sup"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="refChild"/>
+<parentNode interface="Node" var="employeeNode" obj="refChild"/>
+<childNodes var="childList" obj="employeeNode"/>
+<createElement obj="doc" tagName='"br"' var="newChild"/>
+<insertBefore var="insertedNode" obj="employeeNode" newChild="newChild" refChild="refChild"/>
+<for-each collection="childList" member="child">
+<nodeType var="nodeType" obj="child"/>
+<if><equals actual="nodeType" expected="1"/>
+<nodeName obj="child" var="childName"/>
+<append collection="actual" item="childName"/>
+</if>
+</for-each>
+<assertEquals actual="actual" expected="expected" id="nodeNames" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeinsertbeforedocfragment.xml b/test/testcases/tests/level1/core/hc_nodeinsertbeforedocfragment.xml
new file mode 100644
index 0000000..9f52561
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeinsertbeforedocfragment.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeinsertbeforedocfragment">
+<metadata>
+<title>hc_nodeInsertBeforeDocFragment</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the "newChild" is a DocumentFragment object then all
+ its children are inserted in the same order before the
+ the "refChild".
+
+ Create a DocumentFragment object and populate it with
+ two Element nodes. Retrieve the second employee and
+ insert the newly created DocumentFragment before its
+ fourth child. The second employee should now have two
+ extra children("newChild1" and "newChild2") at
+ positions fourth and fifth respectively.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="newdocFragment" type="DocumentFragment"/>
+<var name="newChild1" type="Node"/>
+<var name="newChild2" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="3" var="refChild"/>
+<createDocumentFragment obj="doc" var="newdocFragment"/>
+<createElement obj="doc" tagName='"br"' var="newChild1"/>
+<createElement obj="doc" tagName='"b"' var="newChild2"/>
+<appendChild var="appendedChild" obj="newdocFragment" newChild="newChild1"/>
+<appendChild var="appendedChild" obj="newdocFragment" newChild="newChild2"/>
+<insertBefore var="insertedNode" obj="employeeNode" newChild="newdocFragment" refChild="refChild"/>
+<item interface="NodeList" obj="childList" index="3" var="child"/>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected='"br"' ignoreCase="auto" id="childName3"/>
+<item interface="NodeList" obj="childList" index="4" var="child"/>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected='"b"' ignoreCase="auto" id="childName4"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeinsertbeforeinvalidnodetype.xml b/test/testcases/tests/level1/core/hc_nodeinsertbeforeinvalidnodetype.xml
new file mode 100644
index 0000000..9340f54
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeinsertbeforeinvalidnodetype.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeinsertbeforeinvalidnodetype">
+<metadata>
+<title>hc_nodeInsertBeforeInvalidNodeType</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if this node is of
+ a type that does not allow children of the type "newChild"
+ to be inserted.
+
+ Retrieve the root node and attempt to insert a newly
+ created Attr node. An Element node cannot have children
+ of the "Attr" type, therefore the desired exception
+ should be raised.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=406"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Element"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttribute obj="doc" name='"title"' var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="refChild"/>
+<parentNode var="rootNode" obj="refChild" interface="Node"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<insertBefore var="insertedNode" obj="rootNode" newChild="newChild" refChild="refChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeinsertbeforenewchilddiffdocument.xml b/test/testcases/tests/level1/core/hc_nodeinsertbeforenewchilddiffdocument.xml
new file mode 100644
index 0000000..58e4b92
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeinsertbeforenewchilddiffdocument.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeinsertbeforenewchilddiffdocument">
+<metadata>
+<title>hc_nodeInsertBeforeNewChildDiffDocument</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if the "newChild" was
+ created from a different document than the one that
+ created this node.
+
+ Retrieve the second employee and attempt to insert a new
+ child that was created from a different document than the
+ one that created the second employee. An attempt to
+ insert such a child should raise the desired exception.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="refChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc1" href="hc_staff" willBeModified="false"/>
+<load var="doc2" href="hc_staff" willBeModified="true"/>
+<createElement obj="doc1" tagName='"br"' var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc2" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<firstChild var="refChild" obj="elementNode" interface="Node"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<insertBefore var="insertedNode" obj="elementNode" newChild="newChild" refChild="refChild"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeinsertbeforenewchildexists.xml b/test/testcases/tests/level1/core/hc_nodeinsertbeforenewchildexists.xml
new file mode 100644
index 0000000..db8edbd
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeinsertbeforenewchildexists.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeinsertbeforenewchildexists">
+<metadata>
+<title>hc_nodeInsertBeforeNewChildExists</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the "newChild" is already in the tree, the
+ "insertBefore(newChild,refChild)" method must first
+ remove it before the insertion takes place.
+
+ Insert a node Element ("em") that is already
+ present in the tree. The existing node should be
+ removed first and the new one inserted. The node is
+ inserted at a different position in the tree to assure
+ that it was indeed inserted.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="insertedNode" type="Node"/>
+<var name="expected" type="List">
+<member>"strong"</member>
+<member>"code"</member>
+<member>"sup"</member>
+<member>"var"</member>
+<member>"em"</member>
+<member>"acronym"</member>
+</var>
+<var name="result" type="List"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<getElementsByTagName interface="Element" obj="employeeNode" tagname='"*"' var="childList"/>
+<item interface="NodeList" obj="childList" index="5" var="refChild"/>
+<item interface="NodeList" obj="childList" index="0" var="newChild"/>
+<insertBefore var="insertedNode" obj="employeeNode" newChild="newChild" refChild="refChild"/>
+<for-each collection="childList" member="child">
+<nodeType obj="child" var="nodeType"/>
+<if><equals actual="nodeType" expected="1"/>
+<nodeName obj="child" var="childName"/>
+<append collection="result" item="childName"/>
+</if>
+</for-each>
+<assertEquals id="childNames" actual="result" expected="expected" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeinsertbeforenodeancestor.xml b/test/testcases/tests/level1/core/hc_nodeinsertbeforenodeancestor.xml
new file mode 100644
index 0000000..7381374
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeinsertbeforenodeancestor.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeinsertbeforenodeancestor">
+<metadata>
+<title>hc_nodeInsertBeforeNodeAncestor</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if the node to be
+ inserted is one of this nodes ancestors.
+
+ Retrieve the second employee and attempt to insert a
+ node that is one of its ancestors(root node). An
+ attempt to insert such a node should raise the
+ desired exception.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement obj="doc" var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="0" var="refChild"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<insertBefore var="insertedNode" obj="employeeNode" newChild="newChild" refChild="refChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeinsertbeforenodename.xml b/test/testcases/tests/level1/core/hc_nodeinsertbeforenodename.xml
new file mode 100644
index 0000000..98a06a1
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeinsertbeforenodename.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeinsertbeforenodename">
+<metadata>
+<title>hc_nodeInsertBeforeNodeName</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "insertBefore(newChild,refchild)" method returns
+ the node being inserted.
+
+ Insert an Element node before the fourth
+ child of the second employee and check the node
+ returned from the "insertBefore(newChild,refChild)"
+ method. The node returned should be "newChild".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="3" var="refChild"/>
+<createElement obj="doc" tagName='"br"' var="newChild"/>
+<insertBefore obj="employeeNode" newChild="newChild" refChild="refChild" var="insertedNode"/>
+<nodeName obj="insertedNode" var="childName"/>
+<assertEquals actual="childName" expected='"br"' id="nodeName" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeinsertbeforerefchildnonexistent.xml b/test/testcases/tests/level1/core/hc_nodeinsertbeforerefchildnonexistent.xml
new file mode 100644
index 0000000..339d37b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeinsertbeforerefchildnonexistent.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeinsertbeforerefchildnonexistent">
+<metadata>
+<title>hc_nodeInsertBeforeRefChildNonexistent</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method raises a
+ NOT_FOUND_ERR DOMException if the reference child is
+ not a child of this node.
+
+ Retrieve the second employee and attempt to insert a
+ new node before a reference node that is not a child
+ of this node. An attempt to insert before a non child
+ node should raise the desired exception.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="refChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElement obj="doc" tagName='"br"' var="newChild"/>
+<createElement obj="doc" tagName='"b"' var="refChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<insertBefore var="insertedNode" obj="elementNode" newChild="newChild" refChild="refChild"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeinsertbeforerefchildnull.xml b/test/testcases/tests/level1/core/hc_nodeinsertbeforerefchildnull.xml
new file mode 100644
index 0000000..355ddf1
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeinsertbeforerefchildnull.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeinsertbeforerefchildnull">
+<metadata>
+<title>hc_nodeInsertBeforeRefChildNull</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the "refChild" is null then the
+ "insertBefore(newChild,refChild)" method inserts the
+ node "newChild" at the end of the list of children.
+
+ Retrieve the second employee and invoke the
+ "insertBefore(newChild,refChild)" method with
+ refChild=null. Since "refChild" is null the "newChild"
+ should be added to the end of the list. The last item
+ in the list is checked after insertion. The last Element
+ node of the list should be "newChild".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node" isNull="true"/>
+<var name="newChild" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<createElement obj="doc" tagName='"br"' var="newChild"/>
+<insertBefore var="insertedNode" obj="employeeNode" newChild="newChild" refChild="refChild"/>
+<lastChild interface="Node" obj="employeeNode" var="child"/>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected='"br"' id="nodeName" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodelistindexequalzero.xml b/test/testcases/tests/level1/core/hc_nodelistindexequalzero.xml
new file mode 100644
index 0000000..0b19fd5
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodelistindexequalzero.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodelistindexequalzero">
+<metadata>
+<title>hc_nodelistIndexEqualZero</title>
+<creator>Curt Arnold</creator>
+<description>
+ Create a list of all the children elements of the third
+ employee and access its first child by using an index
+ of 0. This should result in the whitspace before "em" being
+ selected (em when ignoring whitespace).
+ Further we evaluate its content(by using
+ the "getNodeName()" method) to ensure the proper
+ element was accessed.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--item-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="length" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"p"'/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<length var="length" obj="employeeList" interface="NodeList"/>
+<item interface="NodeList" obj="employeeList" var="child" index="0"/>
+<nodeName obj="child" var="childName"/>
+<if><equals expected='13' actual="length" ignoreCase="false"/>
+<assertEquals actual="childName" expected='"#text"' ignoreCase="false" id="childName_w_whitespace"/>
+<else>
+<assertEquals actual="childName" expected='"em"' ignoreCase="auto" id="childName_wo_whitespace"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodelistindexgetlength.xml b/test/testcases/tests/level1/core/hc_nodelistindexgetlength.xml
new file mode 100644
index 0000000..65e05bb
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodelistindexgetlength.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodelistindexgetlength">
+<metadata>
+<title>hc_nodelistIndexGetLength</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getLength()" method returns the number of nodes
+ in the list.
+
+ Create a list of all the children elements of the third
+ employee and invoke the "getLength()" method.
+ It should contain the value 13.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--length attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-203510337"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="length" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"p"'/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<length var="length" obj="employeeList" interface="NodeList"/>
+<if><equals actual="length" expected="6"/>
+<assertEquals actual="length" expected="6" ignoreCase="false" id="length_wo_space"/>
+<else>
+<assertEquals actual="length" expected="13" ignoreCase="false" id="length_w_space"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodelistindexgetlengthofemptylist.xml b/test/testcases/tests/level1/core/hc_nodelistindexgetlengthofemptylist.xml
new file mode 100644
index 0000000..d75bb7f
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodelistindexgetlengthofemptylist.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodelistindexgetlengthofemptylist">
+<metadata>
+<title>hc_nodelistIndexGetLengthOfEmptyList</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getLength()" method returns the number of nodes
+ in the list.(Test for EMPTY list)
+
+ Create a list of all the children of the Text node
+ inside the first child of the third employee and
+ invoke the "getLength()" method. It should contain
+ the value 0.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--length attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-203510337"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="emList" type="NodeList"/>
+<var name="emNode" type="Node"/>
+<var name="textNode" type="Node"/>
+<var name="textList" type="NodeList"/>
+<var name="length" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="emList" tagname='"em"'/>
+<item interface="NodeList" obj="emList" var="emNode" index="2"/>
+<firstChild var="textNode" obj="emNode"/>
+<childNodes var="textList" obj="textNode"/>
+<length var="length" obj="textList" interface="NodeList"/>
+<assertEquals actual="length" expected="0" id="length" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodelistindexnotzero.xml b/test/testcases/tests/level1/core/hc_nodelistindexnotzero.xml
new file mode 100644
index 0000000..8b91ec7
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodelistindexnotzero.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodelistindexnotzero">
+<metadata>
+<title>hc_nodelistIndexNotZero</title>
+<creator>Curt Arnold</creator>
+<description>
+ The items in the list are accessible via an integral
+ index starting from zero.
+ (Index not equal 0)
+
+ Create a list of all the children elements of the third
+ employee and access its fourth child by using an index
+ of 3 and calling getNodeName() which should return
+ "strong" (no whitespace) or "#text" (with whitespace).
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--item-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"p"'/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<item interface="NodeList" obj="employeeList" var="child" index="3"/>
+<nodeName obj="child" var="childName"/>
+<if><equals expected='"#text"' actual="childName"/>
+<assertEquals id="childName_space" actual="childName" expected='"#text"' ignoreCase="false"/>
+<else>
+<assertEquals id="childName_strong" actual="childName" expected='"strong"' ignoreCase="auto"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodelistreturnfirstitem.xml b/test/testcases/tests/level1/core/hc_nodelistreturnfirstitem.xml
new file mode 100644
index 0000000..f36a9c0
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodelistreturnfirstitem.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodelistreturnfirstitem">
+<metadata>
+<title>hc_nodelistReturnFirstItem</title>
+<creator>Curt Arnold</creator>
+<description>
+ Create a list of all the children elements of the third
+ employee and access its first child by invoking the
+ "item(index)" method with an index=0. This should
+ result in node with a nodeName of "#text" or "em".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"p"'/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<item interface="NodeList" obj="employeeList" var="child" index="0"/>
+<nodeName obj="child" var="childName"/>
+<if><equals actual="childName" expected='"#text"'/>
+<assertEquals actual="childName" expected='"#text"' ignoreCase="false" id="nodeName_w_space"/>
+<else>
+<assertEquals actual="childName" expected='"em"' ignoreCase="auto" id="nodeName_wo_space"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodelistreturnlastitem.xml b/test/testcases/tests/level1/core/hc_nodelistreturnlastitem.xml
new file mode 100644
index 0000000..f268f20
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodelistreturnlastitem.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodelistreturnlastitem">
+<metadata>
+<title>hc_nodelistReturnLastItem</title>
+<creator>Curt Arnold</creator>
+<description>
+ Create a list of all the children elements of the third
+ employee and access its last child by invoking the
+ "item(index)" method with an index=length-1. This should
+ result in node with nodeName="#text" or acronym.</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="index" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"p"'/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<length var="index" obj="employeeList" interface="NodeList"/>
+<decrement var="index" value="1"/>
+<item interface="NodeList" obj="employeeList" var="child" index="index"/>
+<nodeName obj="child" var="childName"/>
+<if><equals actual="index" expected="12"/>
+<assertEquals actual="childName" expected='"#text"' id="lastNodeName_w_whitespace" ignoreCase="false"/>
+<else>
+<assertEquals actual="childName" expected='"acronym"' id="lastNodeName" ignoreCase="auto"/>
+<assertEquals actual="index" expected="5" id="index" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodelisttraverselist.xml b/test/testcases/tests/level1/core/hc_nodelisttraverselist.xml
new file mode 100644
index 0000000..cc8408f
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodelisttraverselist.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodelisttraverselist">
+<metadata>
+<title>hc_nodelistTraverseList</title>
+<creator>Curt Arnold</creator>
+<description>
+ The range of valid child node indices is 0 thru length -1
+
+ Create a list of all the children elements of the third
+ employee and traverse the list from index=0 thru
+ length -1.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--length attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-203510337"/>
+<!--item-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="result" type="List"/>
+<var name="expected" type="List">
+<member>"em"</member>
+<member>"strong"</member>
+<member>"code"</member>
+<member>"sup"</member>
+<member>"var"</member>
+<member>"acronym"</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"p"'/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<for-each collection="employeeList" member="child">
+<nodeType var="nodeType" obj="child"/>
+<nodeName obj="child" var="childName"/>
+<if><equals actual="nodeType" expected="1"/>
+<append collection="result" item="childName"/>
+<else>
+<assertEquals actual="nodeType" expected="3" id="textNodeType" ignoreCase="false"/>
+<assertEquals actual="childName" expected='"#text"' id="textNodeName" ignoreCase="false"/>
+</else>
+</if>
+</for-each>
+<assertEquals actual="result" expected="expected" id="nodeNames" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeparentnode.xml b/test/testcases/tests/level1/core/hc_nodeparentnode.xml
new file mode 100644
index 0000000..84ef073
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeparentnode.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeparentnode">
+<metadata>
+<title>hc_nodeParentNode</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getParentNode()" method returns the parent
+ of this node.
+
+ Retrieve the second employee and invoke the
+ "getParentNode()" method on this node. It should
+ be set to "body".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1060184317"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="parentNode" type="Node"/>
+<var name="parentName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<parentNode interface="Node" obj="employeeNode" var="parentNode"/>
+<nodeName obj="parentNode" var="parentName"/>
+<assertEquals actual="parentName" expected='"body"' id="parentNodeName" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodeparentnodenull.xml b/test/testcases/tests/level1/core/hc_nodeparentnodenull.xml
new file mode 100644
index 0000000..64e4fb2
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodeparentnodenull.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodeparentnodenull">
+<metadata>
+<title>hc_nodeParentNodeNull</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getParentNode()" method invoked on a node that has
+ just been created and not yet added to the tree is null.
+
+ Create a new "employee" Element node using the
+ "createElement(name)" method from the Document interface.
+ Since this new node has not yet been added to the tree,
+ the "getParentNode()" method will return null.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1060184317"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="createdNode" type="Element"/>
+<var name="parentNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElement obj="doc" tagName='"br"' var="createdNode"/>
+<parentNode interface="Node" obj="createdNode" var="parentNode"/>
+<assertNull actual="parentNode" id="parentNode"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_noderemovechild.xml b/test/testcases/tests/level1/core/hc_noderemovechild.xml
new file mode 100644
index 0000000..246a237
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_noderemovechild.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_noderemovechild">
+<metadata>
+<title>hc_nodeRemoveChild</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeChild(oldChild)" method removes the child node
+ indicated by "oldChild" from the list of children and
+ returns it.
+
+ Remove the first employee by invoking the
+ "removeChild(oldChild)" method an checking the
+ node returned by the "getParentNode()" method. It
+ should be set to null.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="childToRemove" type="Node"/>
+<var name="removedChild" type="Node"/>
+<var name="parentNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement obj="doc" var="rootNode"/>
+<childNodes obj="rootNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="1" var="childToRemove"/>
+<removeChild obj="rootNode" var="removedChild" oldChild="childToRemove"/>
+<parentNode interface="Node" obj="removedChild" var="parentNode"/>
+<assertNull actual="parentNode" id="parentNodeNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_noderemovechildgetnodename.xml b/test/testcases/tests/level1/core/hc_noderemovechildgetnodename.xml
new file mode 100644
index 0000000..8d5aaba
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_noderemovechildgetnodename.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_noderemovechildgetnodename">
+<metadata>
+<title>hc_nodeRemoveChildGetNodeName</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeChild(oldChild)" method returns
+ the node being removed.
+
+ Remove the first child of the second employee
+ and check the NodeName returned by the
+ "removeChild(oldChild)" method. The returned node
+ should have a NodeName equal to "#text".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="removedChild" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="oldName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="0" var="oldChild"/>
+<nodeName obj="oldChild" var="oldName"/>
+<removeChild obj="employeeNode" oldChild="oldChild" var="removedChild"/>
+<assertNotNull actual="removedChild" id="notnull"/>
+<nodeName obj="removedChild" var="childName"/>
+<assertEquals actual="childName" expected='oldName' id="nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_noderemovechildnode.xml b/test/testcases/tests/level1/core/hc_noderemovechildnode.xml
new file mode 100644
index 0000000..823129c
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_noderemovechildnode.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_noderemovechildnode">
+<metadata>
+<title>hc_noderemovechildnode</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeChild(oldChild)" method removes the node
+ indicated by "oldChild".
+
+ Retrieve the second p element and remove its first child.
+ After the removal, the second p element should have 5 element
+ children and the first child should now be the child
+ that used to be at the second position in the list.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="emList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="length" type="int"/>
+<var name="removedChild" type="Node"/>
+<var name="removedName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="expected" type="List">
+<member>"strong"</member>
+<member>"code"</member>
+<member>"sup"</member>
+<member>"var"</member>
+<member>"acronym"</member>
+</var>
+<var name="actual" type="List"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<getElementsByTagName interface="Element" var="emList" obj="employeeNode" tagname='"em"'/>
+<item interface="NodeList" obj="emList" index="0" var="oldChild"/>
+<removeChild var="removedChild" obj="employeeNode" oldChild="oldChild"/>
+<nodeName obj="removedChild" var="removedName"/>
+<assertEquals actual="removedName" expected='"em"' ignoreCase="auto" id="removedName"/>
+<for-each collection="childList" member="child">
+<nodeType var="nodeType" obj="child"/>
+<nodeName var="childName" obj="child"/>
+<if><equals expected="1" actual="nodeType"/>
+<append collection="actual" item="childName"/>
+<else>
+<assertEquals expected="3" actual="nodeType" id="textNodeType" ignoreCase="false"/>
+<assertEquals expected='"#text"' actual="childName" id="textNodeName" ignoreCase="false"/>
+</else>
+</if>
+</for-each>
+<assertEquals actual="actual" expected='expected' ignoreCase="auto" id="childNames"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_noderemovechildoldchildnonexistent.xml b/test/testcases/tests/level1/core/hc_noderemovechildoldchildnonexistent.xml
new file mode 100644
index 0000000..553f1fe
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_noderemovechildoldchildnonexistent.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_noderemovechildoldchildnonexistent">
+<metadata>
+<title>hc_nodeRemoveChildOldChildNonexistent</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeChild(oldChild)" method raises a
+ NOT_FOUND_ERR DOMException if the old child is
+ not a child of this node.
+
+ Retrieve the second employee and attempt to remove a
+ node that is not one of its children. An attempt to
+ remove such a node should raise the desired exception.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1734834066')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="oldChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="removedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElement obj="doc" tagName='"br"' var="oldChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeChild var="removedChild" obj="elementNode" oldChild="oldChild"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodereplacechild.xml b/test/testcases/tests/level1/core/hc_nodereplacechild.xml
new file mode 100644
index 0000000..9e08082
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodereplacechild.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodereplacechild">
+<metadata>
+<title>hc_nodeReplaceChild</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method replaces
+ the node "oldChild" with the node "newChild".
+
+ Replace the first element of the second employee with
+ a newly created Element node. Check the first position
+ after the replacement operation is completed. The new
+ Element should be "newChild".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="replacedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="0" var="oldChild"/>
+<createElement obj="doc" tagName='"br"' var="newChild"/>
+<replaceChild var="replacedNode" obj="employeeNode" newChild="newChild" oldChild="oldChild"/>
+<item interface="NodeList" obj="childList" index="0" var="child"/>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected='"br"' id="nodeName" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodereplacechildinvalidnodetype.xml b/test/testcases/tests/level1/core/hc_nodereplacechildinvalidnodetype.xml
new file mode 100644
index 0000000..f1bbfac
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodereplacechildinvalidnodetype.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodereplacechildinvalidnodetype">
+<metadata>
+<title>hc_nodeReplaceChildInvalidNodeType</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if this node is of
+ a type that does not allow children of the type "newChild"
+ to be inserted.
+
+ Retrieve the root node and attempt to replace
+ one of its children with a newly created Attr node.
+ An Element node cannot have children of the "Attr"
+ type, therefore the desired exception should be raised.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=406"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Element"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="replacedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttribute obj="doc" name='"lang"' var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="oldChild"/>
+<parentNode var="rootNode" obj="oldChild" interface="Node"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<replaceChild var="replacedChild" obj="rootNode" newChild="newChild" oldChild="oldChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodereplacechildnewchilddiffdocument.xml b/test/testcases/tests/level1/core/hc_nodereplacechildnewchilddiffdocument.xml
new file mode 100644
index 0000000..4c57934
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodereplacechildnewchilddiffdocument.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodereplacechildnewchilddiffdocument">
+<metadata>
+<title>hc_nodeReplaceChildNewChildDiffDocument</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if the "newChild" was
+ created from a different document than the one that
+ created this node.
+
+ Retrieve the second employee and attempt to replace one
+ of its children with a node created from a different
+ document. An attempt to make such a replacement
+ should raise the desired exception.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="oldChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="replacedChild" type="Node"/>
+<load var="doc1" href="hc_staff" willBeModified="false"/>
+<load var="doc2" href="hc_staff" willBeModified="true"/>
+<createElement obj="doc1" tagName='"br"' var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc2" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<firstChild obj="elementNode" var="oldChild" interface="Node"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<replaceChild var="replacedChild" obj="elementNode" newChild="newChild" oldChild="oldChild"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodereplacechildnewchildexists.xml b/test/testcases/tests/level1/core/hc_nodereplacechildnewchildexists.xml
new file mode 100644
index 0000000..66c9b06
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodereplacechildnewchildexists.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodereplacechildnewchildexists">
+<metadata>
+<title>hc_nodeReplaceChildNewChildExists</title>
+<creator>Curt Arnold</creator>
+<description>
+ If the "newChild" is already in the tree, it is first
+ removed before the new one is added.
+
+ Retrieve the second "p" and replace "acronym" with its "em".
+</description>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=246"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node" isNull="true"/>
+<var name="newChild" type="Node" isNull="true"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="childNode" type="Node"/>
+<var name="actual" type="List"/>
+<var name="expected" type="List">
+<member>"strong"</member>
+<member>"code"</member>
+<member>"sup"</member>
+<member>"var"</member>
+<member>"em"</member>
+</var>
+<var name="replacedChild" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<getElementsByTagName interface="Element" obj="employeeNode" var="childList" tagname='"*"'/>
+<item interface="NodeList" obj="childList" index="0" var="newChild"/>
+<item interface="NodeList" obj="childList" index="5" var="oldChild"/>
+<replaceChild var="replacedChild" obj="employeeNode" newChild="newChild" oldChild="oldChild"/>
+<assertSame actual="replacedChild" expected="oldChild" id="return_value_same"/>
+<for-each collection="childList" member="childNode">
+<nodeName var="childName" obj="childNode"/>
+<nodeType var="nodeType" obj="childNode"/>
+<if><equals actual="nodeType" expected="1"/>
+<append collection="actual" item="childName"/>
+<else>
+<assertEquals actual="nodeType" expected="3" id="textNodeType" ignoreCase="false"/>
+<assertEquals actual="childName" expected='"#text"' id="textNodeName" ignoreCase="false"/>
+</else>
+</if>
+</for-each>
+<assertEquals actual="actual" expected="expected" id="childNames" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodereplacechildnodeancestor.xml b/test/testcases/tests/level1/core/hc_nodereplacechildnodeancestor.xml
new file mode 100644
index 0000000..3c5ec89
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodereplacechildnodeancestor.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodereplacechildnodeancestor">
+<metadata>
+<title>hc_nodeReplaceChildNodeAncestor</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if the node to put
+ in is one of this node's ancestors.
+
+ Retrieve the second employee and attempt to replace
+ one of its children with an ancestor node(root node).
+ An attempt to make such a replacement should raise the
+ desired exception.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="replacedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement obj="doc" var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="0" var="oldChild"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<replaceChild var="replacedNode" obj="employeeNode" newChild="newChild" oldChild="oldChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodereplacechildnodename.xml b/test/testcases/tests/level1/core/hc_nodereplacechildnodename.xml
new file mode 100644
index 0000000..d8d73ad
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodereplacechildnodename.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodereplacechildnodename">
+<metadata>
+<title>hc_nodeReplaceChildNodeName</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method returns
+ the node being replaced.
+
+ Replace the second Element of the second employee with
+ a newly created node Element and check the NodeName
+ returned by the "replaceChild(newChild,oldChild)"
+ method. The returned node should have a NodeName equal
+ to "em".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="replacedNode" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<getElementsByTagName obj="employeeNode" var="childList" interface="Element" tagname='"em"'/>
+<item interface="NodeList" obj="childList" index="0" var="oldChild"/>
+<createElement obj="doc" tagName='"br"' var="newChild"/>
+<replaceChild obj="employeeNode" newChild="newChild" oldChild="oldChild" var="replacedNode"/>
+<nodeName obj="replacedNode" var="childName"/>
+<assertEquals actual="childName" expected='"em"' id="replacedNodeName" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodereplacechildoldchildnonexistent.xml b/test/testcases/tests/level1/core/hc_nodereplacechildoldchildnonexistent.xml
new file mode 100644
index 0000000..907da84
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodereplacechildoldchildnonexistent.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodereplacechildoldchildnonexistent">
+<metadata>
+<title>hc_nodeReplaceChildOldChildNonexistent</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method raises a
+ NOT_FOUND_ERR DOMException if the old child is
+ not a child of this node.
+
+ Retrieve the second employee and attempt to replace a
+ node that is not one of its children. An attempt to
+ replace such a node should raise the desired exception.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=247"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="oldChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="replacedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElement obj="doc" tagName='"br"' var="newChild"/>
+<createElement obj="doc" tagName='"b"' var="oldChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"p"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<replaceChild var="replacedNode" obj="elementNode" newChild="newChild" oldChild="oldChild"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodetextnodeattribute.xml b/test/testcases/tests/level1/core/hc_nodetextnodeattribute.xml
new file mode 100644
index 0000000..f7a14ac
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodetextnodeattribute.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodetextnodeattribute">
+<metadata>
+<title>hc_nodeTextNodeAttribute</title>
+<creator>Curt Arnold</creator>
+<description>
+The "getAttributes()" method invoked on a Text
+Node returns null.
+
+Retrieve the Text node from the last child of the
+first employee and invoke the "getAttributes()" method
+on the Text Node. It should return null.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- Text interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1312295772"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<var name="textNode" type="Node"/>
+<var name="attrList" type="NamedNodeMap"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<firstChild interface="Node" obj="testAddr" var="textNode"/>
+<attributes obj="textNode" var="attrList"/>
+<assertNull actual="attrList" id="text_attributes_is_null"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodetextnodename.xml b/test/testcases/tests/level1/core/hc_nodetextnodename.xml
new file mode 100644
index 0000000..54f4a8b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodetextnodename.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodetextnodename">
+<metadata>
+<title>hc_nodeTextNodeName</title>
+<creator>Curt Arnold</creator>
+<description>
+ The string returned by the "getNodeName()" method for a
+ Text Node is "#text".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="textNode" type="Node"/>
+<var name="textName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<firstChild interface="Node" obj="testAddr" var="textNode"/>
+<nodeName obj="textNode" var="textName"/>
+<assertEquals actual="textName" expected='"#text"' id="textNodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodetextnodetype.xml b/test/testcases/tests/level1/core/hc_nodetextnodetype.xml
new file mode 100644
index 0000000..dfadb11
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodetextnodetype.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodetextnodetype">
+<metadata>
+<title>hc_nodeTextNodeType</title>
+<creator>Curt Arnold</creator>
+<description>
+
+ The "getNodeType()" method for a Text Node
+
+ returns the constant value 3.
+
+
+
+ Retrieve the Text node from the last child of
+
+ the first employee and invoke the "getNodeType()"
+
+ method. The method should return 3.
+
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="textNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<firstChild interface="Node" obj="testAddr" var="textNode"/>
+<nodeType obj="textNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="3" id="nodeTextNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodetextnodevalue.xml b/test/testcases/tests/level1/core/hc_nodetextnodevalue.xml
new file mode 100644
index 0000000..83286f8
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodetextnodevalue.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodetextnodevalue">
+<metadata>
+<title>hc_nodeTextNodeValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ Text Node is the content of the Text node.
+
+ Retrieve the Text node from the last child of the first
+ employee and check the string returned by the
+ "getNodeValue()" method. It should be equal to
+ "1230 North Ave. Dallas, Texas 98551".
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="textNode" type="Node"/>
+<var name="textValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<firstChild interface="Node" obj="testAddr" var="textNode"/>
+<nodeValue obj="textNode" var="textValue"/>
+<assertEquals actual="textValue" expected='"1230 North Ave. Dallas, Texas 98551"'
+ id="textNodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodevalue01.xml b/test/testcases/tests/level1/core/hc_nodevalue01.xml
new file mode 100644
index 0000000..62a4e3d
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodevalue01.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodevalue01">
+<metadata>
+<title>hc_nodevalue01</title>
+<creator>Curt Arnold</creator>
+<description>
+An element is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Element"/>
+<var name="newValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElement obj="doc" var="newNode" tagName='"acronym"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodevalue02.xml b/test/testcases/tests/level1/core/hc_nodevalue02.xml
new file mode 100644
index 0000000..2c31f8a
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodevalue02.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodevalue02">
+<metadata>
+<title>hc_nodevalue02</title>
+<creator>Curt Arnold</creator>
+<description>
+An comment is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createComment obj="doc" var="newNode" data='"This is a new Comment node"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertEquals actual="newValue" expected='"This is a new Comment node"' ignoreCase="false" id="initial"/>
+<!-- attempt to change the value -->
+<nodeValue obj="newNode" value='"This should have an effect"'/>
+<!-- retrieve the value -->
+<nodeValue obj="newNode" var="newValue"/>
+<assertEquals actual="newValue" expected='"This should have an effect"' id="afterChange" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodevalue03.xml b/test/testcases/tests/level1/core/hc_nodevalue03.xml
new file mode 100644
index 0000000..6e7ac63
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodevalue03.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodevalue03">
+<metadata>
+<title>hc_nodevalue03</title>
+<creator>Curt Arnold</creator>
+<description>
+An entity reference is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-11C98490"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<if><contentType type="text/html"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <createEntityReference obj="doc" var="newNode" name='"ent1"'/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+<else>
+<createEntityReference obj="doc" var="newNode" name='"ent1"'/>
+<assertNotNull actual="newNode" id="createdEntRefNotNull"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodevalue04.xml b/test/testcases/tests/level1/core/hc_nodevalue04.xml
new file mode 100644
index 0000000..f85ff65
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodevalue04.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodevalue04">
+<metadata>
+<title>hc_nodevalue04</title>
+<creator>Curt Arnold</creator>
+<description>
+An document type accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A31"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype obj="doc" var="newNode"/>
+<assertTrue id="docTypeNotNullOrDocIsHTML">
+ <or>
+ <notNull obj="newNode"/>
+ <contentType type="text/html"/>
+ </or>
+</assertTrue>
+<if><notNull obj="newNode"/>
+<assertNotNull actual="newNode" id="docTypeNotNull"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodevalue05.xml b/test/testcases/tests/level1/core/hc_nodevalue05.xml
new file mode 100644
index 0000000..9476bf4
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodevalue05.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodevalue05">
+<metadata>
+<title>hc_nodevalue05</title>
+<creator>Curt Arnold</creator>
+<description>
+A document fragment is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="newNode"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodevalue06.xml b/test/testcases/tests/level1/core/hc_nodevalue06.xml
new file mode 100644
index 0000000..2f8b0a4
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodevalue06.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodevalue06">
+<metadata>
+<title>hc_nodevalue06</title>
+<creator>Curt Arnold</creator>
+<description>
+An document is accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+</metadata>
+<var name="newNode" type="Document"/>
+<var name="newValue" type="DOMString"/>
+<load var="newNode" href="hc_staff" willBeModified="true"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodevalue07.xml b/test/testcases/tests/level1/core/hc_nodevalue07.xml
new file mode 100644
index 0000000..0c99f89
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodevalue07.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodevalue07">
+<metadata>
+<title>hc_nodevalue07</title>
+<creator>Curt Arnold</creator>
+<description>
+An Entity is accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-527DCFF2"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<var name="nodeMap" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype obj="doc" var="docType"/>
+<if><not><contentType type="text/html"/></not>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="nodeMap"/>
+<assertNotNull actual="nodeMap" id="entitiesNotNull"/>
+<getNamedItem obj="nodeMap" name='"alpha"' var="newNode"/>
+<assertNotNull actual="newNode" id="entityNotNull"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_nodevalue08.xml b/test/testcases/tests/level1/core/hc_nodevalue08.xml
new file mode 100644
index 0000000..e753f87
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_nodevalue08.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_nodevalue08">
+<metadata>
+<title>hc_nodevalue08</title>
+<creator>Curt Arnold</creator>
+<description>
+An notation is accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5431D1B9"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<var name="nodeMap" type="NamedNodeMap"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype obj="doc" var="docType"/>
+<if><not><contentType type="text/html"/></not>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="nodeMap"/>
+<assertNotNull actual="nodeMap" id="notationsNotNull"/>
+<getNamedItem obj="nodeMap" name='"notation1"' var="newNode"/>
+<assertNotNull actual="newNode" id="notationNotNull"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_notationsremovenameditem1.xml b/test/testcases/tests/level1/core/hc_notationsremovenameditem1.xml
new file mode 100644
index 0000000..b565e18
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_notationsremovenameditem1.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_notationsremovenameditem1">
+<metadata>
+<title>hc_notationsremovenameditem1</title>
+<creator>Curt Arnold</creator>
+<description>
+An attempt to add remove an notation should result in a NO_MODIFICATION_ERR.
+</description>
+<date qualifier="created">2004-01-11</date>
+<!-- DocumentType.notations -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D46829EF"/>
+<!-- NamedNodeMap.removeNamedItem -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<if><not><contentType type="text/html"/></not>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations var="notations" obj="docType"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeNamedItem var="retval" obj="notations" name='"notation1"'/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_notationssetnameditem1.xml b/test/testcases/tests/level1/core/hc_notationssetnameditem1.xml
new file mode 100644
index 0000000..575b80b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_notationssetnameditem1.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_notationssetnameditem1">
+<metadata>
+<title>hc_notationssetnameditem1</title>
+<creator>Curt Arnold</creator>
+<description>
+An attempt to add an element to the named node map returned by notations should
+result in a NO_MODIFICATION_ERR or HIERARCHY_REQUEST_ERR.
+</description>
+<date qualifier="created">2004-01-11</date>
+<!-- DocumentType.notations -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D46829EF"/>
+<!-- NamedNodeMap.setNamedItem -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<var name="retval" type="Node"/>
+<var name="elem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<if><not><contentType type="text/html"/></not>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations var="notations" obj="docType"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<createElement var="elem" obj="doc" tagName='"br"'/>
+<try>
+ <setNamedItem var="retval" obj="notations" arg="elem"/>
+ <fail id="throw_HIER_OR_NO_MOD_ERR"/>
+ <catch>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ </catch>
+</try>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_textindexsizeerrnegativeoffset.xml b/test/testcases/tests/level1/core/hc_textindexsizeerrnegativeoffset.xml
new file mode 100644
index 0000000..7e51807
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_textindexsizeerrnegativeoffset.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_textindexsizeerrnegativeoffset">
+<metadata>
+<title>hc_textIndexSizeErrNegativeOffset</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "splitText(offset)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset is
+ negative.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The desired exception should be raised since the offset
+ is a negative number.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-38853C1D')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"strong"'/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="textNode"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<splitText obj="textNode" var="splitNode" offset="-69"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_textindexsizeerroffsetoutofbounds.xml b/test/testcases/tests/level1/core/hc_textindexsizeerroffsetoutofbounds.xml
new file mode 100644
index 0000000..fc3f23b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_textindexsizeerroffsetoutofbounds.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_textindexsizeerroffsetoutofbounds">
+<metadata>
+<title>hc_textIndexSizeErrOffsetOutOfBounds</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "splitText(offset)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset is
+ greater than the number of characters in the Text node.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The desired exception should be raised since the offset
+ is a greater than the number of characters in the Text
+ node.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-38853C1D')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"strong"'/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="textNode"/>
+<assertDOMException id="throw_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<splitText obj="textNode" var="splitNode" offset="300"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_textparseintolistofelements.xml b/test/testcases/tests/level1/core/hc_textparseintolistofelements.xml
new file mode 100644
index 0000000..280b79c
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_textparseintolistofelements.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_textparseintolistofelements">
+<metadata>
+<title>hc_textParseIntoListOfElements</title>
+<creator>Curt Arnold</creator>
+<description>
+ Retrieve the textual data from the last child of the
+ second employee. That node is composed of two
+ EntityReference nodes and two Text nodes. After
+ the content node is parsed, the "acronym" Element
+ should contain four children with each one of the
+ EntityReferences containing one child.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<!--childNodes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-11C98490"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-745549614"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="addressNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="grandChild" type="Node"/>
+<var name="length" type="int"/>
+<var name="result" type="List"/>
+<var name="expectedNormal" type="List">
+<member>"&#946;"</member>
+<member>" Dallas, "</member>
+<member>"&#947;"</member>
+<member>"\n 98554"</member>
+</var>
+<var name="expectedExpanded" type="List">
+<member>"&#946; Dallas, &#947;\n 98554"</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="addressNode" index="1"/>
+<childNodes obj="addressNode" var="childList"/>
+<length var="length" obj="childList" interface="NodeList"/>
+<for-each collection="childList" member="child">
+ <nodeValue obj="child" var="value"/>
+ <if>
+ <isNull obj="value"/>
+ <firstChild interface="Node" obj="child" var="grandChild"/>
+ <assertNotNull actual="grandChild" id="grandChildNotNull"/>
+ <nodeValue obj="grandChild" var="value"/>
+ <append collection="result" item="value"/>
+ <else>
+ <append collection="result" item="value"/>
+ </else>
+ </if>
+</for-each>
+<if><equals actual="length" expected="1" ignoreCase="false"/>
+ <assertEquals actual="result" expected="expectedExpanded" ignoreCase="false" id="assertEqCoalescing"/>
+ <else>
+ <assertEquals actual="result" expected="expectedNormal" ignoreCase="false" id="assertEqNormal"/>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_textsplittextfour.xml b/test/testcases/tests/level1/core/hc_textsplittextfour.xml
new file mode 100644
index 0000000..0adfa92
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_textsplittextfour.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_textsplittextfour">
+<metadata>
+<title>hc_textSplitTextFour</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "splitText(offset)" method returns the new Text node.
+
+ Retrieve the textual data from the last child of the
+ first employee and invoke the "splitText(offset)" method.
+ The method should return the new Text node. The offset
+ value used for this test is 30. The "getNodeValue()"
+ method is called to check that the new node now contains
+ the characters at and after position 30.
+ (Starting count at 0)
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="addressNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"acronym"'/>
+<item interface="NodeList" obj="elementList" var="addressNode" index="0"/>
+<firstChild interface="Node" obj="addressNode" var="textNode"/>
+<splitText obj="textNode" var="splitNode" offset="30"/>
+<nodeValue obj="splitNode" var="value"/>
+<assertEquals actual="value" expected='"98551"' id="textSplitTextFourAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_textsplittextone.xml b/test/testcases/tests/level1/core/hc_textsplittextone.xml
new file mode 100644
index 0000000..9fc5307
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_textsplittextone.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_textsplittextone">
+<metadata>
+<title>hc_textSplitTextOne</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "splitText(offset)" method breaks the Text node into
+ two Text nodes at the specified offset keeping each node
+ as siblings in the tree.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The method splits the Text node into two new sibling
+ Text nodes keeping both of them in the tree. This test
+ checks the "nextSibling()" method of the original node
+ to ensure that the two nodes are indeed siblings.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<var name="secondPart" type="Node"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"strong"'/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="textNode"/>
+<splitText obj="textNode" var="splitNode" offset="7"/>
+<nextSibling interface="Node" obj="textNode" var="secondPart"/>
+<nodeValue obj="secondPart" var="value"/>
+<assertEquals actual="value" expected='"Jones"' id="textSplitTextOneAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_textsplittextthree.xml b/test/testcases/tests/level1/core/hc_textsplittextthree.xml
new file mode 100644
index 0000000..bb4f55b
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_textsplittextthree.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_textsplittextthree">
+<metadata>
+<title>hc_textSplitTextThree</title>
+<creator>Curt Arnold</creator>
+<description>
+ After the "splitText(offset)" method breaks the Text node
+ into two Text nodes, the new Text node contains all the
+ content at and after the offset point.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The new Text node should contain all the content
+ at and after the offset point. The "getNodeValue()"
+ method is called to check that the new node now contains
+ the characters at and after position seven.
+ (Starting count at 0)
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"strong"'/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="textNode"/>
+<splitText obj="textNode" var="splitNode" offset="6"/>
+<nodeValue obj="splitNode" var="value"/>
+<assertEquals actual="value" expected='" Jones"' id="textSplitTextThreeAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_textsplittexttwo.xml b/test/testcases/tests/level1/core/hc_textsplittexttwo.xml
new file mode 100644
index 0000000..86f8f17
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_textsplittexttwo.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_textsplittexttwo">
+<metadata>
+<title>hc_textSplitTextTwo</title>
+<creator>Curt Arnold</creator>
+<description>
+ After the "splitText(offset)" method breaks the Text node
+ into two Text nodes, the original node contains all the
+ content up to the offset point.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The original Text node should contain all the content
+ up to the offset point. The "getNodeValue()" method
+ is called to check that the original node now contains
+ the first five characters.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"strong"'/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="textNode"/>
+<splitText obj="textNode" var="splitNode" offset="5"/>
+<nodeValue obj="textNode" var="value"/>
+<assertEquals actual="value" expected='"Roger"' id="textSplitTextTwoAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/hc_textwithnomarkup.xml b/test/testcases/tests/level1/core/hc_textwithnomarkup.xml
new file mode 100644
index 0000000..3b263c5
--- /dev/null
+++ b/test/testcases/tests/level1/core/hc_textwithnomarkup.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hc_textwithnomarkup">
+<metadata>
+<title>hc_textWithNoMarkup</title>
+<creator>Curt Arnold</creator>
+<description>
+ If there is not any markup inside an Element or Attr node
+ content, then the text is contained in a single object
+ implementing the Text interface that is the only child
+ of the element.
+
+ Retrieve the textual data from the second child of the
+ third employee. That Text node contains a block of
+ multiple text lines without markup, so they should be
+ treated as a single Text node. The "getNodeValue()"
+ method should contain the combination of the two lines.
+</description>
+
+<date qualifier="created">2002-06-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1312295772"/>
+<!--nodeValue attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="nodeV" type="Node"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"strong"'/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="nodeV"/>
+<nodeValue obj="nodeV" var="value"/>
+<assertEquals actual="value" expected='"Roger\n Jones"' id="textWithNoMarkupAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/metadata.xml b/test/testcases/tests/level1/core/metadata.xml
new file mode 100644
index 0000000..6826b5c
--- /dev/null
+++ b/test/testcases/tests/level1/core/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 metadata SYSTEM "dom1.dtd">
+
+<metadata xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1">
+</metadata>
diff --git a/test/testcases/tests/level1/core/namednodemapchildnoderange.xml b/test/testcases/tests/level1/core/namednodemapchildnoderange.xml
new file mode 100644
index 0000000..12dbd09
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapchildnoderange.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapchildnoderange">
+<metadata>
+<title>namednodemapChildNodeRange</title>
+<creator>NIST</creator>
+<description>
+ The range of valid child node indices is 0 to Length -1.
+
+ Create a NamedNodeMap object from the attributes of the
+ last child of the third employee and traverse the
+ list from index 0 thru length -1. All indices should
+ be valid.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!--item-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+<!--length attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D0FB19E"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="child" type="Node"/>
+<var name="length" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="2"/>
+<attributes obj="testEmployee" var="attributes"/>
+<length var="length" obj="attributes" interface="NamedNodeMap"/>
+<assertEquals actual="length" expected="2" id="length" ignoreCase="false"/>
+<item var="child" index="0" obj="attributes" interface="NamedNodeMap"/>
+<item var="child" index="1" obj="attributes" interface="NamedNodeMap"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapgetnameditem.xml b/test/testcases/tests/level1/core/namednodemapgetnameditem.xml
new file mode 100644
index 0000000..ab7a012
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapgetnameditem.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapgetnameditem">
+<metadata>
+<title>namednodemapGetNamedItem</title>
+<creator>NIST</creator>
+<description>
+ The "getNamedItem(name)" method retrieves a node
+ specified by name.
+
+ Retrieve the second employee and create a NamedNodeMap
+ listing of the attributes of the last child. Once the
+ list is created an invocation of the "getNamedItem(name)"
+ method is done with name="domestic". This should result
+ in the domestic Attr node being returned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="1"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name="&quot;domestic&quot;"/>
+<nodeName obj="domesticAttr" var="attrName"/>
+<assertEquals actual="attrName" expected="&quot;domestic&quot;" id="namednodemapGetNamedItemAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapinuseattributeerr.xml b/test/testcases/tests/level1/core/namednodemapinuseattributeerr.xml
new file mode 100644
index 0000000..9a530a6
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapinuseattributeerr.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapinuseattributeerr">
+<metadata>
+<title>namedNodeMapInUseAttributeErr</title>
+<creator>NIST</creator>
+<description>
+The "setNamedItem(arg)" method raises a
+INUSE_ATTRIBUTE_ERR DOMException if "arg" is an
+Attr that is already in an attribute of another Element.
+
+Create a NamedNodeMap object from the attributes of the
+last child of the third employee and attempt to add
+an attribute that is already being used by the first
+employee. This should raise the desired exception.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1025163788')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="firstNode" type="Element"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="setAttr" type="Attr"/>
+<var name="setNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="firstNode" index="0"/>
+<createAttribute obj="doc" var="domesticAttr" name="&quot;domestic&quot;"/>
+<value interface="Attr" obj="domesticAttr" value="&quot;Yes&quot;"/>
+<setAttributeNode var="setAttr" obj="firstNode" newAttr="domesticAttr"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testNode" index="2"/>
+<attributes obj="testNode" var="attributes"/>
+<assertDOMException id="throw_INUSE_ATTRIBUTE_ERR">
+<INUSE_ATTRIBUTE_ERR>
+<setNamedItem var="setNode" interface="NamedNodeMap" obj="attributes" arg="domesticAttr"/>
+</INUSE_ATTRIBUTE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapnotfounderr.xml b/test/testcases/tests/level1/core/namednodemapnotfounderr.xml
new file mode 100644
index 0000000..f608066
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapnotfounderr.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapnotfounderr">
+<metadata>
+<title>namednodemapNotFoundErr</title>
+<creator>NIST</creator>
+<description>
+ The "removeNamedItem(name)" method raises a
+ NOT_FOUND_ERR DOMException if there is not a node
+ named "name" in the map.
+
+ Create a NamedNodeMap object from the attributes of the
+ last child of the third employee and attempt to remove
+ the "district" attribute. There is not a node named
+ "district" in the list and therefore the desired
+ exception should be raised.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-D58B193')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Element"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="2"/>
+<attributes obj="testEmployee" var="attributes"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeNamedItem var="removedNode" interface="NamedNodeMap" obj="attributes" name="&quot;district&quot;"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapnumberofnodes.xml b/test/testcases/tests/level1/core/namednodemapnumberofnodes.xml
new file mode 100644
index 0000000..03c61f5
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapnumberofnodes.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapnumberofnodes">
+<metadata>
+<title>namednodemapNumberOfNodes</title>
+<creator>NIST</creator>
+<description>
+ The "getLength()" method returns the number of nodes
+ in the map.
+
+ Retrieve the second employee and create a NamedNodeMap
+ listing of the attributes of the last child. Once the
+ list is created an invocation of the "getLength()"
+ method is executed. The number of nodes should be 2.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!--length attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D0FB19E"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="length" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="2"/>
+<attributes obj="testEmployee" var="attributes"/>
+<length var="length" obj="attributes" interface="NamedNodeMap"/>
+<assertEquals actual="length" expected="2" id="length" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapremovenameditem.xml b/test/testcases/tests/level1/core/namednodemapremovenameditem.xml
new file mode 100644
index 0000000..da7c3c2
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapremovenameditem.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapremovenameditem">
+<metadata>
+<title>namednodemapRemoveNamedItem</title>
+<creator>NIST</creator>
+<description>
+ The "removeNamedItem(name)" method removes a node
+ specified by name.
+
+ Retrieve the third employee and create a NamedNodeMap
+ object of the attributes of the last child. Once the
+ list is created invoke the "removeNamedItem(name)"
+ method with name="street". This should result
+ in the removal of the specified attribute and
+ the "getSpecified()" method should return false.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="specified" type="boolean"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="2"/>
+<attributes obj="testAddress" var="attributes"/>
+<assertNotNull actual="attributes" id="attributesNotNull"/>
+<removeNamedItem var="removedNode" interface="NamedNodeMap" obj="attributes" name="&quot;street&quot;"/>
+<getNamedItem obj="attributes" var="streetAttr" name="&quot;street&quot;"/>
+<assertNotNull actual="streetAttr" id="streetAttrNotNull"/>
+<specified obj="streetAttr" var="specified"/>
+<assertFalse actual="specified" id="attrNotSpecified"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapremovenameditemgetvalue.xml b/test/testcases/tests/level1/core/namednodemapremovenameditemgetvalue.xml
new file mode 100644
index 0000000..f1d221f
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapremovenameditemgetvalue.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapremovenameditemgetvalue">
+<metadata>
+<title>namednodemapRemoveNamedItemGetValue</title>
+<creator>NIST</creator>
+<description>
+ If the node removed by the "removeNamedItem(name)" method
+ is an Attr node with a default value it is immediately
+ replaced.
+
+ Retrieve the third employee and create a NamedNodeMap
+ object of the attributes of the last child. Once the
+ list is created invoke the "removeNamedItem(name)"
+ method with name="street". The "removeNamedItem(name)"
+ method should remove the "street" attribute and since
+ it has a default value of "Yes", that value should
+ immediately be the attributes value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+<!-- DOM WG opinion on default attributes -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Attr"/>
+<var name="value" type="DOMString"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="2"/>
+<attributes obj="testEmployee" var="attributes"/>
+<assertNotNull actual="attributes" id="attributesNotNull"/>
+<removeNamedItem var="removedNode" obj="attributes" name="&quot;street&quot;"/>
+<getNamedItem obj="attributes" var="streetAttr" name="&quot;street&quot;"/>
+<assertNotNull actual="streetAttr" id="streetAttrNotNull"/>
+<value interface="Attr" obj="streetAttr" var="value"/>
+<assertEquals actual="value" expected="&quot;Yes&quot;" id="namednodemapRemoveNamedItemGetValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapremovenameditemreturnnodevalue.xml b/test/testcases/tests/level1/core/namednodemapremovenameditemreturnnodevalue.xml
new file mode 100644
index 0000000..043edfe
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapremovenameditemreturnnodevalue.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapremovenameditemreturnnodevalue">
+<metadata>
+<title>namednodemapRemoveNamedItemReturnNodeValue</title>
+<creator>NIST</creator>
+<description>
+ The "removeNamedItem(name)" method returns the node
+ removed from the map.
+
+ Retrieve the third employee and create a NamedNodeMap
+ object of the attributes of the last child. Once the
+ list is created invoke the "removeNamedItem(name)"
+ method with name="street". The "removeNamedItem(name)"
+ method should remove the existing "street" attribute
+ and return it.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="removedNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="2"/>
+<attributes obj="testAddress" var="attributes"/>
+<removeNamedItem interface="NamedNodeMap" obj="attributes" var="removedNode" name="&quot;street&quot;"/>
+<nodeValue obj="removedNode" var="value"/>
+<assertEquals actual="value" expected="&quot;No&quot;" id="namednodemapRemoveNamedItemReturnNodeValueAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapreturnattrnode.xml b/test/testcases/tests/level1/core/namednodemapreturnattrnode.xml
new file mode 100644
index 0000000..ed53288
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapreturnattrnode.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapreturnattrnode">
+<metadata>
+<title>namednodemapReturnAttrNode</title>
+<creator>NIST</creator>
+<description>
+ The "getNamedItem(name)" method returns a node of any
+ type specified by name.
+
+ Retrieve the second employee and create a NamedNodeMap
+ listing of the attributes of the last child. Once the
+ list is created an invocation of the "getNamedItem(name)"
+ method is done with name="street". This should result
+ in the method returning an Attr node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--getNamedItem-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549"/>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+<!--name attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1112119403"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="streetAttr" type="Node"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="1"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItem obj="attributes" var="streetAttr" name="&quot;street&quot;"/>
+<assertInstanceOf obj="streetAttr" type="Attr" id="typeAssert"/>
+<nodeName obj="streetAttr" var="attrName"/>
+<assertEquals actual="attrName" expected="&quot;street&quot;" id="nodeName" ignoreCase="false"/>
+<name obj="streetAttr" var="attrName" interface="Attr"/>
+<assertEquals actual="attrName" expected="&quot;street&quot;" id="attrName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapreturnfirstitem.xml b/test/testcases/tests/level1/core/namednodemapreturnfirstitem.xml
new file mode 100644
index 0000000..1eb5004
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapreturnfirstitem.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapreturnfirstitem">
+<metadata>
+<title>namednodemapReturnFirstItem</title>
+<creator>NIST</creator>
+<description>
+ The "item(index)" method returns the indexth item in
+ the map(test for first item).
+
+ Retrieve the second employee and create a NamedNodeMap
+ listing of the attributes of the last child. Since the
+ DOM does not specify an order of these nodes the contents
+ of the FIRST node can contain either "domestic" or "street".
+ The test should return "true" if the FIRST node is either
+ of these values.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="child" type="Node"/>
+<var name="name" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="1"/>
+<attributes obj="testAddress" var="attributes"/>
+<item interface="NamedNodeMap" obj="attributes" var="child" index="0"/>
+<nodeName obj="child" var="name"/>
+<assertTrue id="namednodemapReturnFirstItemAssert">
+<or>
+<equals actual="name" expected="&quot;domestic&quot;" ignoreCase="false"/>
+<equals actual="name" expected="&quot;street&quot;" ignoreCase="false"/>
+</or>
+</assertTrue>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapreturnlastitem.xml b/test/testcases/tests/level1/core/namednodemapreturnlastitem.xml
new file mode 100644
index 0000000..cc6bd27
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapreturnlastitem.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapreturnlastitem">
+<metadata>
+<title>namednodemapReturnLastItem</title>
+<creator>NIST</creator>
+<description>
+ The "item(index)" method returns the indexth item in
+ the map(test for last item).
+
+ Retrieve the second employee and create a NamedNodeMap
+ listing of the attributes of the last child. Since the
+ DOM does not specify an order of these nodes the contents
+ of the LAST node can contain either "domestic" or "street".
+ The test should return "true" if the LAST node is either
+ of these values.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="child" type="Node"/>
+<var name="name" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="1"/>
+<attributes obj="testEmployee" var="attributes"/>
+<item interface="NamedNodeMap" obj="attributes" var="child" index="1"/>
+<nodeName obj="child" var="name"/>
+<assertTrue id="namednodemapReturnLastItemAssert">
+<or>
+<equals actual="name" expected="&quot;domestic&quot;" ignoreCase="false"/>
+<equals actual="name" expected="&quot;street&quot;" ignoreCase="false"/>
+</or>
+</assertTrue>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapreturnnull.xml b/test/testcases/tests/level1/core/namednodemapreturnnull.xml
new file mode 100644
index 0000000..fef7d3c
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapreturnnull.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapreturnnull">
+<metadata>
+<title>namednodemapReturnNull</title>
+<creator>NIST</creator>
+<description>
+ The "getNamedItem(name)" method returns null of the
+ specified name did not identify any node in the map.
+
+ Retrieve the second employee and create a NamedNodeMap
+ listing of the attributes of the last child. Once the
+ list is created an invocation of the "getNamedItem(name)"
+ method is done with name="district". This name does not
+ match any names in the list therefore the method should
+ return null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--getNamedItem-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="districtNode" type="Attr"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="1"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItem obj="attributes" var="districtNode" name="&quot;district&quot;"/>
+<assertNull actual="districtNode" id="namednodemapReturnNullAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapsetnameditem.xml b/test/testcases/tests/level1/core/namednodemapsetnameditem.xml
new file mode 100644
index 0000000..6114520
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapsetnameditem.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapsetnameditem">
+<metadata>
+<title>namednodemapSetNamedItem</title>
+<creator>NIST</creator>
+<description>
+ The "setNamedItem(arg)" method adds a node using its
+ nodeName attribute.
+
+ Retrieve the second employee and create a NamedNodeMap
+ object from the attributes of the last child by
+ invoking the "getAttributes()" method. Once the
+ list is created an invocation of the "setNamedItem(arg)"
+ method is done with arg=newAttr, where newAttr is a
+ new Attr Node previously created. The "setNamedItem(arg)"
+ method should add then new node to the NamedNodeItem
+ object by using its "nodeName" attribute("district').
+ This node is then retrieved using the "getNamedItem(name)"
+ method. This test uses the "createAttribute(name)"
+ method from the document interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="newAttribute" type="Attr"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="districtNode" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<var name="setNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="1"/>
+<createAttribute obj="doc" var="newAttribute" name="&quot;district&quot;"/>
+<attributes obj="testAddress" var="attributes"/>
+<setNamedItem var="setNode" obj="attributes" arg="newAttribute"/>
+<getNamedItem obj="attributes" var="districtNode" name="&quot;district&quot;"/>
+<nodeName obj="districtNode" var="attrName"/>
+<assertEquals actual="attrName" expected="&quot;district&quot;" id="namednodemapSetNamedItemAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapsetnameditemreturnvalue.xml b/test/testcases/tests/level1/core/namednodemapsetnameditemreturnvalue.xml
new file mode 100644
index 0000000..948c972
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapsetnameditemreturnvalue.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapsetnameditemreturnvalue">
+<metadata>
+<title>namednodemapSetNamedItemReturnValue</title>
+<creator>NIST</creator>
+<description>
+ If the "setNamedItem(arg)" method replaces an already
+ existing node with the same name then the already
+ existing node is returned.
+
+ Retrieve the third employee and create a NamedNodeMap
+ object from the attributes of the last child by
+ invoking the "getAttributes()" method. Once the
+ list is created an invocation of the "setNamedItem(arg)"
+ method is done with arg=newAttr, where newAttr is a
+ new Attr Node previously created and whose node name
+ already exists in the map. The "setNamedItem(arg)"
+ method should replace the already existing node with
+ the new one and return the existing node.
+ This test uses the "createAttribute(name)" method from
+ the document interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="newAttribute" type="Attr"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="newNode" type="Node"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="2"/>
+<createAttribute obj="doc" var="newAttribute" name="&quot;street&quot;"/>
+<attributes obj="testAddress" var="attributes"/>
+<setNamedItem interface="NamedNodeMap" obj="attributes" var="newNode" arg="newAttribute"/>
+<nodeValue obj="newNode" var="attrValue"/>
+<assertEquals actual="attrValue" expected="&quot;No&quot;"
+ id="returnedNodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapsetnameditemthatexists.xml b/test/testcases/tests/level1/core/namednodemapsetnameditemthatexists.xml
new file mode 100644
index 0000000..7ae5aac
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapsetnameditemthatexists.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapsetnameditemthatexists">
+<metadata>
+<title>namednodemapSetNamedItemThatExists</title>
+<creator>NIST</creator>
+<description>
+ If the node to be added by the "setNamedItem(arg)" method
+ already exists in the NamedNodeMap, it is replaced by
+ the new one.
+
+ Retrieve the second employee and create a NamedNodeMap
+ object from the attributes of the last child by
+ invoking the "getAttributes()" method. Once the
+ list is created an invocation of the "setNamedItem(arg)"
+ method is done with arg=newAttr, where newAttr is a
+ new Attr Node previously created and whose node name
+ already exists in the map. The "setNamedItem(arg)"
+ method should replace the already existing node with
+ the new one.
+ This node is then retrieved using the "getNamedItem(name)"
+ method. This test uses the "createAttribute(name)"
+ method from the document interface
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="newAttribute" type="Attr"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="districtNode" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<var name="setNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="1"/>
+<createAttribute obj="doc" var="newAttribute" name="&quot;street&quot;"/>
+<attributes obj="testAddress" var="attributes"/>
+<setNamedItem var="setNode" obj="attributes" arg="newAttribute"/>
+<getNamedItem obj="attributes" var="districtNode" name="&quot;street&quot;"/>
+<nodeValue obj="districtNode" var="attrValue"/>
+<assertEquals actual="attrValue" expected="&quot;&quot;"
+ id="streetValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapsetnameditemwithnewvalue.xml b/test/testcases/tests/level1/core/namednodemapsetnameditemwithnewvalue.xml
new file mode 100644
index 0000000..bfc17a7
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapsetnameditemwithnewvalue.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapsetnameditemwithnewvalue">
+<metadata>
+<title>namednodemapSetNamedItemWithNewValue</title>
+<creator>NIST</creator>
+<description>
+ If the "setNamedItem(arg)" method does not replace an
+ existing node with the same name then it returns null.
+
+ Retrieve the third employee and create a NamedNodeMap
+ object from the attributes of the last child.
+ Once the list is created the "setNamedItem(arg)" method
+ is invoked with arg=newAttr, where newAttr is a
+ newly created Attr Node and whose node name
+ already exists in the map. The "setNamedItem(arg)"
+ method should add the new node and return null.
+ This test uses the "createAttribute(name)" method from
+ the document interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="newAttribute" type="Attr"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="newNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="2"/>
+<createAttribute obj="doc" var="newAttribute" name="&quot;district&quot;"/>
+<attributes obj="testAddress" var="attributes"/>
+<setNamedItem interface="NamedNodeMap" obj="attributes" var="newNode" arg="newAttribute"/>
+<assertNull actual="newNode" id="returnedNodeNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/namednodemapwrongdocumenterr.xml b/test/testcases/tests/level1/core/namednodemapwrongdocumenterr.xml
new file mode 100644
index 0000000..9f1971c
--- /dev/null
+++ b/test/testcases/tests/level1/core/namednodemapwrongdocumenterr.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="namednodemapwrongdocumenterr">
+<metadata>
+<title>namednodemapWrongDocumentErr</title>
+<creator>NIST</creator>
+<description>
+ The "setNamedItem(arg)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if "arg" was created
+ from a different document than the one that created
+ the NamedNodeMap.
+
+ Create a NamedNodeMap object from the attributes of the
+ last child of the third employee and attempt to add
+ another Attr node to it that was created from a
+ different DOM document. This should raise the desired
+ exception. This method uses the "createAttribute(name)"
+ method from the Document interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1025163788')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="newAttribute" type="Node"/>
+<var name="setNode" type="Node"/>
+<load var="doc1" href="staff" willBeModified="true"/>
+<load var="doc2" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc1" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="2"/>
+<createAttribute obj="doc2" var="newAttribute" name="&quot;newAttribute&quot;"/>
+<attributes obj="testAddress" var="attributes"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<setNamedItem var="setNode" obj="attributes" arg="newAttribute"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeappendchild.xml b/test/testcases/tests/level1/core/nodeappendchild.xml
new file mode 100644
index 0000000..1af00a1
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeappendchild.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeappendchild">
+<metadata>
+<title>nodeAppendChild</title>
+<creator>NIST</creator>
+<description>
+ The "appendChild(newChild)" method adds the node
+ "newChild" to the end of the list of children of the
+ node.
+
+ Retrieve the second employee and append a new Element
+ node to the list of children. The last node in the list
+ is then retrieved and its NodeName examined. The
+ "getNodeName()" method should return "newChild".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="createdNode" type="Node"/>
+<var name="lchild" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<createElement obj="doc" tagName="&quot;newChild&quot;" var="createdNode"/>
+<appendChild var="appendedChild" obj="employeeNode" newChild="createdNode"/>
+<lastChild interface="Node" obj="employeeNode" var="lchild"/>
+<nodeName obj="lchild" var="childName"/>
+<assertEquals actual="childName" expected="&quot;newChild&quot;" id="nodeAppendChildAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeappendchildchildexists.xml b/test/testcases/tests/level1/core/nodeappendchildchildexists.xml
new file mode 100644
index 0000000..f8d1888
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeappendchildchildexists.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeappendchildchildexists">
+<metadata>
+<title>nodeAppendChildChildExists</title>
+<creator>NIST</creator>
+<description>
+ If the "newChild" is already in the tree, it is first
+ removed before the new one is appended.
+
+ Retrieve the first child of the second employee and
+ append the first child to the end of the list. After
+ the "appendChild(newChild)" method is invoked the first
+ child should be the one that was second and the last
+ child should be the one that was first.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="childNode" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="lchild" type="Node"/>
+<var name="fchild" type="Node"/>
+<var name="lchildName" type="DOMString"/>
+<var name="fchildName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="initialName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="childNode"/>
+<firstChild interface="Node" obj="childNode" var="newChild"/>
+<nodeName var="initialName" obj="newChild"/>
+<appendChild var="appendedChild" obj="childNode" newChild="newChild"/>
+<firstChild interface="Node" obj="childNode" var="fchild"/>
+<nodeName obj="fchild" var="fchildName"/>
+<lastChild interface="Node" obj="childNode" var="lchild"/>
+<nodeName obj="lchild" var="lchildName"/>
+<if><equals actual="initialName" expected='"employeeId"' ignoreCase="false"/>
+ <assertEquals id="assert1_nowhitespace" actual="fchildName" expected='"name"' ignoreCase="false"/>
+ <assertEquals id="assert2_nowhitespace" actual="lchildName" expected='"employeeId"' ignoreCase="false"/>
+<else>
+ <assertEquals id="assert1" actual="fchildName" expected='"employeeId"' ignoreCase="false"/>
+ <assertEquals id="assert2" actual="lchildName" expected='"#text"' ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeappendchilddocfragment.xml b/test/testcases/tests/level1/core/nodeappendchilddocfragment.xml
new file mode 100644
index 0000000..b10cdc0
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeappendchilddocfragment.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeappendchilddocfragment">
+<metadata>
+<title>nodeAppendChildDocFragment</title>
+<creator>NIST</creator>
+<description>
+ Create and populate a new DocumentFragment object and
+ append it to the second employee. After the
+ "appendChild(newChild)" method is invoked retrieve the
+ new nodes at the end of the list, they should be the
+ two Element nodes from the DocumentFragment.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="newdocFragment" type="DocumentFragment"/>
+<var name="newChild1" type="Node"/>
+<var name="newChild2" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="result" type="List"/>
+<var name="nodeType" type="int"/>
+<var name="appendedChild" type="Node"/>
+<var name="expected" type="List">
+<member>"employeeId"</member>
+<member>"name"</member>
+<member>"position"</member>
+<member>"salary"</member>
+<member>"gender"</member>
+<member>"address"</member>
+<member>"newChild1"</member>
+<member>"newChild2"</member>
+</var>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
+ tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<createDocumentFragment obj="doc" var="newdocFragment"/>
+<createElement obj="doc" tagName="&quot;newChild1&quot;" var="newChild1"/>
+<createElement obj="doc" tagName="&quot;newChild2&quot;" var="newChild2"/>
+<appendChild var="appendedChild" obj="newdocFragment" newChild="newChild1"/>
+<appendChild var="appendedChild" obj="newdocFragment" newChild="newChild2"/>
+<appendChild var="appendedChild" obj="employeeNode" newChild="newdocFragment"/>
+<for-each collection="childList" member="child">
+<nodeType var="nodeType" obj="child"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <nodeName var="childName" obj="child"/>
+ <append collection="result" item="childName"/>
+</if>
+</for-each>
+<assertEquals actual="result" expected="expected" ignoreCase="false" id="elementNames"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeappendchildgetnodename.xml b/test/testcases/tests/level1/core/nodeappendchildgetnodename.xml
new file mode 100644
index 0000000..bf34ad1
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeappendchildgetnodename.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeappendchildgetnodename">
+<metadata>
+<title>nodeAppendChildGetNodeName</title>
+<creator>NIST</creator>
+<description>
+ The "appendChild(newChild)" method returns the node
+ added.
+
+ Append a newly created node to the child list of the
+ second employee and check the NodeName returned. The
+ "getNodeName()" method should return "newChild".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="newChild" type="Node"/>
+<var name="appendNode" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<createElement obj="doc" tagName="&quot;newChild&quot;" var="newChild"/>
+<appendChild obj="employeeNode" newChild="newChild" var="appendNode"/>
+<nodeName obj="appendNode" var="childName"/>
+<assertEquals actual="childName" expected="&quot;newChild&quot;" id="nodeAppendChildGetNodeNameAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeappendchildinvalidnodetype.xml b/test/testcases/tests/level1/core/nodeappendchildinvalidnodetype.xml
new file mode 100644
index 0000000..fa17937
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeappendchildinvalidnodetype.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeappendchildinvalidnodetype">
+<metadata>
+<title>nodeAppendChildInvalidNodeType</title>
+<creator>NIST</creator>
+<description>
+ The "appendChild(newChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if this node is of
+ a type that does not allow children of the type "newChild"
+ to be inserted.
+
+ Retrieve the root node and attempt to append a newly
+ created Attr node. An Element node cannot have children
+ of the "Attr" type, therefore the desired exception
+ should be raised.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-184E7107')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Element"/>
+<var name="newChild" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<documentElement obj="doc" var="rootNode"/>
+<createAttribute obj="doc" name="&quot;newAttribute&quot;" var="newChild"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<appendChild var="appendedChild" obj="rootNode" newChild="newChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeappendchildnewchilddiffdocument.xml b/test/testcases/tests/level1/core/nodeappendchildnewchilddiffdocument.xml
new file mode 100644
index 0000000..2d773bf
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeappendchildnewchilddiffdocument.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeappendchildnewchilddiffdocument">
+<metadata>
+<title>nodeAppendChildNewChildDiffDocument</title>
+<creator>NIST</creator>
+<description>
+ The "appendChild(newChild)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if the "newChild" was
+ created from a different document than the one that
+ created this node.
+
+ Retrieve the second employee and attempt to append
+ a node created from a different document. An attempt
+ to make such a replacement should raise the desired
+ exception.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-184E7107')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc1" href="staff" willBeModified="false"/>
+<load var="doc2" href="staff" willBeModified="true"/>
+<createElement obj="doc1" tagName="&quot;newChild&quot;" var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc2" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<appendChild var="appendedChild" obj="elementNode" newChild="newChild"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeappendchildnodeancestor.xml b/test/testcases/tests/level1/core/nodeappendchildnodeancestor.xml
new file mode 100644
index 0000000..cb50075
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeappendchildnodeancestor.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeappendchildnodeancestor">
+<metadata>
+<title>nodeAppendChildNodeAncestor</title>
+<creator>NIST</creator>
+<description>
+ The "appendChild(newChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if the node to
+ append is one of this node's ancestors.
+
+ Retrieve the second employee and attempt to append
+ an ancestor node(root node) to it.
+ An attempt to make such an addition should raise the
+ desired exception.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-184E7107')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<documentElement obj="doc" var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<appendChild var="appendedChild" obj="employeeNode" newChild="newChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeappendchildnomodificationallowederr.xml b/test/testcases/tests/level1/core/nodeappendchildnomodificationallowederr.xml
new file mode 100644
index 0000000..f748185
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeappendchildnomodificationallowederr.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeappendchildnomodificationallowederr">
+<metadata>
+<title>nodeAppendChildNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "appendChild(newChild)" method causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the FIRST item
+ from the entity reference and execute the "appendChild(newChild)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-184E7107')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entRef" type="Node"/>
+<var name="entElement" type="Node"/>
+<var name="createdNode" type="Node"/>
+<var name="appendedNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item obj="genderList" index="2" var="genderNode" interface="NodeList"/>
+<firstChild interface="Node" var="entRef" obj="genderNode"/>
+<assertNotNull actual="entRef" id="entRefNotNull"/>
+<nodeType var="nodeType" obj="entRef"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+</if>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<createElement obj="doc" tagName='"text3"' var="createdNode"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<appendChild var="appendedNode" obj="entElement" newChild="createdNode"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeappendchildnomodificationallowederrEE.xml b/test/testcases/tests/level1/core/nodeappendchildnomodificationallowederrEE.xml
new file mode 100644
index 0000000..475ab94
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeappendchildnomodificationallowederrEE.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeappendchildnomodificationallowederrEE">
+<metadata>
+<title>nodeAppendChildNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "appendChild(newChild)" method causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Create an ent4 entity reference and the "appendChild(newChild)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-21</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-184E7107')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/nodeappendchildnomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="Node"/>
+<var name="createdNode" type="Node"/>
+<var name="appendedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<createElement obj="doc" tagName="&quot;text3&quot;" var="createdNode"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<appendChild var="appendedNode" obj="entRef" newChild="createdNode"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeattributenodeattribute.xml b/test/testcases/tests/level1/core/nodeattributenodeattribute.xml
new file mode 100644
index 0000000..e3e7857
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeattributenodeattribute.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeattributenodeattribute">
+<metadata>
+<title>characterdataDeleteDataEnd</title>
+<creator>NIST</creator>
+<description>
+The "getAttributes()" method invoked on an Attribute
+Node returns null.
+
+Retrieve the first attribute from the last child of the
+first employee and invoke the "getAttributes()" method
+on the Attribute Node. It should return null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- Attr interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="NamedNodeMap"/>
+<var name="attrNode" type="Node"/>
+<var name="attrList" type="NamedNodeMap"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<attributes obj="testAddr" var="addrAttr"/>
+<item interface="NamedNodeMap" obj="addrAttr" var="attrNode" index="0"/>
+<attributes obj="attrNode" var="attrList"/>
+<assertNull actual="attrList" id="nodeAttributeNodeAttributeAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeattributenodename.xml b/test/testcases/tests/level1/core/nodeattributenodename.xml
new file mode 100644
index 0000000..2e540e6
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeattributenodename.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeattributenodename">
+<metadata>
+<title>nodeAttributeNodeName</title>
+<creator>NIST</creator>
+<description>
+
+ The string returned by the "getNodeName()" method for an
+
+ Attribute Node is the name of the Attribute.
+
+
+
+ Retrieve the Attribute named "domestic" from the last
+
+ child of the first employee and check the string returned
+
+ by the "getNodeName()" method. It should be equal to
+
+ "domestic".
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<getAttributeNode obj="testAddr" name="&quot;domestic&quot;" var="addrAttr"/>
+<nodeName obj="addrAttr" var="attrName"/>
+<assertEquals actual="attrName" expected="&quot;domestic&quot;" id="nodeAttributeNodeNameAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeattributenodetype.xml b/test/testcases/tests/level1/core/nodeattributenodetype.xml
new file mode 100644
index 0000000..409970c
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeattributenodetype.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeattributenodetype">
+<metadata>
+<title>nodeAttributeNodeType</title>
+<creator>NIST</creator>
+<description>
+
+ The "getNodeType()" method for an Attribute Node
+
+ returns the constant value 2.
+
+
+
+ Retrieve the first attribute from the last child of
+
+ the first employee and invoke the "getNodeType()"
+
+ method. The method should return 2.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="Attr"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<getAttributeNode obj="testAddr" name="&quot;domestic&quot;" var="addrAttr"/>
+<nodeType obj="addrAttr" var="nodeType"/>
+<assertEquals actual="nodeType" expected="2" id="nodeAttrNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeattributenodevalue.xml b/test/testcases/tests/level1/core/nodeattributenodevalue.xml
new file mode 100644
index 0000000..6a4a603
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeattributenodevalue.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeattributenodevalue">
+<metadata>
+<title>nodeAttributeNodeValue</title>
+<creator>NIST</creator>
+<description>
+
+ The string returned by the "getNodeValue()" method for an
+
+ Attribute Node is the value of the Attribute.
+
+
+
+ Retrieve the Attribute named "domestic" from the last
+
+ child of the first employee and check the string returned
+
+ by the "getNodeValue()" method. It should be equal to
+
+ "Yes".
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<getAttributeNode obj="testAddr" name="&quot;domestic&quot;" var="addrAttr"/>
+<nodeValue obj="addrAttr" var="attrValue"/>
+<assertEquals actual="attrValue" expected="&quot;Yes&quot;" id="nodeAttributeNodeValueAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodecdatasectionnodeattribute.xml b/test/testcases/tests/level1/core/nodecdatasectionnodeattribute.xml
new file mode 100644
index 0000000..69d7c5b
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodecdatasectionnodeattribute.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodecdatasectionnodeattribute">
+<metadata>
+<title>nodeCDATASectionNodeAttribute</title>
+<creator>NIST</creator>
+<description>
+The "getAttributes()" method invoked on a CDATASection
+Node returns null.
+
+Retrieve the CDATASection node contained inside the
+second child of the second employee and invoke the
+"getAttributes()" method on the CDATASection node.
+It should return null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- CDATASection interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-667469212"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="cdataName" type="Element"/>
+<var name="cdataNode" type="Node"/>
+<var name="attrList" type="NamedNodeMap"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="elementList" index="1" var="cdataName"/>
+<lastChild interface="Node" obj="cdataName" var="cdataNode"/>
+<nodeType var="nodeType" obj="cdataNode"/>
+<if><notEquals actual="nodeType" expected="4" ignoreCase="false"/>
+ <createCDATASection var="cdataNode" obj="doc" data='""'/>
+</if>
+<attributes obj="cdataNode" var="attrList"/>
+<assertNull actual="attrList" id="cdataSection"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodecdatasectionnodename.xml b/test/testcases/tests/level1/core/nodecdatasectionnodename.xml
new file mode 100644
index 0000000..4c0d99b
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodecdatasectionnodename.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodecdatasectionnodename">
+<metadata>
+<title>nodeCDATASectionNodeName</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeName()" method for a
+ CDATASection Node is #cdata-section".
+
+ Retrieve the CDATASection node inside the second child
+ of the second employee and check the string returned
+ by the "getNodeName()" method. It should be equal to
+ "#cdata-section".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-667469212"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="cdataName" type="Element"/>
+<var name="cdataNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="cdataNodeName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="elementList" index="1" var="cdataName"/>
+<lastChild interface="Node" obj="cdataName" var="cdataNode"/>
+<nodeType var="nodeType" obj="cdataNode"/>
+<if><notEquals actual="nodeType" expected="4" ignoreCase="false"/>
+ <createCDATASection var="cdataNode" obj="doc" data='""'/>
+</if>
+<nodeName obj="cdataNode" var="cdataNodeName"/>
+<assertEquals actual="cdataNodeName" expected='"#cdata-section"' id="cdataNodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodecdatasectionnodetype.xml b/test/testcases/tests/level1/core/nodecdatasectionnodetype.xml
new file mode 100644
index 0000000..9ffe7dc
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodecdatasectionnodetype.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodecdatasectionnodetype">
+<metadata>
+<title>nodeCDATASectionNodeType</title>
+<creator>NIST</creator>
+<description>
+ The "getNodeType()" method for a CDATASection Node
+ returns the constant value 4.
+
+ Retrieve the CDATASection node contained inside the
+ second child of the second employee and invoke the
+ "getNodeType()" method. The method should return 4.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-667469212"/>
+</metadata>
+<implementationAttribute name="coalescing" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testName" type="Element"/>
+<var name="cdataNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"name"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="testName"/>
+<lastChild interface="Node" obj="testName" var="cdataNode"/>
+<nodeType obj="cdataNode" var="nodeType"/>
+<if><equals actual="nodeType" expected="3" ignoreCase="false"/>
+ <createCDATASection var="cdataNode" obj="doc" data='""'/>
+ <nodeType obj="cdataNode" var="nodeType"/>
+</if>
+<assertEquals actual="nodeType" expected="4" id="nodeTypeCDATA" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodecdatasectionnodevalue.xml b/test/testcases/tests/level1/core/nodecdatasectionnodevalue.xml
new file mode 100644
index 0000000..905b114
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodecdatasectionnodevalue.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodecdatasectionnodevalue">
+<metadata>
+<title>nodeCDATASectionNodeValue</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ CDATASection Node is the content of the CDATASection.
+
+ Retrieve the CDATASection node inside the second child
+ of the second employee and check the string returned
+ by the "getNodeValue()" method. It should be equal to
+ "This is a CDATA Section with EntityReference number 2
+ &amp;ent2;".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-667469212"/>
+</metadata>
+<implementationAttribute name="coalescing" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="cdataName" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="cdataNodeValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="elementList" index="1" var="cdataName"/>
+<childNodes obj="cdataName" var="childList"/>
+<item interface="NodeList" obj="childList" index="1" var="child"/>
+<!-- if coalescing, create a CDATASection -->
+<if><isNull obj="child"/>
+ <createCDATASection var="child" obj="doc" data='"This is a CDATASection with EntityReference number 2 &amp;ent2;"'/>
+</if>
+<nodeValue obj="child" var="cdataNodeValue"/>
+<assertEquals actual="cdataNodeValue" expected='"This is a CDATASection with EntityReference number 2 &amp;ent2;"' id="value" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodechildnodes.xml b/test/testcases/tests/level1/core/nodechildnodes.xml
new file mode 100644
index 0000000..65bc32f
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodechildnodes.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodechildnodes">
+<metadata>
+<title>nodechildnodes</title>
+<creator>NIST</creator>
+<description>
+Collect the element names from Node.childNodes and check against expectations.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childNodes" type="NodeList"/>
+<var name="childNode" type="Node"/>
+<var name="childType" type="int"/>
+<var name="childName" type="DOMString"/>
+<var name="elementNames" type="List"/>
+<var name="expectedElementNames" type="List">
+ <member>"employeeId"</member>
+ <member>"name"</member>
+ <member>"position"</member>
+ <member>"salary"</member>
+ <member>"gender"</member>
+ <member>"address"</member>
+</var>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childNodes"/>
+<for-each collection="childNodes" member="childNode">
+ <nodeType var="childType" obj="childNode"/>
+ <if><equals actual="childType" expected="1" ignoreCase="false"/>
+ <nodeName var="childName" obj="childNode"/>
+ <append collection="elementNames" item="childName"/>
+ </if>
+</for-each>
+<assertEquals actual="elementNames" expected="expectedElementNames" id="elementNames" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodechildnodesappendchild.xml b/test/testcases/tests/level1/core/nodechildnodesappendchild.xml
new file mode 100644
index 0000000..8297b0a
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodechildnodesappendchild.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodechildnodesappendchild">
+<metadata>
+<title>nodechildnodesappendchild</title>
+<creator>NIST</creator>
+<description>
+Add an element and check that the previously retrieved childNodes NodeList
+is live.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="createdNode" type="Node"/>
+<var name="expectedLength" type="int"/>
+<var name="length" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<length var="expectedLength" obj="childList" interface="NodeList"/>
+<increment var="expectedLength" value="1"/>
+<createElement obj="doc" var="createdNode" tagName='"text3"'/>
+<appendChild obj="employeeNode" newChild="createdNode" var="employeeNode"/>
+<length var="length" obj="childList" interface="NodeList"/>
+<assertEquals actual="length" expected="expectedLength" ignoreCase="false" id="childNodeLength"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodechildnodesempty.xml b/test/testcases/tests/level1/core/nodechildnodesempty.xml
new file mode 100644
index 0000000..5588e18
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodechildnodesempty.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodechildnodesempty">
+<metadata>
+<title>nodeChildNodesEmpty</title>
+<creator>NIST</creator>
+<description>
+ The "getChildNodes()" method returns a NodeList
+ that contains all children of this node. If there
+ are not any children, this is a NodeList that does not
+ contain any nodes.
+
+ Retrieve the Text node from the second child of the second
+ employee and invoke the "getChildNodes()" method. The
+ NodeList returned should not have any nodes.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="secondCNode" type="Node"/>
+<var name="textNode" type="Node"/>
+<var name="childNodesList" type="NodeList"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="1" var="secondCNode"/>
+<firstChild interface="Node" obj="secondCNode" var="textNode"/>
+<childNodes obj="textNode" var="childNodesList"/>
+<assertSize collection="childNodesList" size="0" id="nodeChildNodesEmptyAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodecloneattributescopied.xml b/test/testcases/tests/level1/core/nodecloneattributescopied.xml
new file mode 100644
index 0000000..ddfdc18
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodecloneattributescopied.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodecloneattributescopied">
+<metadata>
+<title>nodeCloneAttributesCopied</title>
+<creator>NIST</creator>
+<description>
+ If the cloneNode method is used to clone an
+ Element node, all the attributes of the Element are
+ copied along with their values.
+
+ Retrieve the last child of the second employee and invoke
+ the cloneNode method. The
+ duplicate node returned by the method should copy the
+ attributes associated with this node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="addressNode" type="Node"/>
+<var name="clonedNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="attributeNode" type="Node"/>
+<var name="attributeName" type="DOMString"/>
+<var name="result" type="Collection"/>
+<var name="expectedResult" type="Collection">
+<member>"domestic"</member>
+<member>"street"</member>
+</var>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="addressNode"/>
+<cloneNode obj="addressNode" deep="false" var="clonedNode"/>
+<attributes obj="clonedNode" var="attributes"/>
+<for-each collection="attributes" member="attributeNode">
+<nodeName obj="attributeNode" var="attributeName"/>
+<append collection="result" item="attributeName"/>
+</for-each>
+<assertEquals actual="result" expected="expectedResult" id="nodeCloneAttributesCopiedAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeclonefalsenocopytext.xml b/test/testcases/tests/level1/core/nodeclonefalsenocopytext.xml
new file mode 100644
index 0000000..175c936
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeclonefalsenocopytext.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeclonefalsenocopytext">
+<metadata>
+<title>nodeCloneFalseNoCopyText</title>
+<creator>NIST</creator>
+<description>
+ The "cloneNode(deep)" method does not copy text unless it
+ is deep cloned.(Test for deep=false)
+
+ Retrieve the fourth child of the second employee and
+ the "cloneNode(deep)" method with deep=false. The
+ duplicate node returned by the method should not copy
+ any text data contained in this node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="childNode" type="Node"/>
+<var name="clonedNode" type="Node"/>
+<var name="lastChildNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="3" var="childNode"/>
+<cloneNode obj="childNode" deep="false" var="clonedNode"/>
+<lastChild interface="Node" obj="clonedNode" var="lastChildNode"/>
+<assertNull actual="lastChildNode" id="noTextNodes"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeclonegetparentnull.xml b/test/testcases/tests/level1/core/nodeclonegetparentnull.xml
new file mode 100644
index 0000000..dcaa41a
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeclonegetparentnull.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeclonegetparentnull">
+<metadata>
+<title>nodeCloneGetParentNull</title>
+<creator>NIST</creator>
+<description>
+ The duplicate node returned by the "cloneNode(deep)"
+ method does not have a ParentNode.
+
+ Retrieve the second employee and invoke the
+ "cloneNode(deep)" method with deep=false. The
+ duplicate node returned should return null when the
+ "getParentNode()" is invoked.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="clonedNode" type="Node"/>
+<var name="parentNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<cloneNode obj="employeeNode" deep="false" var="clonedNode"/>
+<parentNode interface="Node" obj="clonedNode" var="parentNode"/>
+<assertNull actual="parentNode" id="nodeCloneGetParentNullAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeclonenodefalse.xml b/test/testcases/tests/level1/core/nodeclonenodefalse.xml
new file mode 100644
index 0000000..e51c7d0
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeclonenodefalse.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeclonenodefalse">
+<metadata>
+<title>nodeCloneNodeFalse</title>
+<creator>NIST</creator>
+<description>
+ The "cloneNode(deep)" method returns a copy of the node
+ only if deep=false.
+
+ Retrieve the second employee and invoke the
+ "cloneNode(deep)" method with deep=false. The
+ method should only clone this node. The NodeName and
+ length of the NodeList are checked. The "getNodeName()"
+ method should return "employee" and the "getLength()"
+ method should return 0.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="clonedNode" type="Node"/>
+<var name="cloneName" type="DOMString"/>
+<var name="cloneChildren" type="NodeList"/>
+<var name="length" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<cloneNode obj="employeeNode" deep="false" var="clonedNode"/>
+<nodeName obj="clonedNode" var="cloneName"/>
+<assertEquals actual="cloneName" expected="&quot;employee&quot;" ignoreCase="false" id="name"/>
+<childNodes obj="clonedNode" var="cloneChildren"/>
+<length interface="NodeList" obj="cloneChildren" var="length"/>
+<assertEquals actual="length" expected="0" ignoreCase="false" id="length"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeclonenodetrue.xml b/test/testcases/tests/level1/core/nodeclonenodetrue.xml
new file mode 100644
index 0000000..812e235
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeclonenodetrue.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeclonenodetrue">
+<metadata>
+<title>nodeCloneNodeTrue</title>
+<creator>NIST</creator>
+<description>
+ The "cloneNode(deep)" method returns a copy of the node
+ and the subtree under it if deep=true.
+
+ Retrieve the second employee and invoke the
+ "cloneNode(deep)" method with deep=true. The
+ method should clone this node and the subtree under it.
+ The NodeName of each child in the returned node is
+ checked to insure the entire subtree under the second
+ employee was cloned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="clonedNode" type="Node"/>
+<var name="clonedList" type="NodeList"/>
+<var name="clonedChild" type="Node"/>
+<var name="clonedChildName" type="DOMString"/>
+<var name="length" type="int"/>
+<var name="result" type="List"/>
+<var name="expectedWhitespace" type="List">
+<member>"#text"</member>
+<member>"employeeId"</member>
+<member>"#text"</member>
+<member>"name"</member>
+<member>"#text"</member>
+<member>"position"</member>
+<member>"#text"</member>
+<member>"salary"</member>
+<member>"#text"</member>
+<member>"gender"</member>
+<member>"#text"</member>
+<member>"address"</member>
+<member>"#text"</member>
+</var>
+<var name="expectedNoWhitespace" type="List">
+<member>"employeeId"</member>
+<member>"name"</member>
+<member>"position"</member>
+<member>"salary"</member>
+<member>"gender"</member>
+<member>"address"</member>
+</var>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes var="childList" obj="employeeNode"/>
+<length var="length" obj="childList" interface="NodeList"/>
+<cloneNode obj="employeeNode" deep="true" var="clonedNode"/>
+<childNodes obj="clonedNode" var="clonedList"/>
+<for-each collection="clonedList" member="clonedChild">
+<nodeName obj="clonedChild" var="clonedChildName"/>
+<append collection="result" item="clonedChildName"/>
+</for-each>
+<if><equals actual="length" expected="6" ignoreCase="false"/>
+ <assertEquals actual="result" expected="expectedNoWhitespace" id="nowhitespace" ignoreCase="false"/>
+<else>
+ <assertEquals actual="result" expected="expectedWhitespace" id="whitespace" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeclonetruecopytext.xml b/test/testcases/tests/level1/core/nodeclonetruecopytext.xml
new file mode 100644
index 0000000..a4cacc9
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeclonetruecopytext.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeclonetruecopytext">
+<metadata>
+<title>nodeclonetruecopytext</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the second salary and
+ the "cloneNode(deep)" method with deep=true. The
+ duplicate node returned by the method should copy
+ any text data contained in this node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="childList" type="NodeList"/>
+<var name="childNode" type="Node"/>
+<var name="clonedNode" type="Node"/>
+<var name="lastChildNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"salary"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="childNode"/>
+<cloneNode obj="childNode" deep="true" var="clonedNode"/>
+<lastChild interface="Node" obj="clonedNode" var="lastChildNode"/>
+<nodeValue obj="lastChildNode" var="childValue"/>
+<assertEquals actual="childValue" expected='"35,000"' id="nodeCloneTrueCopyTextAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodecommentnodeattributes.xml b/test/testcases/tests/level1/core/nodecommentnodeattributes.xml
new file mode 100644
index 0000000..0a3b8c2
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodecommentnodeattributes.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodecommentnodeattributes">
+<metadata>
+<title>nodeCommentNodeAttributes</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributes()" method invoked on a Comment
+ Node returns null.
+
+ Find any comment that is an immediate child of the root
+ and assert that Node.attributes is null. Then create
+ a new comment node (in case they had been omitted) and
+ make the assertion.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=248"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="childNode" type="Node"/>
+<var name="attrList" type="NamedNodeMap"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<childNodes obj="doc" var="childList"/>
+<for-each collection="childList" member="childNode">
+<nodeType var="nodeType" obj="childNode"/>
+<if><equals actual="nodeType" expected="8"/>
+<attributes obj="childNode" var="attrList"/>
+<assertNull actual="attrList" id="attributesNull"/>
+</if>
+</for-each>
+<createComment var="childNode" obj="doc" data='"This is a comment"'/>
+<attributes obj="childNode" var="attrList"/>
+<assertNull actual="attrList" id="createdAttributesNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodecommentnodename.xml b/test/testcases/tests/level1/core/nodecommentnodename.xml
new file mode 100644
index 0000000..a907ba7
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodecommentnodename.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodecommentnodename">
+<metadata>
+<title>nodeCommentNodeName</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeName()" method for a
+ Comment Node is "#comment".
+
+ Retrieve the Comment node in the XML file
+ and check the string returned by the "getNodeName()"
+ method. It should be equal to "#comment".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="commentNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="commentNodeName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<childNodes obj="doc" var="elementList"/>
+<for-each collection="elementList" member="commentNode">
+<nodeType obj="commentNode" var="nodeType"/>
+<if>
+<equals actual="nodeType" expected="8" ignoreCase="false"/>
+<nodeName obj="commentNode" var="commentNodeName"/>
+<assertEquals actual="commentNodeName" expected="&quot;#comment&quot;"
+ id="commentNodeName" ignoreCase="false"/>
+</if>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level1/core/nodecommentnodetype.xml b/test/testcases/tests/level1/core/nodecommentnodetype.xml
new file mode 100644
index 0000000..d5817b5
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodecommentnodetype.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodecommentnodetype">
+<metadata>
+<title>nodeCommentNodeType</title>
+<creator>NIST</creator>
+<description>
+ The "getNodeType()" method for a Comment Node
+ returns the constant value 8.
+
+ Retrieve the nodes from the document and check for
+ a comment node and invoke the "getNodeType()" method. This should
+ return 8.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="testList" type="NodeList"/>
+<var name="commentNode" type="Node"/>
+<var name="commentNodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<childNodes obj="doc" var="testList"/>
+<for-each collection="testList" member="commentNode">
+<nodeName obj="commentNode" var="commentNodeName"/>
+<if>
+<equals actual="commentNodeName" expected="&quot;#comment&quot;" ignoreCase="false"/>
+<nodeType obj="commentNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="8" id="nodeCommentNodeTypeAssert1" ignoreCase="false"/>
+</if>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level1/core/nodecommentnodevalue.xml b/test/testcases/tests/level1/core/nodecommentnodevalue.xml
new file mode 100644
index 0000000..4dc430c
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodecommentnodevalue.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodecommentnodevalue">
+<metadata>
+<title>nodeCommentNodeValue</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ Comment Node is the content of the comment.
+
+ Retrieve the comment in the XML file and
+ check the string returned by the "getNodeValue()" method.
+ It should be equal to "This is comment number 1".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="commentNode" type="Node"/>
+<var name="commentName" type="DOMString"/>
+<var name="commentValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<childNodes obj="doc" var="elementList"/>
+<for-each collection="elementList" member="commentNode">
+<nodeName obj="commentNode" var="commentName"/>
+<if>
+<equals actual="commentName" expected="&quot;#comment&quot;" ignoreCase="false"/>
+<nodeValue obj="commentNode" var="commentValue"/>
+<assertEquals actual="commentValue" expected="&quot; This is comment number 1.&quot;" id="value" ignoreCase="false"/>
+</if>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level1/core/nodedocumentfragmentnodename.xml b/test/testcases/tests/level1/core/nodedocumentfragmentnodename.xml
new file mode 100644
index 0000000..a1fdda6
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodedocumentfragmentnodename.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodedocumentfragmentnodename">
+<metadata>
+<title>nodeDocumentFragmentNodeName</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeName()" method for a
+ DocumentFragment Node is "#document-frament".
+
+ Retrieve the DOM document and invoke the
+ "createDocumentFragment()" method and check the string
+ returned by the "getNodeName()" method. It should be
+ equal to "#document-fragment".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="documentFragmentName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="docFragment"/>
+<nodeName obj="docFragment" var="documentFragmentName"/>
+<assertEquals actual="documentFragmentName" expected="&quot;#document-fragment&quot;" id="nodeDocumentFragmentNodeNameAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodedocumentfragmentnodetype.xml b/test/testcases/tests/level1/core/nodedocumentfragmentnodetype.xml
new file mode 100644
index 0000000..42e46da
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodedocumentfragmentnodetype.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodedocumentfragmentnodetype">
+<metadata>
+<title>nodeDocumentFragmentNodeType</title>
+<creator>NIST</creator>
+<description>
+ The "getNodeType()" method for a DocumentFragment Node
+ returns the constant value 11.
+
+ Invoke the "createDocumentFragment()" method and
+ examine the NodeType of the document fragment
+ returned by the "getNodeType()" method. The method
+ should return 11.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="documentFragmentNode" type="DocumentFragment"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="documentFragmentNode"/>
+<nodeType obj="documentFragmentNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="11" id="nodeDocumentFragmentNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodedocumentfragmentnodevalue.xml b/test/testcases/tests/level1/core/nodedocumentfragmentnodevalue.xml
new file mode 100644
index 0000000..906b5b9
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodedocumentfragmentnodevalue.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodedocumentfragmentnodevalue">
+<metadata>
+<title>nodeDocumentFragmentNodeValue</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ DocumentFragment Node is null.
+
+ Retrieve the DOM document and invoke the
+ "createDocumentFragment()" method and check the string
+ returned by the "getNodeValue()" method. It should be
+ equal to null.
+</description>
+<contributor>Mary Brady</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3"/>
+<!--nodeValue attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<!-- Node.attributes -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="attrList" type="NamedNodeMap"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="docFragment"/>
+<!-- despite the name, this was the only assertion in the original test -->
+<attributes obj="docFragment" var="attrList"/>
+<assertNull actual="attrList" id="attributesNull"/>
+<!-- now actually test the initial value of nodeValue -->
+<nodeValue obj="docFragment" var="value"/>
+<assertNull actual="value" id="initiallyNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodedocumentnodeattribute.xml b/test/testcases/tests/level1/core/nodedocumentnodeattribute.xml
new file mode 100644
index 0000000..2fc6b8b
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodedocumentnodeattribute.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodedocumentnodeattribute">
+<metadata>
+<title>nodedocumentnodeattribute</title>
+<creator>NIST</creator>
+<description>
+The "getAttributes()" method invoked on a Document
+Node returns null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- Document interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attrList" type="NamedNodeMap"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<attributes obj="doc" var="attrList"/>
+<assertNull actual="attrList" id="documentAttributesNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodedocumentnodename.xml b/test/testcases/tests/level1/core/nodedocumentnodename.xml
new file mode 100644
index 0000000..4560d2a
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodedocumentnodename.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodedocumentnodename">
+<metadata>
+<title>nodeDocumentNodeName</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeName()" method for a
+ Document Node is "#document".
+
+ Retrieve the DOM document and check the string returned
+ by the "getNodeName()" method. It should be equal to
+ "#document".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!-- Document interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="documentName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<nodeName obj="doc" var="documentName"/>
+<assertEquals actual="documentName" expected="&quot;#document&quot;"
+ id="documentNodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodedocumentnodetype.xml b/test/testcases/tests/level1/core/nodedocumentnodetype.xml
new file mode 100644
index 0000000..9f1e85d
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodedocumentnodetype.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodedocumentnodetype">
+<metadata>
+<title>nodeDocumentNodeType</title>
+<creator>NIST</creator>
+<description>
+The "getNodeType()" method for a Document Node
+returns the constant value 9.
+
+Retrieve the document and invoke the "getNodeType()"
+method. The method should return 9.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!-- Document interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<nodeType obj="doc" var="nodeType"/>
+<assertEquals actual="nodeType" expected="9" id="nodeDocumentNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodedocumentnodevalue.xml b/test/testcases/tests/level1/core/nodedocumentnodevalue.xml
new file mode 100644
index 0000000..6ff28e5
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodedocumentnodevalue.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodedocumentnodevalue">
+<metadata>
+<title>nodeDocumentNodeValue</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ Document Node is null.
+
+ Retrieve the DOM Document and check the string returned
+ by the "getNodeValue()" method. It should be equal to
+ null.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!-- Document interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="documentValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<nodeValue obj="doc" var="documentValue"/>
+<assertNull actual="documentValue" id="documentNodeValueNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodedocumenttypenodename.xml b/test/testcases/tests/level1/core/nodedocumenttypenodename.xml
new file mode 100644
index 0000000..a168320
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodedocumenttypenodename.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodedocumenttypenodename">
+<metadata>
+<title>nodedocumenttypenodename</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the DOCTYPE declaration from the XML file and
+ check the string returned by the "getNodeName()"
+ method. It should be equal to "staff" or "svg".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="documentTypeName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<nodeName obj="docType" var="documentTypeName"/>
+<if><contentType type="image/svg+xml"/>
+<assertEquals actual="documentTypeName" expected='"svg"' id="doctypeNameSVG" ignoreCase="false"/>
+<else>
+<assertEquals actual="documentTypeName" expected='"staff"' id="documentName" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/nodedocumenttypenodetype.xml b/test/testcases/tests/level1/core/nodedocumenttypenodetype.xml
new file mode 100644
index 0000000..30db085
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodedocumenttypenodetype.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodedocumenttypenodetype">
+<metadata>
+<title>nodedocumenttypenodetype</title>
+<creator>NIST</creator>
+<description>
+ The "getNodeType()" method for a DocumentType Node
+ returns the constant value 10.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="documentTypeNode" type="DocumentType"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="documentTypeNode"/>
+<assertNotNull actual="documentTypeNode" id="doctypeNotNull"/>
+<nodeType obj="documentTypeNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="10" id="nodeType" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodedocumenttypenodevalue.xml b/test/testcases/tests/level1/core/nodedocumenttypenodevalue.xml
new file mode 100644
index 0000000..188761a
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodedocumenttypenodevalue.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodedocumenttypenodevalue">
+<metadata>
+<title>nodedocumenttypenodevalue</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ DocumentType Node is null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="attrList" type="NamedNodeMap"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<attributes obj="docType" var="attrList"/>
+<assertNull actual="attrList" id="doctypeAttributesNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeelementnodeattributes.xml b/test/testcases/tests/level1/core/nodeelementnodeattributes.xml
new file mode 100644
index 0000000..3620d18
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeelementnodeattributes.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeelementnodeattributes">
+<metadata>
+<title>nodeElementNodeAttributes</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributes()" method invoked on an Element
+ Node returns a NamedNodeMap containing the attributes
+ of this node.
+
+ Retrieve the last child of the third employee and
+ invoke the "getAttributes()" method. It should return
+ a NamedNodeMap containing the attributes of the Element
+ node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="NamedNodeMap"/>
+<var name="attrNode" type="Node"/>
+<var name="attrName" type="DOMString"/>
+<var name="attrList" type="Collection"/>
+<var name="expected" type="Collection">
+<member>"domestic"</member>
+<member>"street"</member>
+</var>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="testAddr"/>
+<attributes obj="testAddr" var="addrAttr"/>
+<for-each collection="addrAttr" member="attrNode">
+<nodeName obj="attrNode" var="attrName"/>
+<append collection="attrList" item="attrName"/>
+</for-each>
+<assertEquals actual="attrList" expected="expected" id="nodeElementNodeValueAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeelementnodename.xml b/test/testcases/tests/level1/core/nodeelementnodename.xml
new file mode 100644
index 0000000..6f7028b
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeelementnodename.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeelementnodename">
+<metadata>
+<title>nodeElementNodeName</title>
+<creator>NIST</creator>
+<description>
+
+ The string returned by the "getNodeName()" method for an
+
+ Element Node is its tagName.
+
+
+
+ Retrieve the first Element Node(Root Node) of the
+
+ DOM object and check the string returned by the
+
+ "getNodeName()" method. It should be equal to its
+
+ tagName.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=251"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementNode" type="Element"/>
+<var name="elementName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="elementNode"/>
+<nodeName obj="elementNode" var="elementName"/>
+<if><contentType type="image/svg+xml"/>
+<assertEquals actual="elementName" expected='"svg"' id="svgNodeName" ignoreCase="false"/>
+<else>
+<assertEquals actual="elementName" expected='"staff"' id="nodeElementNodeNameAssert1" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeelementnodetype.xml b/test/testcases/tests/level1/core/nodeelementnodetype.xml
new file mode 100644
index 0000000..84fdb9c
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeelementnodetype.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeelementnodetype">
+<metadata>
+<title>nodeElementNodeType</title>
+<creator>NIST</creator>
+<description>
+ The "getNodeType()" method for an Element Node
+ returns the constant value 1.
+
+ Retrieve the root node and invoke the "getNodeType()"
+ method. The method should return 1.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Element"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<nodeType obj="rootNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="1" id="nodeElementNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeelementnodevalue.xml b/test/testcases/tests/level1/core/nodeelementnodevalue.xml
new file mode 100644
index 0000000..cffc9d5
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeelementnodevalue.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeelementnodevalue">
+<metadata>
+<title>nodeElementNodeValue</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeValue()" method for an
+ Element Node is null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementNode" type="Element"/>
+<var name="elementValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="elementNode"/>
+<nodeValue obj="elementNode" var="elementValue"/>
+<assertNull actual="elementValue" id="elementNodeValueNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeentitynodeattributes.xml b/test/testcases/tests/level1/core/nodeentitynodeattributes.xml
new file mode 100644
index 0000000..b8806d2
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeentitynodeattributes.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeentitynodeattributes">
+<metadata>
+<title>nodeentitynodeattributes</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributes()" method invoked on an Entity
+ Node returns null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entityNode" type="Node"/>
+<var name="attrList" type="NamedNodeMap"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="entities"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<getNamedItem obj="entities" name='"ent1"' var="entityNode"/>
+<assertNotNull actual="entityNode" id="ent1NotNull"/>
+<attributes obj="entityNode" var="attrList"/>
+<assertNull actual="attrList" id="entityAttributesNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeentitynodename.xml b/test/testcases/tests/level1/core/nodeentitynodename.xml
new file mode 100644
index 0000000..e511a53
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeentitynodename.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeentitynodename">
+<metadata>
+<title>nodeEntityNodeName</title>
+<creator>NIST</creator>
+<description>
+Check the nodeName of the entity returned by DocumentType.entities.getNamedItem("ent1").
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entityNode" type="Node"/>
+<var name="entityName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="entities"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<getNamedItem obj="entities" name='"ent1"' var="entityNode"/>
+<assertNotNull actual="entityNode" id="entityNodeNotNull"/>
+<nodeName obj="entityNode" var="entityName"/>
+<assertEquals actual="entityName" expected='"ent1"' id="entityNodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeentitynodetype.xml b/test/testcases/tests/level1/core/nodeentitynodetype.xml
new file mode 100644
index 0000000..a033257
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeentitynodetype.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeentitynodetype">
+<metadata>
+<title>nodeEntityNodeType</title>
+<creator>NIST</creator>
+<description>
+ The "getNodeType()" method for an Entity Node
+ returns the constant value 6.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entityNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="entities"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<getNamedItem obj="entities" var="entityNode" name='"ent1"'/>
+<assertNotNull actual="entityNode" id="ent1NotNull"/>
+<nodeType obj="entityNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="6" id="entityNodeType" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeentitynodevalue.xml b/test/testcases/tests/level1/core/nodeentitynodevalue.xml
new file mode 100644
index 0000000..d02b393
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeentitynodevalue.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeentitynodevalue">
+<metadata>
+<title>nodeEntityNodeValue</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeValue()" method for an
+ Entity Node is null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entityNode" type="Node"/>
+<var name="entityValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="entities"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<getNamedItem obj="entities" name='"ent1"' var="entityNode"/>
+<assertNotNull actual="entityNode" id="ent1NotNull"/>
+<nodeValue obj="entityNode" var="entityValue"/>
+<assertNull actual="entityValue" id="entityNodeValue"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeentityreferencenodeattributes.xml b/test/testcases/tests/level1/core/nodeentityreferencenodeattributes.xml
new file mode 100644
index 0000000..dd37ec9
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeentityreferencenodeattributes.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeentityreferencenodeattributes">
+<metadata>
+<title>nodeentityreferencenodeattributes</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributes()" method invoked on an EntityReference
+ Node returns null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="entRefAddr" type="Element"/>
+<var name="entRefNode" type="Node"/>
+<var name="attrList" type="NamedNodeMap"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"address"'/>
+<item interface="NodeList" obj="elementList" index="1" var="entRefAddr"/>
+<firstChild interface="Node" obj="entRefAddr" var="entRefNode"/>
+<nodeType var="nodeType" obj="entRefNode"/>
+<if><notEquals actual="nodeType" expected="5" ignoreCase="false"/>
+ <createEntityReference var="entRefNode" obj="doc" name='"ent2"'/>
+ <assertNotNull actual="entRefNode" id="createdEntRefNotNull"/>
+</if>
+<attributes obj="entRefNode" var="attrList"/>
+<assertNull actual="attrList" id="attrList"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeentityreferencenodename.xml b/test/testcases/tests/level1/core/nodeentityreferencenodename.xml
new file mode 100644
index 0000000..1cfc361
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeentityreferencenodename.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeentityreferencenodename">
+<metadata>
+<title>nodeEntityReferenceNodeName</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeName()" method for an
+ EntityReference Node is the name of the entity referenced.
+
+ Retrieve the first Entity Reference node from the last
+ child of the second employee and check the string
+ returned by the "getNodeName()" method. It should be
+ equal to "ent2".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="entRefAddr" type="Element"/>
+<var name="entRefNode" type="Node"/>
+<var name="entRefName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
+ var="elementList" tagname='"address"'/>
+<item interface="NodeList" obj="elementList" index="1" var="entRefAddr"/>
+<firstChild interface="Node" obj="entRefAddr" var="entRefNode"/>
+<nodeType var="nodeType" obj="entRefNode"/>
+<if><notEquals actual="nodeType" expected="5" ignoreCase="false"/>
+ <createEntityReference var="entRefNode" obj="doc" name='"ent2"'/>
+ <assertNotNull actual="entRefNode" id="createdEntRefNotNull"/>
+</if>
+<nodeName obj="entRefNode" var="entRefName"/>
+<assertEquals actual="entRefName" expected='"ent2"' id="nodeEntityReferenceNodeNameAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeentityreferencenodetype.xml b/test/testcases/tests/level1/core/nodeentityreferencenodetype.xml
new file mode 100644
index 0000000..e512e17
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeentityreferencenodetype.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeentityreferencenodetype">
+<metadata>
+<title>nodeEntityReferenceNodeType</title>
+<creator>NIST</creator>
+<description>
+ The "getNodeType()" method for an EntityReference Node
+ returns the constant value 5.
+
+ Retrieve the EntityReference node from the last child
+ of the second employee and invoke the "getNodeType()"
+ method. The method should return 5.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="entRefAddr" type="Element"/>
+<var name="entRefNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
+ var="elementList" tagname='"address"'/>
+<item interface="NodeList" obj="elementList" index="1" var="entRefAddr"/>
+<firstChild interface="Node" obj="entRefAddr" var="entRefNode"/>
+<nodeType obj="entRefNode" var="nodeType"/>
+<if><equals actual="nodeType" expected="3" ignoreCase="false"/>
+ <createEntityReference var="entRefNode" obj="doc" name='"ent2"'/>
+ <assertNotNull actual="entRefNode" id="createdEntRefNotNull"/>
+ <nodeType obj="entRefNode" var="nodeType"/>
+</if>
+<assertEquals actual="nodeType" expected="5" id="entityNodeType" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeentityreferencenodevalue.xml b/test/testcases/tests/level1/core/nodeentityreferencenodevalue.xml
new file mode 100644
index 0000000..eef360e
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeentityreferencenodevalue.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeentityreferencenodevalue">
+<metadata>
+<title>nodeEntityReferenceNodeValue</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeValue()" method for an
+ EntityReference Node is null.
+
+ Retrieve the first Entity Reference node from the last
+ child of the second employee and check the string
+ returned by the "getNodeValue()" method. It should be
+ equal to null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="entRefAddr" type="Element"/>
+<var name="entRefNode" type="Node"/>
+<var name="entRefValue" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
+ var="elementList" tagname='"address"'/>
+<item interface="NodeList" obj="elementList" index="1" var="entRefAddr"/>
+<firstChild interface="Node" obj="entRefAddr" var="entRefNode"/>
+<nodeType var="nodeType" obj="entRefNode"/>
+<if><equals actual="nodeType" expected="3" ignoreCase="false"/>
+ <createEntityReference var="entRefNode" obj="doc" name='"ent2"'/>
+ <assertNotNull actual="entRefNode" id="createdEntRefNotNull"/>
+</if>
+<nodeValue obj="entRefNode" var="entRefValue"/>
+<assertNull actual="entRefValue" id="entRefNodeValue"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeentitysetnodevalue.xml b/test/testcases/tests/level1/core/nodeentitysetnodevalue.xml
new file mode 100644
index 0000000..6a1c836
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeentitysetnodevalue.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeentitysetnodevalue">
+<metadata>
+<title>nodeentitysetnodevalue</title>
+<creator>Curt Arnold</creator>
+<description>
+ The string returned by the "getNodeValue()" method for an
+ Entity Node is always null and "setNodeValue" should have no effect.
+</description>
+<date qualifier="created">2001-10-21</date>
+<!-- Node.nodeValue -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<!-- Entity interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-527DCFF2"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entityNode" type="Node"/>
+<var name="entityValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="entities"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<getNamedItem obj="entities" name='"ent1"' var="entityNode"/>
+<assertNotNull actual="entityNode" id="ent1NotNull"/>
+<nodeValue obj="entityNode" value='"This should have no effect"'/>
+<nodeValue obj="entityNode" var="entityValue"/>
+<assertNull actual="entityValue" id="nodeValueNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodegetfirstchild.xml b/test/testcases/tests/level1/core/nodegetfirstchild.xml
new file mode 100644
index 0000000..488eeef
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodegetfirstchild.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodegetfirstchild">
+<metadata>
+<title>nodegetfirstchild</title>
+<creator>NIST</creator>
+<description>
+ The "getFirstChild()" method returns the first child
+ of this node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-169727388"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="fchildNode" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<firstChild interface="Node" obj="employeeNode" var="fchildNode"/>
+<nodeName obj="fchildNode" var="childName"/>
+<if><equals actual="childName" expected='"#text"' ignoreCase="false"/>
+<nextSibling var="fchildNode" obj="fchildNode" interface="Node"/>
+<nodeName obj="fchildNode" var="childName"/>
+</if>
+<assertEquals actual="childName" expected='"employeeId"' id="nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodegetfirstchildnull.xml b/test/testcases/tests/level1/core/nodegetfirstchildnull.xml
new file mode 100644
index 0000000..cd67a6f
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodegetfirstchildnull.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodegetfirstchildnull">
+<metadata>
+<title>nodeGetFirstChildNull</title>
+<creator>NIST</creator>
+<description>
+
+ If there is not a first child then the "getFirstChild()"
+
+ method returns null.
+
+
+
+ Retrieve the Text node form the second child of the first
+
+ employee and invoke the "getFirstChild()" method. It
+
+ should return null.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-169727388"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="secondChildNode" type="Node"/>
+<var name="textNode" type="Node"/>
+<var name="noChildNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="employeeNode"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<item interface="NodeList" obj="employeeList" index="1" var="secondChildNode"/>
+<firstChild interface="Node" obj="secondChildNode" var="textNode"/>
+<firstChild interface="Node" obj="textNode" var="noChildNode"/>
+<assertNull actual="noChildNode" id="nodeGetFirstChildNullAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodegetlastchild.xml b/test/testcases/tests/level1/core/nodegetlastchild.xml
new file mode 100644
index 0000000..27a55ad
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodegetlastchild.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodegetlastchild">
+<metadata>
+<title>nodegetlastchild</title>
+<creator>NIST</creator>
+<description>
+ The "getLastChild()" method returns the last child
+ of this node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-61AD09FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="lchildNode" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<lastChild interface="Node" obj="employeeNode" var="lchildNode"/>
+<nodeName obj="lchildNode" var="childName"/>
+<if><equals actual="childName" expected='"#text"' ignoreCase="false"/>
+<previousSibling interface="Node" obj="lchildNode" var="lchildNode"/>
+<nodeName obj="lchildNode" var="childName"/>
+</if>
+<assertEquals actual="childName" expected='"address"' id="nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodegetlastchildnull.xml b/test/testcases/tests/level1/core/nodegetlastchildnull.xml
new file mode 100644
index 0000000..f493e1c
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodegetlastchildnull.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodegetlastchildnull">
+<metadata>
+<title>nodeGetLastChildNull</title>
+<creator>NIST</creator>
+<description>
+
+ If there is not a last child then the "getLastChild()"
+
+ method returns null.
+
+
+
+ Retrieve the Text node from the second child of the first
+
+ employee and invoke the "getLastChild()" method. It
+
+ should return null.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-61AD09FB"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="secondChildNode" type="Node"/>
+<var name="textNode" type="Node"/>
+<var name="noChildNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="employeeNode"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<item interface="NodeList" obj="employeeList" index="1" var="secondChildNode"/>
+<firstChild interface="Node" obj="secondChildNode" var="textNode"/>
+<lastChild interface="Node" obj="textNode" var="noChildNode"/>
+<assertNull actual="noChildNode" id="nodeGetLastChildNullAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodegetnextsibling.xml b/test/testcases/tests/level1/core/nodegetnextsibling.xml
new file mode 100644
index 0000000..a77741f
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodegetnextsibling.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodegetnextsibling">
+<metadata>
+<title>nodegetnextsibling</title>
+<creator>NIST</creator>
+<description>
+ The "getNextSibling()" method returns the node immediately
+ following this node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6AC54C2F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeIdNode" type="Node"/>
+<var name="nsNode" type="Node"/>
+<var name="nsName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employeeId"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeIdNode"/>
+<nextSibling interface="Node" obj="employeeIdNode" var="nsNode"/>
+<nodeName obj="nsNode" var="nsName"/>
+<if><equals actual="nsName" expected='"#text"' ignoreCase="false"/>
+<nextSibling interface="Node" obj="nsNode" var="nsNode"/>
+<nodeName obj="nsNode" var="nsName"/>
+</if>
+<assertEquals actual="nsName" expected='"name"' id="nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodegetnextsiblingnull.xml b/test/testcases/tests/level1/core/nodegetnextsiblingnull.xml
new file mode 100644
index 0000000..b9ab799
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodegetnextsiblingnull.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodegetnextsiblingnull">
+<metadata>
+<title>nodeGetNextSiblingNull</title>
+<creator>NIST</creator>
+<description>
+
+ If there is not a node immediately following this node the
+
+ "getNextSibling()" method returns null.
+
+
+
+ Retrieve the first child of the second employee and
+
+ invoke the "getNextSibling()" method. It should
+
+ be set to null.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6AC54C2F"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="lcNode" type="Node"/>
+<var name="nsNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<lastChild interface="Node" obj="employeeNode" var="lcNode"/>
+<nextSibling interface="Node" obj="lcNode" var="nsNode"/>
+<assertNull actual="nsNode" id="nodeGetNextSiblingNullAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodegetownerdocument.xml b/test/testcases/tests/level1/core/nodegetownerdocument.xml
new file mode 100644
index 0000000..414a607
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodegetownerdocument.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodegetownerdocument">
+<metadata>
+<title>nodeGetOwnerDocument</title>
+<creator>NIST</creator>
+<description>
+ The "getOwnerDocument()" method returns the Document
+ object associated with this node.
+
+ Retrieve the second employee and examine Document
+ returned by the "getOwnerDocument()" method. Invoke
+ the "getDocumentElement()" on the Document which will
+ return an Element that is equal to "staff".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#node-ownerDoc"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=251"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="docNode" type="Node"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docElement" type="Element"/>
+<var name="elementName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="docNode"/>
+<ownerDocument obj="docNode" var="ownerDocument"/>
+<documentElement obj="ownerDocument" var="docElement"/>
+<nodeName obj="docElement" var="elementName"/>
+<if><contentType type="image/svg+xml"/>
+<assertEquals actual="elementName" expected='"svg"' id="svgTagName" ignoreCase="false"/>
+<else>
+<assertEquals actual="elementName" expected="&quot;staff&quot;" id="nodeGetOwnerDocumentAssert1" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/nodegetownerdocumentnull.xml b/test/testcases/tests/level1/core/nodegetownerdocumentnull.xml
new file mode 100644
index 0000000..ca50949
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodegetownerdocumentnull.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodegetownerdocumentnull">
+<metadata>
+<title>nodeGetOwnerDocumentNull</title>
+<creator>NIST</creator>
+<description>
+ The "getOwnerDocument()" method returns null if the target
+ node itself is a document.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#node-ownerDoc"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="ownerDocument" type="Document"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<ownerDocument obj="doc" var="ownerDocument"/>
+<assertNull actual="ownerDocument" id="documentOwnerDocumentNull"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodegetprevioussibling.xml b/test/testcases/tests/level1/core/nodegetprevioussibling.xml
new file mode 100644
index 0000000..9ee58f2
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodegetprevioussibling.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodegetprevioussibling">
+<metadata>
+<title>nodegetprevioussibling</title>
+<creator>NIST</creator>
+<description>
+ The "getPreviousSibling()" method returns the node
+ immediately preceding this node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-640FB3C8"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="psNode" type="Node"/>
+<var name="psName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="nameNode"/>
+<previousSibling interface="Node" obj="nameNode" var="psNode"/>
+<nodeName obj="psNode" var="psName"/>
+<if><equals actual="psName" expected='"#text"' ignoreCase="false"/>
+<previousSibling interface="Node" obj="psNode" var="psNode"/>
+<nodeName obj="psNode" var="psName"/>
+</if>
+<assertEquals actual="psName" expected='"employeeId"' id="nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodegetprevioussiblingnull.xml b/test/testcases/tests/level1/core/nodegetprevioussiblingnull.xml
new file mode 100644
index 0000000..6050c98
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodegetprevioussiblingnull.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodegetprevioussiblingnull">
+<metadata>
+<title>nodeGetPreviousSiblingNull</title>
+<creator>NIST</creator>
+<description>
+
+ If there is not a node immediately preceding this node the
+
+ "getPreviousSibling()" method returns null.
+
+
+
+ Retrieve the first child of the second employee and
+
+ invoke the "getPreviousSibling()" method. It should
+
+ be set to null.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-640FB3C8"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="fcNode" type="Node"/>
+<var name="psNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="employeeNode"/>
+<firstChild interface="Node" obj="employeeNode" var="fcNode"/>
+<previousSibling interface="Node" obj="fcNode" var="psNode"/>
+<assertNull actual="psNode" id="nodeGetPreviousSiblingNullAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodehaschildnodes.xml b/test/testcases/tests/level1/core/nodehaschildnodes.xml
new file mode 100644
index 0000000..edc5151
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodehaschildnodes.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodehaschildnodes">
+<metadata>
+<title>nodeHasChildNodes</title>
+<creator>NIST</creator>
+<description>
+ The "hasChildNodes()" method returns true if the node
+ has children.
+
+ Retrieve the root node("staff") and invoke the
+ "hasChildNodes()" method. It should return the boolean
+ value "true".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-810594187"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<hasChildNodes obj="employeeNode" var="state"/>
+<assertTrue actual="state" id="nodeHasChildAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodehaschildnodesfalse.xml b/test/testcases/tests/level1/core/nodehaschildnodesfalse.xml
new file mode 100644
index 0000000..dd64125
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodehaschildnodesfalse.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodehaschildnodesfalse">
+<metadata>
+<title>nodeHasChildNodesFalse</title>
+<creator>NIST</creator>
+<description>
+ The "hasChildNodes()" method returns false if the node
+ does not have any children.
+
+ Retrieve the Text node inside the first child of the
+ second employee and invoke the "hasChildNodes()" method.
+ It should return the boolean value "false".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-810594187"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="employeeIdList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="textNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="child"/>
+<childNodes obj="child" var="employeeIdList"/>
+<item interface="NodeList" obj="employeeIdList" index="1" var="employeeNode"/>
+<firstChild interface="Node" obj="employeeNode" var="textNode"/>
+<hasChildNodes obj="textNode" var="state"/>
+<assertFalse actual="state" id="nodeHasChildFalseAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeinsertbefore.xml b/test/testcases/tests/level1/core/nodeinsertbefore.xml
new file mode 100644
index 0000000..810b427
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeinsertbefore.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeinsertbefore">
+<metadata>
+<title>nodeInsertBefore</title>
+<creator>NIST</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method inserts the
+ node "newChild" before the node "refChild".
+
+ Insert a newly created Element node before the eigth
+ child of the second employee and check the "newChild"
+ and "refChild" after insertion for correct placement.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="length" type="int"/>
+<var name="insertedNode" type="Node"/>
+<var name="actual" type="List"/>
+<var name="expectedWithWhitespace" type="List">
+<member>"#text"</member>
+<member>"employeeId"</member>
+<member>"#text"</member>
+<member>"name"</member>
+<member>"#text"</member>
+<member>"position"</member>
+<member>"#text"</member>
+<member>"newChild"</member>
+<member>"salary"</member>
+<member>"#text"</member>
+<member>"gender"</member>
+<member>"#text"</member>
+<member>"address"</member>
+<member>"#text"</member>
+</var>
+<var name="expectedWithoutWhitespace" type="List">
+<member>"employeeId"</member>
+<member>"name"</member>
+<member>"position"</member>
+<member>"newChild"</member>
+<member>"salary"</member>
+<member>"gender"</member>
+<member>"address"</member>
+</var>
+<var name="expected" type="List"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<length var="length" obj="childList" interface="NodeList"/>
+<if><equals actual="length" expected="6" ignoreCase="false"/>
+ <item interface="NodeList" obj="childList" index="3" var="refChild"/>
+ <assign var="expected" value="expectedWithoutWhitespace"/>
+ <else>
+ <item interface="NodeList" obj="childList" index="7" var="refChild"/>
+ <assign var="expected" value="expectedWithWhitespace"/>
+ </else>
+</if>
+<createElement obj="doc" tagName='"newChild"' var="newChild"/>
+<insertBefore var="insertedNode" obj="employeeNode" newChild="newChild" refChild="refChild"/>
+<for-each collection="childList" member="child">
+ <nodeName obj="child" var="childName"/>
+ <append collection="actual" item="childName"/>
+</for-each>
+<assertEquals actual="actual" expected="expected" id="nodeNames" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeinsertbeforedocfragment.xml b/test/testcases/tests/level1/core/nodeinsertbeforedocfragment.xml
new file mode 100644
index 0000000..6fd3579
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeinsertbeforedocfragment.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeinsertbeforedocfragment">
+<metadata>
+<title>nodeInsertBeforeDocFragment</title>
+<creator>NIST</creator>
+<description>
+ If the "newChild" is a DocumentFragment object then all
+ its children are inserted in the same order before the
+ the "refChild".
+
+ Create a DocumentFragment object and populate it with
+ two Element nodes. Retrieve the second employee and
+ insert the newly created DocumentFragment before its
+ fourth child. The second employee should now have two
+ extra children("newChild1" and "newChild2") at
+ positions fourth and fifth respectively.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="newdocFragment" type="DocumentFragment"/>
+<var name="newChild1" type="Node"/>
+<var name="newChild2" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="3" var="refChild"/>
+<createDocumentFragment obj="doc" var="newdocFragment"/>
+<createElement obj="doc" tagName="&quot;newChild1&quot;" var="newChild1"/>
+<createElement obj="doc" tagName="&quot;newChild2&quot;" var="newChild2"/>
+<appendChild var="appendedChild" obj="newdocFragment" newChild="newChild1"/>
+<appendChild var="appendedChild" obj="newdocFragment" newChild="newChild2"/>
+<insertBefore var="insertedNode" obj="employeeNode" newChild="newdocFragment" refChild="refChild"/>
+<item interface="NodeList" obj="childList" index="3" var="child"/>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected='"newChild1"' ignoreCase="false" id="childName3"/>
+<item interface="NodeList" obj="childList" index="4" var="child"/>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected='"newChild2"' ignoreCase="false" id="childName4"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeinsertbeforeinvalidnodetype.xml b/test/testcases/tests/level1/core/nodeinsertbeforeinvalidnodetype.xml
new file mode 100644
index 0000000..3c0b3a7
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeinsertbeforeinvalidnodetype.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeinsertbeforeinvalidnodetype">
+<metadata>
+<title>nodeInsertBeforeInvalidNodeType</title>
+<creator>NIST</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if this node is of
+ a type that does not allow children of the type "newChild"
+ to be inserted.
+
+ Retrieve the root node and attempt to insert a newly
+ created Attr node. An Element node cannot have children
+ of the "Attr" type, therefore the desired exception
+ should be raised.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Element"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<documentElement obj="doc" var="rootNode"/>
+<createAttribute obj="doc" name="&quot;newAttribute&quot;" var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="refChild"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<insertBefore var="insertedNode" obj="rootNode" newChild="newChild" refChild="refChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeinsertbeforenewchilddiffdocument.xml b/test/testcases/tests/level1/core/nodeinsertbeforenewchilddiffdocument.xml
new file mode 100644
index 0000000..46a8aad
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeinsertbeforenewchilddiffdocument.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeinsertbeforenewchilddiffdocument">
+<metadata>
+<title>nodeInsertBeforeNewChildDiffDocument</title>
+<creator>NIST</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if the "newChild" was
+ created from a different document than the one that
+ created this node.
+
+ Retrieve the second employee and attempt to insert a new
+ child that was created from a different document than the
+ one that created the second employee. An attempt to
+ insert such a child should raise the desired exception.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="refChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc1" href="staff" willBeModified="false"/>
+<load var="doc2" href="staff" willBeModified="true"/>
+<createElement obj="doc1" tagName="&quot;newChild&quot;" var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc2" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<firstChild var="refChild" obj="elementNode" interface="Node"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<insertBefore var="insertedNode" obj="elementNode" newChild="newChild" refChild="refChild"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeinsertbeforenewchildexists.xml b/test/testcases/tests/level1/core/nodeinsertbeforenewchildexists.xml
new file mode 100644
index 0000000..c202d0f
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeinsertbeforenewchildexists.xml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeinsertbeforenewchildexists">
+<metadata>
+<title>nodeInsertBeforeNewChildExists</title>
+<creator>NIST</creator>
+<description>
+ If the "newChild" is already in the tree, the
+ "insertBefore(newChild,refChild)" method must first
+ remove it before the insertion takes place.
+
+ Insert a node Element ("employeeId") that is already
+ present in the tree. The existing node should be
+ removed first and the new one inserted. The node is
+ inserted at a different position in the tree to assure
+ that it was indeed inserted.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="child" type="Node"/>
+<var name="length" type="int"/>
+<var name="childName" type="DOMString"/>
+<var name="insertedNode" type="Node"/>
+<var name="expectedWhitespace" type="List">
+<member>"#text"</member>
+<member>"#text"</member>
+<member>"name"</member>
+<member>"#text"</member>
+<member>"position"</member>
+<member>"#text"</member>
+<member>"salary"</member>
+<member>"#text"</member>
+<member>"gender"</member>
+<member>"#text"</member>
+<member>"employeeId"</member>
+<member>"address"</member>
+<member>"#text"</member>
+</var>
+<var name="expectedNoWhitespace" type="List">
+<member>"name"</member>
+<member>"position"</member>
+<member>"salary"</member>
+<member>"gender"</member>
+<member>"employeeId"</member>
+<member>"address"</member>
+</var>
+<var name="expected" type="List"/>
+<var name="result" type="List"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<length var="length" obj="childList" interface="NodeList"/>
+<if><equals actual="length" expected="6" ignoreCase="false"/>
+ <assign var="expected" value="expectedNoWhitespace"/>
+ <item interface="NodeList" obj="childList" index="5" var="refChild"/>
+ <item interface="NodeList" obj="childList" index="0" var="newChild"/>
+ <else>
+ <assign var="expected" value="expectedWhitespace"/>
+ <item interface="NodeList" obj="childList" index="11" var="refChild"/>
+ <item interface="NodeList" obj="childList" index="1" var="newChild"/>
+ </else>
+</if>
+<insertBefore var="insertedNode" obj="employeeNode" newChild="newChild" refChild="refChild"/>
+<for-each collection="childList" member="child">
+ <nodeName obj="child" var="childName"/>
+ <append collection="result" item="childName"/>
+</for-each>
+<assertEquals id="childNames" actual="result" expected="expected" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeinsertbeforenodeancestor.xml b/test/testcases/tests/level1/core/nodeinsertbeforenodeancestor.xml
new file mode 100644
index 0000000..6bcbea4
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeinsertbeforenodeancestor.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeinsertbeforenodeancestor">
+<metadata>
+<title>nodeInsertBeforeNodeAncestor</title>
+<creator>NIST</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if the node to be
+ inserted is one of this nodes ancestors.
+
+ Retrieve the second employee and attempt to insert a
+ node that is one of its ancestors(root node). An
+ attempt to insert such a node should raise the
+ desired exception.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<documentElement obj="doc" var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="0" var="refChild"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<insertBefore var="insertedNode" obj="employeeNode" newChild="newChild" refChild="refChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeinsertbeforenodename.xml b/test/testcases/tests/level1/core/nodeinsertbeforenodename.xml
new file mode 100644
index 0000000..b8333a2
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeinsertbeforenodename.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeinsertbeforenodename">
+<metadata>
+<title>nodeInsertBeforeNodeName</title>
+<creator>NIST</creator>
+<description>
+ The "insertBefore(newChild,refchild)" method returns
+ the node being inserted.
+
+ Insert an Element node before the fourth
+ child of the second employee and check the node
+ returned from the "insertBefore(newChild,refChild)"
+ method. The node returned should be "newChild".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="3" var="refChild"/>
+<createElement obj="doc" tagName="&quot;newChild&quot;" var="newChild"/>
+<insertBefore obj="employeeNode" newChild="newChild" refChild="refChild" var="insertedNode"/>
+<nodeName obj="insertedNode" var="childName"/>
+<assertEquals actual="childName" expected="&quot;newChild&quot;" id="nodeInsertBeforeNodeNameAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeinsertbeforenomodificationallowederr.xml b/test/testcases/tests/level1/core/nodeinsertbeforenomodificationallowederr.xml
new file mode 100644
index 0000000..5fe4165
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeinsertbeforenomodificationallowederr.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeinsertbeforenomodificationallowederr">
+<metadata>
+<title>nodeInsertBeforeNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the FIRST item
+ from the entity reference and execute the "insertBefore(newChild,refChild)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entRef" type="Node"/>
+<var name="entElement" type="Node"/>
+<var name="createdNode" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<var name="refChild" type="Node" isNull="true"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item obj="genderList" index="2" var="genderNode" interface="NodeList"/>
+<firstChild interface="Node" var="entRef" obj="genderNode"/>
+<assertNotNull actual="entRef" id="entRefNotNull"/>
+<nodeType var="nodeType" obj="entRef"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+</if>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<createElement obj="doc" tagName='"text3"' var="createdNode"/>
+<assertDOMException id="throw_NOT_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<insertBefore var="insertedNode" obj="entElement" newChild="createdNode" refChild="refChild"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeinsertbeforenomodificationallowederrEE.xml b/test/testcases/tests/level1/core/nodeinsertbeforenomodificationallowederrEE.xml
new file mode 100644
index 0000000..91033a4
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeinsertbeforenomodificationallowederrEE.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeinsertbeforenomodificationallowederrEE">
+<metadata>
+<title>nodeInsertBeforeNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Create an ent4 entity reference and and execute the "insertBefore(newChild,refChild)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-21</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/nodeinsertbeforenomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="Node"/>
+<var name="createdNode" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<var name="refChild" type="Node" isNull="true"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<createElement obj="doc" tagName='"text3"' var="createdNode"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<insertBefore var="insertedNode" obj="entRef" newChild="createdNode" refChild="refChild"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeinsertbeforerefchildnonexistent.xml b/test/testcases/tests/level1/core/nodeinsertbeforerefchildnonexistent.xml
new file mode 100644
index 0000000..196814e
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeinsertbeforerefchildnonexistent.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeinsertbeforerefchildnonexistent">
+<metadata>
+<title>nodeInsertBeforeRefChildNonexistent</title>
+<creator>NIST</creator>
+<description>
+ The "insertBefore(newChild,refChild)" method raises a
+ NOT_FOUND_ERR DOMException if the reference child is
+ not a child of this node.
+
+ Retrieve the second employee and attempt to insert a
+ new node before a reference node that is not a child
+ of this node. An attempt to insert before a non child
+ node should raise the desired exception.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="refChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createElement obj="doc" tagName="&quot;newChild&quot;" var="newChild"/>
+<createElement obj="doc" tagName="&quot;refChild&quot;" var="refChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<insertBefore var="insertedNode" obj="elementNode" newChild="newChild" refChild="refChild"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeinsertbeforerefchildnull.xml b/test/testcases/tests/level1/core/nodeinsertbeforerefchildnull.xml
new file mode 100644
index 0000000..a104b02
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeinsertbeforerefchildnull.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeinsertbeforerefchildnull">
+<metadata>
+<title>nodeInsertBeforeRefChildNull</title>
+<creator>NIST</creator>
+<description>
+ If the "refChild" is null then the
+ "insertBefore(newChild,refChild)" method inserts the
+ node "newChild" at the end of the list of children.
+
+ Retrieve the second employee and invoke the
+ "insertBefore(newChild,refChild)" method with
+ refChild=null. Since "refChild" is null the "newChild"
+ should be added to the end of the list. The last item
+ in the list is checked after insertion. The last Element
+ node of the list should be "newChild".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="refChild" type="Node" isNull="true"/>
+<var name="newChild" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="insertedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<createElement obj="doc" tagName="&quot;newChild&quot;" var="newChild"/>
+<insertBefore var="insertedNode" obj="employeeNode" newChild="newChild" refChild="refChild"/>
+<lastChild interface="Node" obj="employeeNode" var="child"/>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected="&quot;newChild&quot;" id="nodeInsertBeforeRefChildNullAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodelistindexequalzero.xml b/test/testcases/tests/level1/core/nodelistindexequalzero.xml
new file mode 100644
index 0000000..19b3a33
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodelistindexequalzero.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodelistindexequalzero">
+<metadata>
+<title>nodelistindexequalzero</title>
+<creator>NIST</creator>
+<description>
+ Create a list of all the children elements of the third
+ employee and access its first child by using an index
+ of 0.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--item-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"employee"'/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<item interface="NodeList" obj="employeeList" var="child" index="0"/>
+<nodeName obj="child" var="childName"/>
+<if><notEquals actual="childName" expected='"#text"' ignoreCase="false"/>
+<assertEquals actual="childName" expected='"employeeId"' id="childName" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/nodelistindexgetlength.xml b/test/testcases/tests/level1/core/nodelistindexgetlength.xml
new file mode 100644
index 0000000..bd32f4f
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodelistindexgetlength.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodelistindexgetlength">
+<metadata>
+<title>nodelistIndexGetLength</title>
+<creator>NIST</creator>
+<description>
+ The "getLength()" method returns the number of nodes
+ in the list should be 6 (no whitespace) or 13.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--length attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-203510337"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="length" type="int"/>
+<var name="expectedCount" type="int" value="0"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;employee&quot;"/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<length var="length" obj="employeeList" interface="NodeList"/>
+<assertTrue id="lengthIs6or13">
+ <or>
+ <equals actual="length" expected="6" ignoreCase="false"/>
+ <equals actual="length" expected="13" ignoreCase="false"/>
+ </or>
+</assertTrue>
+</test>
diff --git a/test/testcases/tests/level1/core/nodelistindexgetlengthofemptylist.xml b/test/testcases/tests/level1/core/nodelistindexgetlengthofemptylist.xml
new file mode 100644
index 0000000..f33c17b
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodelistindexgetlengthofemptylist.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodelistindexgetlengthofemptylist">
+<metadata>
+<title>nodelistIndexGetLengthOfEmptyList</title>
+<creator>NIST</creator>
+<description>
+ The "getLength()" method returns the number of nodes
+ in the list.(Test for EMPTY list)
+
+ Create a list of all the children of the Text node
+ inside the first child of the third employee and
+ invoke the "getLength()" method. It should contain
+ the value 0.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--length attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-203510337"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="childNode" type="Node"/>
+<var name="textNode" type="Node"/>
+<var name="textList" type="NodeList"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;employee&quot;"/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<item interface="NodeList" obj="employeeList" var="childNode" index="1"/>
+<firstChild interface="Node" obj="childNode" var="textNode"/>
+<childNodes obj="textNode" var="textList"/>
+<assertSize collection="textList" size="0" id="nodelistIndexGetLengthOfEmptyListAssert"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodelistindexnotzero.xml b/test/testcases/tests/level1/core/nodelistindexnotzero.xml
new file mode 100644
index 0000000..f0331f0
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodelistindexnotzero.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodelistindexnotzero">
+<metadata>
+<title>nodelistIndexNotZero</title>
+<creator>NIST</creator>
+<description>
+ Create a list of all the children elements of the third
+ employee and access its fourth child by using an index
+ of 3. This should result in "name" being
+ selected. Further we evaluate its content(by using
+ the "getNodeName()" method) to ensure the proper
+ element was accessed.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--item-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="length" type="int"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;employee&quot;"/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<length var="length" obj="employeeList" interface="NodeList"/>
+<if><equals actual="length" expected="6" ignoreCase="false"/>
+ <item interface="NodeList" obj="employeeList" var="child" index="1"/>
+<else>
+ <item interface="NodeList" obj="employeeList" var="child" index="3"/>
+</else>
+</if>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected='"name"'
+ id="nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodelistreturnfirstitem.xml b/test/testcases/tests/level1/core/nodelistreturnfirstitem.xml
new file mode 100644
index 0000000..177c8e3
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodelistreturnfirstitem.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodelistreturnfirstitem">
+<metadata>
+<title>nodelistReturnFirstItem</title>
+<creator>NIST</creator>
+<description>
+Get the first child of the third employee using NodeList.item(0)
+which will either be a Text node (whitespace) or employeeId element.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="length" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"employee"'/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<item interface="NodeList" obj="employeeList" var="child" index="0"/>
+<nodeName obj="child" var="childName"/>
+<length var="length" obj="employeeList" interface="NodeList"/>
+<if><equals actual="length" expected="6" ignoreCase="false"/>
+<assertEquals actual="childName" expected='"employeeId"' ignoreCase="true" id="firstChildNoWhitespace"/>
+<else>
+<assertEquals actual="childName" expected='"#text"' ignoreCase="true" id="firstChildWithWhitespace"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/nodelistreturnlastitem.xml b/test/testcases/tests/level1/core/nodelistreturnlastitem.xml
new file mode 100644
index 0000000..fcf0700
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodelistreturnlastitem.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodelistreturnlastitem">
+<metadata>
+<title>nodelistReturnLastItem</title>
+<creator>NIST</creator>
+<description>
+Get this last child of the third employee using NodeList.item(NodeList.length - 1)
+and check that it is either a Text element (with whitespace) or an address element.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="length" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;employee&quot;"/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<length var="length" obj="employeeList" interface="NodeList"/>
+<if><equals actual="length" expected="6" ignoreCase="false"/>
+ <item interface="NodeList" obj="employeeList" var="child" index="5"/>
+ <nodeName obj="child" var="childName"/>
+ <assertEquals actual="childName" expected='"address"' id="nodeName1" ignoreCase="false"/>
+<else>
+ <item interface="NodeList" obj="employeeList" var="child" index="12"/>
+ <nodeName obj="child" var="childName"/>
+ <assertEquals actual="childName" expected='"#text"' id="nodeName2" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/nodelisttraverselist.xml b/test/testcases/tests/level1/core/nodelisttraverselist.xml
new file mode 100644
index 0000000..abbcd40
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodelisttraverselist.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodelisttraverselist">
+<metadata>
+<title>nodelistTraverseList</title>
+<creator>NIST</creator>
+<description>
+ The range of valid child node indices is 0 thru length -1
+
+ Create a list of all the children elements of the third
+ employee and traverse the list from index=0 thru
+ length -1.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--length attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-203510337"/>
+<!--item-->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="employeeList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="result" type="List"/>
+<var name="length" type="int"/>
+<var name="expectedWhitespace" type="List">
+<member>"#text"</member>
+<member>"employeeId"</member>
+<member>"#text"</member>
+<member>"name"</member>
+<member>"#text"</member>
+<member>"position"</member>
+<member>"#text"</member>
+<member>"salary"</member>
+<member>"#text"</member>
+<member>"gender"</member>
+<member>"#text"</member>
+<member>"address"</member>
+<member>"#text"</member>
+</var>
+<var name="expectedNoWhitespace" type="List">
+<member>"employeeId"</member>
+<member>"name"</member>
+<member>"position"</member>
+<member>"salary"</member>
+<member>"gender"</member>
+<member>"address"</member>
+</var>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;employee&quot;"/>
+<item interface="NodeList" obj="elementList" var="employeeNode" index="2"/>
+<childNodes obj="employeeNode" var="employeeList"/>
+<length var="length" obj="employeeList" interface="NodeList"/>
+<for-each collection="employeeList" member="child">
+ <nodeName obj="child" var="childName"/>
+ <append collection="result" item="childName"/>
+</for-each>
+<if><equals actual="length" expected="6" ignoreCase="false"/>
+ <assertEquals actual="result" expected="expectedNoWhitespace" id="nowhitespace" ignoreCase="false"/>
+<else>
+ <assertEquals actual="result" expected="expectedWhitespace" id="whitespace" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/nodenotationnodeattributes.xml b/test/testcases/tests/level1/core/nodenotationnodeattributes.xml
new file mode 100644
index 0000000..09d0152
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodenotationnodeattributes.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodenotationnodeattributes">
+<metadata>
+<title>nodeNotationNodeAttributes</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributes()" method invoked on a Notation
+ Node returns null.
+
+ Retrieve the Notation declaration inside the DocumentType
+ node and invoke the "getAttributes()" method on the
+ Notation Node. It should return null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notationNode" type="Node"/>
+<var name="attrList" type="NamedNodeMap"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="notations"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItem obj="notations" name='"notation1"' var="notationNode"/>
+<assertNotNull actual="notationNode" id="notationNotNull"/>
+<attributes obj="notationNode" var="attrList"/>
+<assertNull actual="attrList" id="nodeNotationNodeAttributesAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodenotationnodename.xml b/test/testcases/tests/level1/core/nodenotationnodename.xml
new file mode 100644
index 0000000..97cd2b3
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodenotationnodename.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodenotationnodename">
+<metadata>
+<title>nodeNotationNodeName</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeName()" method for a
+ Notation Node is the name of the notation.
+
+ Retrieve the Notation declaration inside the
+ DocumentType node and check the string returned
+ by the "getNodeName()" method. It should be equal to
+ "notation1".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notationNode" type="Node"/>
+<var name="notationName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="notations"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItem obj="notations" name='"notation1"' var="notationNode"/>
+<assertNotNull actual="notationNode" id="notationNotNull"/>
+<nodeName obj="notationNode" var="notationName"/>
+<assertEquals actual="notationName" expected='"notation1"' id="nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodenotationnodetype.xml b/test/testcases/tests/level1/core/nodenotationnodetype.xml
new file mode 100644
index 0000000..c2243d4
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodenotationnodetype.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodenotationnodetype">
+<metadata>
+<title>nodeNotationNodeType</title>
+<creator>NIST</creator>
+<description>
+ The "getNodeType()" method for an Notation Node
+ returns the constant value 12.
+
+ Retrieve the Notation declaration in the DocumentType
+ node and invoke the "getNodeType()" method. The method
+ should return 12.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notationNode" type="Notation"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="notations"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItem obj="notations" var="notationNode" name='"notation1"'/>
+<assertNotNull actual="notationNode" id="notationNotNull"/>
+<nodeType obj="notationNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="12" id="nodeNotationNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodenotationnodevalue.xml b/test/testcases/tests/level1/core/nodenotationnodevalue.xml
new file mode 100644
index 0000000..787ae9e
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodenotationnodevalue.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodenotationnodevalue">
+<metadata>
+<title>nodeNotationNodeValue</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ Notation Node is null.
+
+ Retrieve the Notation declaration inside the
+ DocumentType node and check the string returned
+ by the "getNodeValue()" method. It should be equal to
+ null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notationNode" type="Node"/>
+<var name="notationValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="notations"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItem obj="notations" name="&quot;notation1&quot;" var="notationNode"/>
+<assertNotNull actual="notationNode" id="notationNotNull"/>
+<nodeValue obj="notationNode" var="notationValue"/>
+<assertNull actual="notationValue" id="nodeValue"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeparentnode.xml b/test/testcases/tests/level1/core/nodeparentnode.xml
new file mode 100644
index 0000000..1984a7b
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeparentnode.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeparentnode">
+<metadata>
+<title>nodeParentNode</title>
+<creator>NIST</creator>
+<description>
+ The "getParentNode()" method returns the parent
+ of this node.
+
+ Retrieve the second employee and invoke the
+ "getParentNode()" method on this node. It should
+ be set to "staff".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1060184317"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=251"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="parentNode" type="Node"/>
+<var name="parentName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<parentNode interface="Node" obj="employeeNode" var="parentNode"/>
+<nodeName obj="parentNode" var="parentName"/>
+<if><contentType type="image/svg+xml"/>
+<assertEquals actual="parentName" expected='"svg"' id="svgTagName" ignoreCase="false"/>
+<else>
+<assertEquals actual="parentName" expected='"staff"' id="nodeParentNodeAssert1" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeparentnodenull.xml b/test/testcases/tests/level1/core/nodeparentnodenull.xml
new file mode 100644
index 0000000..01dacd2
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeparentnodenull.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeparentnodenull">
+<metadata>
+<title>nodeParentNodeNull</title>
+<creator>NIST</creator>
+<description>
+ The "getParentNode()" method invoked on a node that has
+ just been created and not yet added to the tree is null.
+
+ Create a new "employee" Element node using the
+ "createElement(name)" method from the Document interface.
+ Since this new node has not yet been added to the tree,
+ the "getParentNode()" method will return null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1060184317"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="createdNode" type="Element"/>
+<var name="parentNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<createElement obj="doc" tagName='"employee"' var="createdNode"/>
+<parentNode interface="Node" obj="createdNode" var="parentNode"/>
+<assertNull actual="parentNode" id="parentNode"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeprocessinginstructionnodeattributes.xml b/test/testcases/tests/level1/core/nodeprocessinginstructionnodeattributes.xml
new file mode 100644
index 0000000..100fc48
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeprocessinginstructionnodeattributes.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeprocessinginstructionnodeattributes">
+<metadata>
+<title>nodeProcessingInstructionNodeAttributes</title>
+<creator>NIST</creator>
+<description>
+
+ The "getAttributes()" method invoked on a Processing
+
+ Instruction Node returns null.
+
+
+
+ Retrieve the Processing Instruction node and invoke
+
+ the "getAttributes()" method. It should return null.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="testList" type="NodeList"/>
+<var name="piNode" type="Node"/>
+<var name="attrList" type="NamedNodeMap"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<childNodes obj="doc" var="testList"/>
+<item interface="NodeList" obj="testList" index="0" var="piNode"/>
+<attributes obj="piNode" var="attrList"/>
+<assertNull actual="attrList" id="nodeProcessingInstructionNodeAttrAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeprocessinginstructionnodename.xml b/test/testcases/tests/level1/core/nodeprocessinginstructionnodename.xml
new file mode 100644
index 0000000..e26e024
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeprocessinginstructionnodename.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeprocessinginstructionnodename">
+<metadata>
+<title>nodeProcessingInstructionNodeName</title>
+<creator>NIST</creator>
+<description>
+
+ The string returned by the "getNodeName()" method for a
+
+ Processing Instruction Node is the target.
+
+
+
+ Retrieve the Processing Instruction Node in the XML file
+
+ and check the string returned by the "getNodeName()"
+
+ method. It should be equal to "XML-STYLE".
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="testList" type="NodeList"/>
+<var name="piNode" type="Node"/>
+<var name="piName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<childNodes obj="doc" var="testList"/>
+<item interface="NodeList" obj="testList" index="0" var="piNode"/>
+<nodeName obj="piNode" var="piName"/>
+<assertEquals actual="piName" expected="&quot;TEST-STYLE&quot;" id="nodeProcessingInstructionNodeNameAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeprocessinginstructionnodetype.xml b/test/testcases/tests/level1/core/nodeprocessinginstructionnodetype.xml
new file mode 100644
index 0000000..401dbbb
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeprocessinginstructionnodetype.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeprocessinginstructionnodetype">
+<metadata>
+<title>nodeProcessingInstructionNodeType</title>
+<creator>NIST</creator>
+<description>
+
+ The "getNodeType()" method for a Processing Instruction
+
+ node returns the constant value 7.
+
+
+
+ Retrieve a NodeList of child elements from the document.
+
+ Retrieve the first child and invoke the "getNodeType()"
+
+ method. The method should return 7.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="testList" type="NodeList"/>
+<var name="piNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<childNodes obj="doc" var="testList"/>
+<item interface="NodeList" obj="testList" var="piNode" index="0"/>
+<nodeType obj="piNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="7" id="nodeProcessingInstructionNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeprocessinginstructionnodevalue.xml b/test/testcases/tests/level1/core/nodeprocessinginstructionnodevalue.xml
new file mode 100644
index 0000000..fa10a90
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeprocessinginstructionnodevalue.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeprocessinginstructionnodevalue">
+<metadata>
+<title>nodeProcessingInstructionNodeValue</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ Processing Instruction Node is the content of the
+ Processing Instruction(exclude the target).
+
+ Retrieve the Processing Instruction node in the XML file
+ and check the string returned by the "getNodeValue()"
+ method. It should be equal to "PIDATA".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="testList" type="NodeList"/>
+<var name="piNode" type="Node"/>
+<var name="piValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<childNodes obj="doc" var="testList"/>
+<item interface="NodeList" obj="testList" index="0" var="piNode"/>
+<nodeValue obj="piNode" var="piValue"/>
+<assertEquals actual="piValue" expected="&quot;PIDATA&quot;" id="value" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodeprocessinginstructionsetnodevalue.xml b/test/testcases/tests/level1/core/nodeprocessinginstructionsetnodevalue.xml
new file mode 100644
index 0000000..78f0f65
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodeprocessinginstructionsetnodevalue.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodeprocessinginstructionsetnodevalue">
+<metadata>
+<title>nodeProcessingInstructionSetNodeValue</title>
+<creator>Curt Arnold</creator>
+<description>
+ Setting the nodeValue should change the value returned by
+ nodeValue and ProcessingInstruction.getData.
+</description>
+<date qualifier="created">2001-10-21</date>
+<!-- Node.nodeValue -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<!-- ProcessingInstruction interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1004215813"/>
+<!--data attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-837822393"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=181"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="testList" type="NodeList"/>
+<var name="piNode" type="Node"/>
+<var name="piValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<childNodes obj="doc" var="testList"/>
+<item interface="NodeList" obj="testList" index="0" var="piNode"/>
+<nodeValue obj="piNode" value='"Something different"'/>
+<nodeValue obj="piNode" var="piValue"/>
+<assertEquals actual="piValue" expected='"Something different"' id="nodeValue" ignoreCase="false"/>
+<data interface="ProcessingInstruction" obj="piNode" var="piValue"/>
+<assertEquals actual="piValue" expected='"Something different"' id="data" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/noderemovechild.xml b/test/testcases/tests/level1/core/noderemovechild.xml
new file mode 100644
index 0000000..4ccd597
--- /dev/null
+++ b/test/testcases/tests/level1/core/noderemovechild.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="noderemovechild">
+<metadata>
+<title>nodeRemoveChild</title>
+<creator>NIST</creator>
+<description>
+ The "removeChild(oldChild)" method removes the child node
+ indicated by "oldChild" from the list of children and
+ returns it.
+
+ Remove the first employee by invoking the
+ "removeChild(oldChild)" method an checking the
+ node returned by the "getParentNode()" method. It
+ should be set to null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="childToRemove" type="Node"/>
+<var name="removedChild" type="Node"/>
+<var name="parentNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<documentElement obj="doc" var="rootNode"/>
+<childNodes obj="rootNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="1" var="childToRemove"/>
+<removeChild obj="rootNode" var="removedChild" oldChild="childToRemove"/>
+<parentNode interface="Node" obj="removedChild" var="parentNode"/>
+<assertNull actual="parentNode" id="nodeRemoveChildAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/noderemovechildgetnodename.xml b/test/testcases/tests/level1/core/noderemovechildgetnodename.xml
new file mode 100644
index 0000000..33da6b7
--- /dev/null
+++ b/test/testcases/tests/level1/core/noderemovechildgetnodename.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="noderemovechildgetnodename">
+<metadata>
+<title>nodeRemoveChildGetNodeName</title>
+<creator>NIST</creator>
+<description>
+ Remove the first child of the second employee
+ and check the NodeName returned by the
+ "removeChild(oldChild)" method. The returned node
+ should have a NodeName equal to "#text" or employeeId depending on whitespace.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="removedChild" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="length" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<length var="length" obj="childList" interface="NodeList"/>
+<item interface="NodeList" obj="childList" index="0" var="oldChild"/>
+<removeChild obj="employeeNode" oldChild="oldChild" var="removedChild"/>
+<nodeName obj="removedChild" var="childName"/>
+<if><equals actual="length" expected="6" ignoreCase="false"/>
+ <assertEquals actual="childName" expected='"employeeId"' id="nowhitespace" ignoreCase="false"/>
+<else>
+ <assertEquals actual="childName" expected='"#text"' id="whitespace" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/noderemovechildnode.xml b/test/testcases/tests/level1/core/noderemovechildnode.xml
new file mode 100644
index 0000000..7d83ce3
--- /dev/null
+++ b/test/testcases/tests/level1/core/noderemovechildnode.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="noderemovechildnode">
+<metadata>
+<title>nodeRemoveChildNode</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the second employee and remove its first child.
+ After the removal, the second employee should have five or twelve
+ children and the first child should now be the child
+ that used to be at the second position in the list.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="length" type="int"/>
+<var name="removedChild" type="Node"/>
+<var name="removedName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="0" var="oldChild"/>
+<removeChild var="removedChild" obj="employeeNode" oldChild="oldChild"/>
+<nodeName obj="removedChild" var="removedName"/>
+<item interface="NodeList" obj="childList" index="0" var="child"/>
+<nodeName obj="child" var="childName"/>
+<length interface="NodeList" obj="childList" var="length"/>
+<if><equals actual="length" expected="5" ignoreCase="false"/>
+ <assertEquals actual="removedName" expected='"employeeId"' ignoreCase="false" id="removedNameNoWhitespace"/>
+ <assertEquals actual="childName" expected='"name"' ignoreCase="false" id="childNameNoWhitespace"/>
+<else>
+ <assertEquals actual="removedName" expected='"#text"' ignoreCase="false" id="removedName"/>
+ <assertEquals actual="childName" expected='"employeeId"' ignoreCase="false" id="childName"/>
+ <assertEquals actual="length" expected="12" ignoreCase="false" id="length"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/noderemovechildnomodificationallowederr.xml b/test/testcases/tests/level1/core/noderemovechildnomodificationallowederr.xml
new file mode 100644
index 0000000..72c050a
--- /dev/null
+++ b/test/testcases/tests/level1/core/noderemovechildnomodificationallowederr.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="noderemovechildnomodificationallowederr">
+<metadata>
+<title>nodeRemoveChildNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "removeChild(oldChild)" method causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the FIRST item
+ from the entity reference and execute the "removeChild(oldChild)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1734834066')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entRef" type="Node"/>
+<var name="entElement" type="Node"/>
+<var name="removedNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item obj="genderList" index="2" var="genderNode" interface="NodeList"/>
+<firstChild interface="Node" var="entRef" obj="genderNode"/>
+<assertNotNull actual="entRef" id="entRefNotNull"/>
+<nodeType var="nodeType" obj="entRef"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+</if>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<removeChild var="removedNode" obj="entRef" oldChild="entElement"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/noderemovechildnomodificationallowederrEE.xml b/test/testcases/tests/level1/core/noderemovechildnomodificationallowederrEE.xml
new file mode 100644
index 0000000..47dc24d
--- /dev/null
+++ b/test/testcases/tests/level1/core/noderemovechildnomodificationallowederrEE.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="noderemovechildnomodificationallowederrEE">
+<metadata>
+<title>nodeRemoveChildNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "removeChild(oldChild)" method causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Create an entity reference and execute the "removeChild(oldChild)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-21</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1734834066')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/noderemovechildnomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="Node"/>
+<var name="entText" type="Node"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<firstChild interface="Node" var="entText" obj="entRef"/>
+<assertNotNull actual="entText" id="entTextNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<removeChild var="removedNode" obj="entRef" oldChild="entText"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/noderemovechildoldchildnonexistent.xml b/test/testcases/tests/level1/core/noderemovechildoldchildnonexistent.xml
new file mode 100644
index 0000000..472de7a
--- /dev/null
+++ b/test/testcases/tests/level1/core/noderemovechildoldchildnonexistent.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="noderemovechildoldchildnonexistent">
+<metadata>
+<title>nodeRemoveChildOldChildNonexistent</title>
+<creator>NIST</creator>
+<description>
+ The "removeChild(oldChild)" method raises a
+ NOT_FOUND_ERR DOMException if the old child is
+ not a child of this node.
+
+ Retrieve the second employee and attempt to remove a
+ node that is not one of its children. An attempt to
+ remove such a node should raise the desired exception.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1734834066')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="oldChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="removedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createElement obj="doc" tagName="&quot;oldChild&quot;" var="oldChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeChild var="removedChild" obj="elementNode" oldChild="oldChild"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodereplacechild.xml b/test/testcases/tests/level1/core/nodereplacechild.xml
new file mode 100644
index 0000000..4e6b4e5
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodereplacechild.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodereplacechild">
+<metadata>
+<title>nodeReplaceChild</title>
+<creator>NIST</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method replaces
+ the node "oldChild" with the node "newChild".
+
+ Replace the first element of the second employee with
+ a newly created Element node. Check the first position
+ after the replacement operation is completed. The new
+ Element should be "newChild".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="replacedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="0" var="oldChild"/>
+<createElement obj="doc" tagName="&quot;newChild&quot;" var="newChild"/>
+<replaceChild var="replacedNode" obj="employeeNode" newChild="newChild" oldChild="oldChild"/>
+<item interface="NodeList" obj="childList" index="0" var="child"/>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected="&quot;newChild&quot;" id="nodeReplaceChildAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodereplacechildinvalidnodetype.xml b/test/testcases/tests/level1/core/nodereplacechildinvalidnodetype.xml
new file mode 100644
index 0000000..4ca9203
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodereplacechildinvalidnodetype.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodereplacechildinvalidnodetype">
+<metadata>
+<title>nodeReplaceChildInvalidNodeType</title>
+<creator>NIST</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if this node is of
+ a type that does not allow children of the type "newChild"
+ to be inserted.
+
+ Retrieve the root node and attempt to replace
+ one of its children with a newly created Attr node.
+ An Element node cannot have children of the "Attr"
+ type, therefore the desired exception should be raised.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Element"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="replacedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<documentElement obj="doc" var="rootNode"/>
+<createAttribute obj="doc" name="&quot;newAttribute&quot;" var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="oldChild"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<replaceChild var="replacedChild" obj="rootNode" newChild="newChild" oldChild="oldChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodereplacechildnewchilddiffdocument.xml b/test/testcases/tests/level1/core/nodereplacechildnewchilddiffdocument.xml
new file mode 100644
index 0000000..d441e65
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodereplacechildnewchilddiffdocument.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodereplacechildnewchilddiffdocument">
+<metadata>
+<title>nodeReplaceChildNewChildDiffDocument</title>
+<creator>NIST</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if the "newChild" was
+ created from a different document than the one that
+ created this node.
+
+ Retrieve the second employee and attempt to replace one
+ of its children with a node created from a different
+ document. An attempt to make such a replacement
+ should raise the desired exception.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="oldChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="replacedChild" type="Node"/>
+<load var="doc1" href="staff" willBeModified="false"/>
+<load var="doc2" href="staff" willBeModified="true"/>
+<createElement obj="doc1" tagName="&quot;newChild&quot;" var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc2" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<firstChild obj="elementNode" var="oldChild" interface="Node"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<replaceChild var="replacedChild" obj="elementNode" newChild="newChild" oldChild="oldChild"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodereplacechildnewchildexists.xml b/test/testcases/tests/level1/core/nodereplacechildnewchildexists.xml
new file mode 100644
index 0000000..87a05eb
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodereplacechildnewchildexists.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodereplacechildnewchildexists">
+<metadata>
+<title>nodeReplaceChildNewChildExists</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the second employee and replace its TWELFTH
+ child(address) with its SECOND child(employeeId). After the
+ replacement the second child should now be the one that used
+ to be at the third position and the TWELFTH child should be the
+ one that used to be at the SECOND position.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node" isNull="true"/>
+<var name="newChild" type="Node" isNull="true"/>
+<var name="childName" type="DOMString"/>
+<var name="childNode" type="Node"/>
+<var name="length" type="int"/>
+<var name="actual" type="List"/>
+<var name="expected" type="List"/>
+<var name="expectedWithoutWhitespace" type="List">
+<member>"name"</member>
+<member>"position"</member>
+<member>"salary"</member>
+<member>"gender"</member>
+<member>"employeeId"</member>
+</var>
+<var name="expectedWithWhitespace" type="List">
+<member>"#text"</member>
+<member>"#text"</member>
+<member>"name"</member>
+<member>"#text"</member>
+<member>"position"</member>
+<member>"#text"</member>
+<member>"salary"</member>
+<member>"#text"</member>
+<member>"gender"</member>
+<member>"#text"</member>
+<member>"employeeId"</member>
+<member>"#text"</member>
+</var>
+<var name="replacedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<length var="length" obj="childList" interface="NodeList"/>
+<if><equals actual="length" expected="13" ignoreCase="false"/>
+ <item interface="NodeList" obj="childList" index="1" var="newChild"/>
+ <item interface="NodeList" obj="childList" index="11" var="oldChild"/>
+ <assign var="expected" value="expectedWithWhitespace"/>
+<else>
+ <item interface="NodeList" obj="childList" index="0" var="newChild"/>
+ <item interface="NodeList" obj="childList" index="5" var="oldChild"/>
+ <assign var="expected" value="expectedWithoutWhitespace"/>
+</else>
+</if>
+<replaceChild var="replacedChild" obj="employeeNode" newChild="newChild" oldChild="oldChild"/>
+<assertSame actual="replacedChild" expected="oldChild" id="return_value_same"/>
+<for-each collection="childList" member="childNode">
+ <nodeName var="childName" obj="childNode"/>
+ <append collection="actual" item="childName"/>
+</for-each>
+<assertEquals actual="actual" expected="expected" id="childNames" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodereplacechildnodeancestor.xml b/test/testcases/tests/level1/core/nodereplacechildnodeancestor.xml
new file mode 100644
index 0000000..8073e13
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodereplacechildnodeancestor.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodereplacechildnodeancestor">
+<metadata>
+<title>nodeReplaceChildNodeAncestor</title>
+<creator>NIST</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if the node to put
+ in is one of this node's ancestors.
+
+ Retrieve the second employee and attempt to replace
+ one of its children with an ancestor node(root node).
+ An attempt to make such a replacement should raise the
+ desired exception.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="replacedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<documentElement obj="doc" var="newChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<item interface="NodeList" obj="childList" index="0" var="oldChild"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<replaceChild var="replacedNode" obj="employeeNode" newChild="newChild" oldChild="oldChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodereplacechildnodename.xml b/test/testcases/tests/level1/core/nodereplacechildnodename.xml
new file mode 100644
index 0000000..174f104
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodereplacechildnodename.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodereplacechildnodename">
+<metadata>
+<title>nodeReplaceChildNodeName</title>
+<creator>NIST</creator>
+<description>
+ Replace the second Element of the second employee with
+ a newly created node Element and check the NodeName
+ returned by the "replaceChild(newChild,oldChild)"
+ method. The returned node should have a NodeName equal
+ to "employeeId".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="oldChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="replacedNode" type="Node"/>
+<var name="length" type="int"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<childNodes obj="employeeNode" var="childList"/>
+<length var="length" obj="childList" interface="NodeList"/>
+<item interface="NodeList" obj="childList" index="1" var="oldChild"/>
+<createElement obj="doc" tagName="&quot;newChild&quot;" var="newChild"/>
+<replaceChild obj="employeeNode" newChild="newChild" oldChild="oldChild" var="replacedNode"/>
+<nodeName obj="replacedNode" var="childName"/>
+<if><equals actual="length" expected="6" ignoreCase="false"/>
+ <assertEquals actual="childName" expected='"name"' id="nowhitespace" ignoreCase="false"/>
+<else>
+ <assertEquals actual="childName" expected='"employeeId"' id="whitespace" ignoreCase="false"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/nodereplacechildnomodificationallowederr.xml b/test/testcases/tests/level1/core/nodereplacechildnomodificationallowederr.xml
new file mode 100644
index 0000000..83e061d
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodereplacechildnomodificationallowederr.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodereplacechildnomodificationallowederr">
+<metadata>
+<title>nodeReplaceChildNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the FIRST item
+ from the entity reference and execute the "replaceChild(newChild,oldChild)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2001-08-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entRef" type="Node"/>
+<var name="entElement" type="Node"/>
+<var name="createdNode" type="Node"/>
+<var name="replacedChild" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item obj="genderList" index="2" var="genderNode" interface="NodeList"/>
+<firstChild interface="Node" var="entRef" obj="genderNode"/>
+<nodeType var="nodeType" obj="entRef"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+</if>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<createElement obj="doc" tagName="&quot;newChild&quot;" var="createdNode"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild var="replacedChild" obj="entRef" newChild="createdNode" oldChild="entElement"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodereplacechildnomodificationallowederrEE.xml b/test/testcases/tests/level1/core/nodereplacechildnomodificationallowederrEE.xml
new file mode 100644
index 0000000..9007392
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodereplacechildnomodificationallowederrEE.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodereplacechildnomodificationallowederrEE">
+<metadata>
+<title>nodeReplaceChildNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Create an entity reference execute the "replaceChild(newChild,oldChild)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/nodereplacechildnomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="Node"/>
+<var name="entText" type="Node"/>
+<var name="createdNode" type="Node"/>
+<var name="replacedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<firstChild interface="Node" var="entText" obj="entRef"/>
+<createElement obj="doc" tagName="&quot;newChild&quot;" var="createdNode"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild var="replacedChild" obj="entRef" newChild="createdNode" oldChild="entText"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodereplacechildoldchildnonexistent.xml b/test/testcases/tests/level1/core/nodereplacechildoldchildnonexistent.xml
new file mode 100644
index 0000000..e0d8c60
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodereplacechildoldchildnonexistent.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodereplacechildoldchildnonexistent">
+<metadata>
+<title>nodeReplaceChildOldChildNonexistent</title>
+<creator>NIST</creator>
+<description>
+ The "replaceChild(newChild,oldChild)" method raises a
+ NOT_FOUND_ERR DOMException if the old child is
+ not a child of this node.
+
+ Retrieve the second employee and attempt to replace a
+ node that is not one of its children. An attempt to
+ replace such a node should raise the desired exception.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="oldChild" type="Node"/>
+<var name="newChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementNode" type="Node"/>
+<var name="replacedNode" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createElement obj="doc" tagName="&quot;newChild&quot;" var="newChild"/>
+<createElement obj="doc" tagName="&quot;oldChild&quot;" var="oldChild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="elementNode"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<replaceChild var="replacedNode" obj="elementNode" newChild="newChild" oldChild="oldChild"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodesetnodevaluenomodificationallowederr.xml b/test/testcases/tests/level1/core/nodesetnodevaluenomodificationallowederr.xml
new file mode 100644
index 0000000..ba294e3
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodesetnodevaluenomodificationallowederr.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodesetnodevaluenomodificationallowederr">
+<metadata>
+<title>nodeSetNodeValueNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "setNodeValue(nodeValue)" method causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the SECOND item
+ from the entity reference and execute the "setNodeValue(nodeValue)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-F68D080')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entElement" type="Element"/>
+<var name="entElementText" type="CharacterData"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;gender&quot;" var="genderList"/>
+<item obj="genderList" index="2" var="genderNode" interface="NodeList"/>
+<firstChild interface="Node" var="entRef" obj="genderNode"/>
+<assertNotNull actual="entRef" id="entRefNotNull"/>
+<nodeType var="nodeType" obj="entRef"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+</if>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<firstChild interface="Node" var="entElementText" obj="entElement"/>
+<assertNotNull actual="entElementText" id="entElementTextNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<nodeValue obj="entElementText" value='"newValue"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodesetnodevaluenomodificationallowederrEE.xml b/test/testcases/tests/level1/core/nodesetnodevaluenomodificationallowederrEE.xml
new file mode 100644
index 0000000..be2cd4a
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodesetnodevaluenomodificationallowederrEE.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodesetnodevaluenomodificationallowederrEE">
+<metadata>
+<title>nodeSetNodeValueNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+ Create an entity reference and execute the "setNodeValue(nodeValue)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-F68D080')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/nodesetnodevaluenomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entText" type="CharacterData"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createEntityReference var="entRef" obj="doc" name='"ent3"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<firstChild interface="Node" var="entText" obj="entRef"/>
+<assertNotNull actual="entText" id="entTextNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<nodeValue obj="entText" value='"newValue"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/nodetextnodeattribute.xml b/test/testcases/tests/level1/core/nodetextnodeattribute.xml
new file mode 100644
index 0000000..a0581e3
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodetextnodeattribute.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodetextnodeattribute">
+<metadata>
+<title>nodeTextNodeAttribute</title>
+<creator>NIST</creator>
+<description>
+The "getAttributes()" method invoked on a Text
+Node returns null.
+
+Retrieve the Text node from the last child of the
+first employee and invoke the "getAttributes()" method
+on the Text Node. It should return null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--attributes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096"/>
+<!-- Text interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1312295772"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<var name="textNode" type="Node"/>
+<var name="attrList" type="NamedNodeMap"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<firstChild interface="Node" obj="testAddr" var="textNode"/>
+<attributes obj="textNode" var="attrList"/>
+<assertNull actual="attrList" id="nodeTextNodeAttributesAssert1"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodetextnodename.xml b/test/testcases/tests/level1/core/nodetextnodename.xml
new file mode 100644
index 0000000..0f18aa4
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodetextnodename.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodetextnodename">
+<metadata>
+<title>nodeTextNodeName</title>
+<creator>NIST</creator>
+<description>
+
+ The string returned by the "getNodeName()" method for a
+
+ Text Node is "#text".
+
+
+
+ Retrieve the Text Node from the last child of the
+
+ first employee and check the string returned
+
+ by the "getNodeName()" method. It should be equal to
+
+ "#text".
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="textNode" type="Node"/>
+<var name="textName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<firstChild interface="Node" obj="testAddr" var="textNode"/>
+<nodeName obj="textNode" var="textName"/>
+<assertEquals actual="textName" expected="&quot;#text&quot;" id="nodeTextNodeNameAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodetextnodetype.xml b/test/testcases/tests/level1/core/nodetextnodetype.xml
new file mode 100644
index 0000000..611d4e8
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodetextnodetype.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodetextnodetype">
+<metadata>
+<title>nodeTextNodeType</title>
+<creator>NIST</creator>
+<description>
+
+ The "getNodeType()" method for a Text Node
+
+ returns the constant value 3.
+
+
+
+ Retrieve the Text node from the last child of
+
+ the first employee and invoke the "getNodeType()"
+
+ method. The method should return 3.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="textNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<firstChild interface="Node" obj="testAddr" var="textNode"/>
+<nodeType obj="textNode" var="nodeType"/>
+<assertEquals actual="nodeType" expected="3" id="nodeTextNodeTypeAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodetextnodevalue.xml b/test/testcases/tests/level1/core/nodetextnodevalue.xml
new file mode 100644
index 0000000..36b756f
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodetextnodevalue.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodetextnodevalue">
+<metadata>
+<title>nodeTextNodeValue</title>
+<creator>NIST</creator>
+<description>
+ The string returned by the "getNodeValue()" method for a
+ Text Node is the content of the Text node.
+
+ Retrieve the Text node from the last child of the first
+ employee and check the string returned by the
+ "getNodeValue()" method. It should be equal to
+ "1230 North Ave. Dallas, Texas 98551".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="textNode" type="Node"/>
+<var name="textValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<firstChild interface="Node" obj="testAddr" var="textNode"/>
+<nodeValue obj="textNode" var="textValue"/>
+<assertEquals actual="textValue" expected="&quot;1230 North Ave. Dallas, Texas 98551&quot;" id="nodeTextNodeValueAssert1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodevalue01.xml b/test/testcases/tests/level1/core/nodevalue01.xml
new file mode 100644
index 0000000..a5afffa
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodevalue01.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodevalue01">
+<metadata>
+<title>nodevalue01</title>
+<creator>Curt Arnold</creator>
+<description>
+An element is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2001-10-24</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Element"/>
+<var name="newValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createElement obj="doc" var="newNode" tagName="&quot;address&quot;"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodevalue02.xml b/test/testcases/tests/level1/core/nodevalue02.xml
new file mode 100644
index 0000000..0b3c6f2
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodevalue02.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodevalue02">
+<metadata>
+<title>nodevalue02</title>
+<creator>Curt Arnold</creator>
+<description>
+An comment is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2001-10-24</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createComment obj="doc" var="newNode" data="&quot;This is a new Comment node&quot;"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertEquals actual="newValue" expected='"This is a new Comment node"' ignoreCase="false" id="initial"/>
+<!-- attempt to change the value -->
+<nodeValue obj="newNode" value='"This should have an effect"'/>
+<!-- retrieve the value -->
+<nodeValue obj="newNode" var="newValue"/>
+<assertEquals actual="newValue" expected='"This should have an effect"' id="afterChange" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodevalue03.xml b/test/testcases/tests/level1/core/nodevalue03.xml
new file mode 100644
index 0000000..c3bd383
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodevalue03.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodevalue03">
+<metadata>
+<title>nodevalue03</title>
+<creator>Curt Arnold</creator>
+<description>
+An entity reference is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2001-10-24</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-11C98490"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createEntityReference obj="doc" var="newNode" name='"ent1"'/>
+<assertNotNull actual="newNode" id="createdEntRefNotNull"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodevalue04.xml b/test/testcases/tests/level1/core/nodevalue04.xml
new file mode 100644
index 0000000..a8929bb
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodevalue04.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodevalue04">
+<metadata>
+<title>nodevalue04</title>
+<creator>Curt Arnold</creator>
+<description>
+An document type accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2001-10-24</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A31"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<doctype obj="doc" var="newNode"/>
+<assertNotNull actual="newNode" id="docTypeNotNull"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodevalue05.xml b/test/testcases/tests/level1/core/nodevalue05.xml
new file mode 100644
index 0000000..88f19c3
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodevalue05.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodevalue05">
+<metadata>
+<title>nodevalue05</title>
+<creator>Curt Arnold</creator>
+<description>
+A document fragment is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2001-10-24</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="newNode"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodevalue06.xml b/test/testcases/tests/level1/core/nodevalue06.xml
new file mode 100644
index 0000000..af42ec3
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodevalue06.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodevalue06">
+<metadata>
+<title>nodevalue06</title>
+<creator>Curt Arnold</creator>
+<description>
+An document is accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2001-10-24</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document"/>
+</metadata>
+<var name="newNode" type="Document"/>
+<var name="newValue" type="DOMString"/>
+<load var="newNode" href="staff" willBeModified="true"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodevalue07.xml b/test/testcases/tests/level1/core/nodevalue07.xml
new file mode 100644
index 0000000..f0c808e
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodevalue07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodevalue07">
+<metadata>
+<title>nodevalue07</title>
+<creator>Curt Arnold</creator>
+<description>
+An Entity is accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2001-10-24</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-527DCFF2"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<var name="nodeMap" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities obj="docType" var="nodeMap"/>
+<assertNotNull actual="nodeMap" id="entitiesNotNull"/>
+<getNamedItem obj="nodeMap" name='"ent1"' var="newNode"/>
+<assertNotNull actual="newNode" id="entityNotNull"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodevalue08.xml b/test/testcases/tests/level1/core/nodevalue08.xml
new file mode 100644
index 0000000..f64df09
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodevalue08.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodevalue08">
+<metadata>
+<title>nodevalue08</title>
+<creator>Curt Arnold</creator>
+<description>
+An notation is accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2001-10-24</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5431D1B9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<var name="nodeMap" type="NamedNodeMap"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="nodeMap"/>
+<assertNotNull actual="nodeMap" id="notationsNotNull"/>
+<getNamedItem obj="nodeMap" name='"notation1"' var="newNode"/>
+<assertNotNull actual="newNode" id="notationNotNull"/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="initiallyNull"/>
+<!-- attempt to change the value and make sure that it stays null -->
+<nodeValue obj="newNode" value='"This should have no effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertNull actual="newValue" id="nullAfterAttemptedChange"/>
+</test>
diff --git a/test/testcases/tests/level1/core/nodevalue09.xml b/test/testcases/tests/level1/core/nodevalue09.xml
new file mode 100644
index 0000000..780cbfe
--- /dev/null
+++ b/test/testcases/tests/level1/core/nodevalue09.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="nodevalue09">
+<metadata>
+<title>nodevalue09</title>
+<creator>Curt Arnold</creator>
+<description>
+An processing instruction is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+</description>
+<date qualifier="created">2001-10-24</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1004215813"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newNode" type="Node"/>
+<var name="newValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createProcessingInstruction var="newNode" obj="doc" target='"TARGET"' data='"DATA"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertEquals actual="newValue" expected='"DATA"' ignoreCase="false" id="initial"/>
+<nodeValue obj="newNode" value='"This should have an effect"'/>
+<nodeValue obj="newNode" var="newValue"/>
+<assertEquals actual="newValue" expected='"This should have an effect"' ignoreCase="false" id="after"/>
+</test>
diff --git a/test/testcases/tests/level1/core/notationgetnotationname.xml b/test/testcases/tests/level1/core/notationgetnotationname.xml
new file mode 100644
index 0000000..ded685c
--- /dev/null
+++ b/test/testcases/tests/level1/core/notationgetnotationname.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="notationgetnotationname">
+<metadata>
+<title>notationGetNotationName</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the notation named "notation1" and access its
+ name by invoking the "getNodeName()" method inherited
+ from the Node interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--nodeName attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095"/>
+<!--Notation interface -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5431D1B9"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notationNode" type="Notation"/>
+<var name="notationName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="notations"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItem obj="notations" var="notationNode" name='"notation1"'/>
+<nodeName obj="notationNode" var="notationName"/>
+<assertEquals actual="notationName" expected='"notation1"' id="notationGetNotationNameAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/notationgetpublicid.xml b/test/testcases/tests/level1/core/notationgetpublicid.xml
new file mode 100644
index 0000000..882cc54
--- /dev/null
+++ b/test/testcases/tests/level1/core/notationgetpublicid.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="notationgetpublicid">
+<metadata>
+<title>notationGetPublicId</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the notation named "notation1" and access its
+ public identifier. The string "notation1File" should be
+ returned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-54F2B4D0"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notationNode" type="Notation"/>
+<var name="publicId" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="notations"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItem obj="notations" var="notationNode" name="&quot;notation1&quot;"/>
+<publicId interface="Notation" obj="notationNode" var="publicId"/>
+<assertEquals actual="publicId" expected='"notation1File"' id="publicId" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/notationgetpublicidnull.xml b/test/testcases/tests/level1/core/notationgetpublicidnull.xml
new file mode 100644
index 0000000..39e23ad
--- /dev/null
+++ b/test/testcases/tests/level1/core/notationgetpublicidnull.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="notationgetpublicidnull">
+<metadata>
+<title>notationGetPublicIdNull</title>
+<creator>NIST</creator>
+<description>
+ The "getPublicId()" method of a Notation node contains
+ the public identifier associated with the notation, if
+ one was not specified a null value should be returned.
+
+ Retrieve the notation named "notation2" and access its
+ public identifier. Since a public identifier was not
+ specified for this notation, the "getPublicId()" method
+ should return null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-54F2B4D0"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notationNode" type="Notation"/>
+<var name="publicId" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="notations"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItem obj="notations" var="notationNode" name='"notation2"'/>
+<publicId interface="Notation" obj="notationNode" var="publicId"/>
+<assertNull actual="publicId" id="publicId"/>
+</test>
diff --git a/test/testcases/tests/level1/core/notationgetsystemid.xml b/test/testcases/tests/level1/core/notationgetsystemid.xml
new file mode 100644
index 0000000..04a84ac
--- /dev/null
+++ b/test/testcases/tests/level1/core/notationgetsystemid.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="notationgetsystemid">
+<metadata>
+<title>notationGetSystemId</title>
+<creator>NIST</creator>
+<description>
+ The "getSystemId()" method of a Notation node contains
+ the system identifier associated with the notation, if
+ one was specified.
+
+ Retrieve the notation named "notation2" and access its
+ system identifier. The string "notation2File" should be
+ returned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E8AAB1D0"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notationNode" type="Notation"/>
+<var name="systemId" type="DOMString"/>
+<var name="index" type="int"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="notations"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItem obj="notations" var="notationNode" name='"notation2"'/>
+<systemId interface="Notation" obj="notationNode" var="systemId"/>
+<assertURIEquals actual="systemId" file='"notation2File"' id="uriEquals"/>
+</test>
diff --git a/test/testcases/tests/level1/core/notationgetsystemidnull.xml b/test/testcases/tests/level1/core/notationgetsystemidnull.xml
new file mode 100644
index 0000000..cf15a2f
--- /dev/null
+++ b/test/testcases/tests/level1/core/notationgetsystemidnull.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="notationgetsystemidnull">
+<metadata>
+<title>notationGetSystemIdNull</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the notation named "notation1" and access its
+ system identifier. Since a system identifier was not
+ specified for this notation, the "getSystemId()" method
+ should return null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E8AAB1D0"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notationNode" type="Notation"/>
+<var name="systemId" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations obj="docType" var="notations"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItem obj="notations" var="notationNode" name='"notation1"'/>
+<systemId interface="Notation" obj="notationNode" var="systemId"/>
+<assertNull actual="systemId" id="systemId"/>
+</test>
diff --git a/test/testcases/tests/level1/core/processinginstructiongetdata.xml b/test/testcases/tests/level1/core/processinginstructiongetdata.xml
new file mode 100644
index 0000000..1760419
--- /dev/null
+++ b/test/testcases/tests/level1/core/processinginstructiongetdata.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="processinginstructiongetdata">
+<metadata>
+<title>processinginstructionGetData</title>
+<creator>NIST</creator>
+<description>
+ The "getData()" method returns the content of the
+ processing instruction. It starts at the first non
+ white character following the target and ends at the
+ character immediately preceding the "?&gt;".
+
+ Retrieve the ProcessingInstruction node located
+ immediately after the prolog. Create a nodelist of the
+ child nodes of this document. Invoke the "getData()"
+ method on the first child in the list. This should
+ return the content of the ProcessingInstruction.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-837822393"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="childNodes" type="NodeList"/>
+<var name="piNode" type="ProcessingInstruction"/>
+<var name="data" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<childNodes obj="doc" var="childNodes"/>
+<item interface="NodeList" obj="childNodes" var="piNode" index="0"/>
+<data interface="ProcessingInstruction" obj="piNode" var="data"/>
+<assertEquals actual="data" expected="&quot;PIDATA&quot;" id="processinginstructionGetTargetAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/processinginstructiongettarget.xml b/test/testcases/tests/level1/core/processinginstructiongettarget.xml
new file mode 100644
index 0000000..e02e3d6
--- /dev/null
+++ b/test/testcases/tests/level1/core/processinginstructiongettarget.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="processinginstructiongettarget">
+<metadata>
+<title>processinginstructionGetTarget</title>
+<creator>NIST</creator>
+<description>
+ The "getTarget()" method returns the target of the
+ processing instruction. It is the first token following
+ the markup that begins the processing instruction.
+
+ Retrieve the ProcessingInstruction node located
+ immediately after the prolog. Create a nodelist of the
+ child nodes of this document. Invoke the "getTarget()"
+ method on the first child in the list. This should
+ return the target of the ProcessingInstruction.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1478689192"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="childNodes" type="NodeList"/>
+<var name="piNode" type="ProcessingInstruction"/>
+<var name="target" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<childNodes obj="doc" var="childNodes"/>
+<item interface="NodeList" obj="childNodes" var="piNode" index="0"/>
+<target obj="piNode" var="target" interface="ProcessingInstruction"/>
+<assertEquals actual="target" expected="&quot;TEST-STYLE&quot;" id="processinginstructionGetTargetAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/processinginstructionsetdatanomodificationallowederr.xml b/test/testcases/tests/level1/core/processinginstructionsetdatanomodificationallowederr.xml
new file mode 100644
index 0000000..8d7ed81
--- /dev/null
+++ b/test/testcases/tests/level1/core/processinginstructionsetdatanomodificationallowederr.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="processinginstructionsetdatanomodificationallowederr">
+<metadata>
+<title>processinginstructionSetDataNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "setData(data)" method for a processing instruction causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Try to remove the "domestic" attribute
+ from the entity reference by executing the "setData(data)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-837822393"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-837822393')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-837822393"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="entRef" type="Node"/>
+<var name="piNode" type="ProcessingInstruction"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<firstChild interface="Node" var="entRef" obj="gender"/>
+<assertNotNull actual="entRef" id="entRefNotNull"/>
+<lastChild interface="Node" var="piNode" obj="entRef"/>
+<assertNotNull actual="piNode" id="piNodeNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<data interface="ProcessingInstruction" obj="piNode" value="&quot;newData&quot;"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/processinginstructionsetdatanomodificationallowederrEE.xml b/test/testcases/tests/level1/core/processinginstructionsetdatanomodificationallowederrEE.xml
new file mode 100644
index 0000000..8c99919
--- /dev/null
+++ b/test/testcases/tests/level1/core/processinginstructionsetdatanomodificationallowederrEE.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="processinginstructionsetdatanomodificationallowederrEE">
+<metadata>
+<title>processinginstructionSetDataNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "setData(data)" method for a processing instruction causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Create an ent4 entity reference and add to document of the THIRD "gender" element. The elements
+ content is an entity reference. Try to remove the "domestic" attribute
+ from the entity reference by executing the "setData(data)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-21</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-837822393"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-837822393')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-837822393"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/processinginstructionsetdatanomodificationallowederr.xml"/>
+<!-- bug report on earlier version -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Apr/0053.html"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="entRef" type="Node"/>
+<var name="piNode" type="ProcessingInstruction"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+<appendChild var="appendedChild" obj="gender" newChild="entRef"/>
+<lastChild interface="Node" var="entRef" obj="gender"/>
+<assertNotNull actual="entRef" id="entRefNotNull"/>
+<lastChild interface="Node" var="piNode" obj="entRef"/>
+<assertNotNull actual="piNode" id="piNodeNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<data interface="ProcessingInstruction" obj="piNode" value='"newData"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/textindexsizeerrnegativeoffset.xml b/test/testcases/tests/level1/core/textindexsizeerrnegativeoffset.xml
new file mode 100644
index 0000000..9bf1232
--- /dev/null
+++ b/test/testcases/tests/level1/core/textindexsizeerrnegativeoffset.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="textindexsizeerrnegativeoffset">
+<metadata>
+<title>textIndexSizeErrNegativeOffset</title>
+<creator>NIST</creator>
+<description>
+ The "splitText(offset)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset is
+ negative.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The desired exception should be raised since the offset
+ is a negative number.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-38853C1D')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<implementationAttribute name="signed" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="textNode"/>
+<assertDOMException id="throws_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<splitText obj="textNode" var="splitNode" offset="-69"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/textindexsizeerroffsetoutofbounds.xml b/test/testcases/tests/level1/core/textindexsizeerroffsetoutofbounds.xml
new file mode 100644
index 0000000..35082c3
--- /dev/null
+++ b/test/testcases/tests/level1/core/textindexsizeerroffsetoutofbounds.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001-2003 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="textindexsizeerroffsetoutofbounds">
+<metadata>
+<title>textIndexSizeErrOffsetOutOfBounds</title>
+<creator>NIST</creator>
+<description>
+ The "splitText(offset)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset is
+ greater than the number of characters in the Text node.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The desired exception should be raised since the offset
+ is a greater than the number of characters in the Text
+ node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-38853C1D')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=249"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="textNode"/>
+<assertDOMException id="throw_INDEX_SIZE_ERR">
+<INDEX_SIZE_ERR>
+<splitText obj="textNode" var="splitNode" offset="300"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/textparseintolistofelements.xml b/test/testcases/tests/level1/core/textparseintolistofelements.xml
new file mode 100644
index 0000000..77f5fe5
--- /dev/null
+++ b/test/testcases/tests/level1/core/textparseintolistofelements.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="textparseintolistofelements">
+<metadata>
+<title>textParseIntoListOfElements</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the textual data from the last child of the
+ second employee. That node is composed of two
+ EntityReference nodes and two Text nodes. After
+ the content node is parsed, the "address" Element
+ should contain four children with each one of the
+ EntityReferences containing one child.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<!--childNodes attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-11C98490"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-745549614"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="addressNode" type="Node"/>
+<var name="childList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="length" type="int"/>
+<var name="value" type="DOMString"/>
+<var name="grandChild" type="Node"/>
+<var name="result" type="List"/>
+<var name="expectedNormal" type="List">
+<member>"1900 Dallas Road"</member>
+<member>" Dallas, "</member>
+<member>"Texas"</member>
+<member>"\n 98554"</member>
+</var>
+<var name="expectedExpanded" type="List">
+<member>"1900 Dallas Road Dallas, Texas\n 98554"</member>
+</var>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="addressNode" index="1"/>
+<childNodes obj="addressNode" var="childList"/>
+<length var="length" obj="childList" interface="NodeList"/>
+<for-each collection="childList" member="child">
+ <nodeValue obj="child" var="value"/>
+ <if><isNull obj="value"/>
+ <firstChild interface="Node" obj="child" var="grandChild"/>
+ <assertNotNull actual="grandChild" id="grandChildNotNull"/>
+ <nodeValue obj="grandChild" var="value"/>
+ <append collection="result" item="value"/>
+ <else>
+ <append collection="result" item="value"/>
+ </else>
+ </if>
+</for-each>
+<if><equals actual="length" expected="4" ignoreCase="false"/>
+ <assertEquals actual="result" expected="expectedNormal" ignoreCase="false" id="assertEqNormal"/>
+ <else>
+ <assertEquals actual="result" expected="expectedExpanded" ignoreCase="false" id="assertEqCoalescing"/>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/core/textsplittextfour.xml b/test/testcases/tests/level1/core/textsplittextfour.xml
new file mode 100644
index 0000000..c744ae3
--- /dev/null
+++ b/test/testcases/tests/level1/core/textsplittextfour.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="textsplittextfour">
+<metadata>
+<title>textSplitTextFour</title>
+<creator>NIST</creator>
+<description>
+ The "splitText(offset)" method returns the new Text node.
+
+ Retrieve the textual data from the last child of the
+ first employee and invoke the "splitText(offset)" method.
+ The method should return the new Text node. The offset
+ value used for this test is 30. The "getNodeValue()"
+ method is called to check that the new node now contains
+ the characters at and after position 30.
+ (Starting count at 0)
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="addressNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="addressNode" index="0"/>
+<firstChild interface="Node" obj="addressNode" var="textNode"/>
+<splitText obj="textNode" var="splitNode" offset="30"/>
+<nodeValue obj="splitNode" var="value"/>
+<assertEquals actual="value" expected="&quot;98551&quot;" id="textSplitTextFourAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/textsplittextnomodificationallowederr.xml b/test/testcases/tests/level1/core/textsplittextnomodificationallowederr.xml
new file mode 100644
index 0000000..f61255a
--- /dev/null
+++ b/test/testcases/tests/level1/core/textsplittextnomodificationallowederr.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="textsplittextnomodificationallowederr">
+<metadata>
+<title>textSplitTextNoModificationAllowedErr</title>
+<creator>NIST</creator>
+<description>
+ The "splitText(offset)" method raises a
+ NO_MODIFICATION_ALLOWED_ERR DOMException if the
+ node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the element content of the FIRST
+ Text Node of the entity reference and execute the "splitText(offset)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-38853C1D')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="entRef" type="Node"/>
+<var name="entElement" type="Node"/>
+<var name="entElementText" type="Node"/>
+<var name="splitNode" type="Text"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname='"gender"'/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<firstChild interface="Node" var="entRef" obj="gender"/>
+<assertNotNull actual="entRef" id="entRefNotNull"/>
+<nodeType var="nodeType" obj="entRef"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+ <assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+</if>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<assertNotNull actual="entElement" id="entElementNotNull"/>
+<firstChild interface="Node" var="entElementText" obj="entElement"/>
+<assertNotNull actual="entElementText" id="entElementTextNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<splitText var="splitNode" obj="entElementText" offset="2"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/textsplittextnomodificationallowederrEE.xml b/test/testcases/tests/level1/core/textsplittextnomodificationallowederrEE.xml
new file mode 100644
index 0000000..4fbde86
--- /dev/null
+++ b/test/testcases/tests/level1/core/textsplittextnomodificationallowederrEE.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="textsplittextnomodificationallowederrEE">
+<metadata>
+<title>textSplitTextNoModificationAllowedErrEE</title>
+<creator>Curt Arnold</creator>
+<description>
+ Create an ent3 reference and execute the "splitText(offset)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<date qualifier="created">2001-08-21</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-38853C1D')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+<source resource="http://www.w3.org/2001/DOM-Test-Suite/level1/core/textsplittextnomodificationallowederr.xml"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="Node"/>
+<var name="entText" type="Node"/>
+<var name="splitNode" type="Text"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createEntityReference var="entRef" obj="doc" name='"ent3"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<firstChild interface="Node" var="entText" obj="entRef"/>
+<assertNotNull actual="entText" id="entTextNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<splitText var="splitNode" obj="entText" offset="2"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level1/core/textsplittextone.xml b/test/testcases/tests/level1/core/textsplittextone.xml
new file mode 100644
index 0000000..7529614
--- /dev/null
+++ b/test/testcases/tests/level1/core/textsplittextone.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="textsplittextone">
+<metadata>
+<title>textSplitTextOne</title>
+<creator>NIST</creator>
+<description>
+ The "splitText(offset)" method breaks the Text node into
+ two Text nodes at the specified offset keeping each node
+ as siblings in the tree.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The method splits the Text node into two new sibling
+ Text nodes keeping both of them in the tree. This test
+ checks the "nextSibling()" method of the original node
+ to ensure that the two nodes are indeed siblings.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<var name="secondPart" type="Node"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="textNode"/>
+<splitText obj="textNode" var="splitNode" offset="7"/>
+<nextSibling interface="Node" obj="textNode" var="secondPart"/>
+<nodeValue obj="secondPart" var="value"/>
+<assertEquals actual="value" expected="&quot;Jones&quot;" id="textSplitTextOneAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/textsplittextthree.xml b/test/testcases/tests/level1/core/textsplittextthree.xml
new file mode 100644
index 0000000..7bbaf48
--- /dev/null
+++ b/test/testcases/tests/level1/core/textsplittextthree.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="textsplittextthree">
+<metadata>
+<title>textSplitTextThree</title>
+<creator>NIST</creator>
+<description>
+ After the "splitText(offset)" method breaks the Text node
+ into two Text nodes, the new Text node contains all the
+ content at and after the offset point.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The new Text node should contain all the content
+ at and after the offset point. The "getNodeValue()"
+ method is called to check that the new node now contains
+ the characters at and after position seven.
+ (Starting count at 0)
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="textNode"/>
+<splitText obj="textNode" var="splitNode" offset="6"/>
+<nodeValue obj="splitNode" var="value"/>
+<assertEquals actual="value" expected="&quot; Jones&quot;" id="textSplitTextThreeAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/textsplittexttwo.xml b/test/testcases/tests/level1/core/textsplittexttwo.xml
new file mode 100644
index 0000000..0421815
--- /dev/null
+++ b/test/testcases/tests/level1/core/textsplittexttwo.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="textsplittexttwo">
+<metadata>
+<title>textSplitTextTwo</title>
+<creator>NIST</creator>
+<description>
+ After the "splitText(offset)" method breaks the Text node
+ into two Text nodes, the original node contains all the
+ content up to the offset point.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The original Text node should contain all the content
+ up to the offset point. The "getNodeValue()" method
+ is called to check that the original node now contains
+ the first five characters.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="splitNode" type="Text"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="textNode"/>
+<splitText obj="textNode" var="splitNode" offset="5"/>
+<nodeValue obj="textNode" var="value"/>
+<assertEquals actual="value" expected="&quot;Roger&quot;" id="textSplitTextTwoAssert" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/core/textwithnomarkup.xml b/test/testcases/tests/level1/core/textwithnomarkup.xml
new file mode 100644
index 0000000..8b90b54
--- /dev/null
+++ b/test/testcases/tests/level1/core/textwithnomarkup.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="textwithnomarkup">
+<metadata>
+<title>textWithNoMarkup</title>
+<creator>NIST</creator>
+<description>
+ If there is not any markup inside an Element or Attr node
+ content, then the text is contained in a single object
+ implementing the Text interface that is the only child
+ of the element.
+
+ Retrieve the textual data from the second child of the
+ third employee. That Text node contains a block of
+ multiple text lines without markup, so they should be
+ treated as a single Text node. The "getNodeValue()"
+ method should contain the combination of the two lines.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1312295772"/>
+<!--nodeValue attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="nameNode" type="Node"/>
+<var name="nodeV" type="Node"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;name&quot;"/>
+<item interface="NodeList" obj="elementList" var="nameNode" index="2"/>
+<firstChild interface="Node" obj="nameNode" var="nodeV"/>
+<nodeValue obj="nodeV" var="value"/>
+<assertEquals actual="value" expected="&quot;Roger\n Jones&quot;" id="textNodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/.cvsignore b/test/testcases/tests/level1/html/.cvsignore
new file mode 100644
index 0000000..46fbb92
--- /dev/null
+++ b/test/testcases/tests/level1/html/.cvsignore
@@ -0,0 +1,2 @@
+dom1.dtd
+dom1.xsd
diff --git a/test/testcases/tests/level1/html/CVS/Entries b/test/testcases/tests/level1/html/CVS/Entries
new file mode 100644
index 0000000..2365a0f
--- /dev/null
+++ b/test/testcases/tests/level1/html/CVS/Entries
@@ -0,0 +1,642 @@
+D/files////
+/.cvsignore/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLAnchorElement01.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLAnchorElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLAnchorElement03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLAnchorElement04.xml/1.2/Fri Apr 3 02:48:01 2009//
+/HTMLAnchorElement05.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLAnchorElement06.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLAnchorElement07.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLAnchorElement08.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLAnchorElement09.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLAnchorElement10.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLAnchorElement11.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLAnchorElement12.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLAnchorElement13.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLAnchorElement14.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLAppletElement01.xml/1.5/Fri Apr 3 02:48:03 2009//
+/HTMLAppletElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLAppletElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLAppletElement04.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLAppletElement05.xml/1.6/Fri Apr 3 02:48:01 2009//
+/HTMLAppletElement06.xml/1.4/Fri Apr 3 02:48:03 2009//
+/HTMLAppletElement07.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLAppletElement08.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLAppletElement09.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLAppletElement10.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLAppletElement11.xml/1.2/Fri Apr 3 02:48:02 2009//
+/HTMLAreaElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLAreaElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLAreaElement03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLAreaElement04.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLAreaElement05.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLAreaElement06.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLAreaElement07.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLAreaElement08.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLBRElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLBaseElement01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLBaseElement02.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLBaseFontElement01.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLBaseFontElement02.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLBaseFontElement03.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLBodyElement01.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLBodyElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLBodyElement03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLBodyElement04.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLBodyElement05.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLBodyElement06.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLButtonElement01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLButtonElement02.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLButtonElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLButtonElement04.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLButtonElement05.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLButtonElement06.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLButtonElement07.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLButtonElement08.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLCollection01.xml/1.2/Fri Apr 3 02:48:02 2009//
+/HTMLCollection02.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLCollection03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLCollection04.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLCollection05.xml/1.2/Fri Apr 3 02:48:01 2009//
+/HTMLCollection06.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLCollection07.xml/1.2/Fri Apr 3 02:48:02 2009//
+/HTMLCollection08.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLCollection09.xml/1.2/Fri Apr 3 02:48:01 2009//
+/HTMLCollection10.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLCollection11.xml/1.4/Fri Apr 3 02:48:03 2009//
+/HTMLCollection12.xml/1.2/Fri Apr 3 02:48:02 2009//
+/HTMLDirectoryElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLDivElement01.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLDlistElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLDocument01.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLDocument02.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLDocument03.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLDocument04.xml/1.2/Fri Apr 3 02:48:03 2009//
+/HTMLDocument05.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLDocument07.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLDocument08.xml/1.2/Fri Apr 3 02:48:03 2009//
+/HTMLDocument09.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLDocument10.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLDocument11.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLDocument12.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLDocument13.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLDocument14.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLDocument15.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLDocument16.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLDocument17.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLDocument18.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLDocument19.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLDocument20.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLDocument21.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement05.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement06.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement07.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement08.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement09.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLElement10.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement100.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement101.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement102.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLElement103.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement104.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement105.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement106.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement107.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement108.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement109.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement11.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement110.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement111.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement112.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement113.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement114.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement115.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement116.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement117.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement118.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement119.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement12.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLElement120.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement121.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement122.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement123.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement124.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement125.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement126.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement127.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement128.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement129.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement13.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement130.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement131.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement132.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement133.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement134.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement135.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement136.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement137.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement138.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLElement139.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement14.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement140.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement141.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement142.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement143.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement144.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement145.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement15.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement16.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement17.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement18.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement19.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement20.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement21.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLElement22.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement23.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement24.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement25.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement26.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement27.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement28.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement29.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement30.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement31.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement32.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement33.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement34.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement35.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement36.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement37.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement38.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement39.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement40.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement41.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement42.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLElement43.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement44.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement45.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement46.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement47.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement48.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement49.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement50.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement51.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement52.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement53.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement54.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement55.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLElement56.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement57.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement58.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement59.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement60.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement61.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement62.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement63.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement64.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement65.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement66.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement67.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLElement68.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement69.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement70.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement71.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement72.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement73.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement74.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement75.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement76.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement77.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement78.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement79.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement80.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement81.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement82.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement83.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement84.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement85.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement86.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement87.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement88.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement89.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement90.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLElement91.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement92.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement93.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement94.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLElement95.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement96.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLElement97.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement98.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLElement99.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLFieldSetElement01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLFieldSetElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLFontElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLFontElement02.xml/1.5/Fri Apr 3 02:48:02 2009//
+/HTMLFontElement03.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLFormElement01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLFormElement02.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLFormElement03.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLFormElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLFormElement05.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLFormElement06.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLFormElement07.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLFormElement08.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLFormElement09.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLFormElement10.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLFrameElement01.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLFrameElement02.xml/1.2/Fri Apr 3 02:48:02 2009//
+/HTMLFrameElement03.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLFrameElement04.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLFrameElement05.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLFrameElement06.xml/1.2/Fri Apr 3 02:48:03 2009//
+/HTMLFrameElement07.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLFrameElement08.xml/1.2/Fri Apr 3 02:48:01 2009//
+/HTMLFrameSetElement01.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLFrameSetElement02.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLHRElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLHRElement02.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLHRElement03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLHRElement04.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLHeadElement01.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLHeadingElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLHeadingElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLHeadingElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLHeadingElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLHeadingElement05.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLHeadingElement06.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLHtmlElement01.xml/1.5/Fri Apr 3 02:48:02 2009//
+/HTMLIFrameElement01.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLIFrameElement02.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLIFrameElement03.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLIFrameElement04.xml/1.2/Fri Apr 3 02:48:01 2009//
+/HTMLIFrameElement05.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLIFrameElement06.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLIFrameElement07.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLIFrameElement08.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLIFrameElement09.xml/1.2/Fri Apr 3 02:48:02 2009//
+/HTMLIFrameElement10.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLImageElement01.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLImageElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLImageElement03.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLImageElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLImageElement05.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLImageElement06.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLImageElement07.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLImageElement08.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLImageElement09.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLImageElement10.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLImageElement11.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLImageElement12.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLImageElement14.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLInputElement01.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLInputElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLInputElement03.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLInputElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLInputElement05.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLInputElement06.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLInputElement07.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLInputElement08.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLInputElement09.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLInputElement10.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLInputElement11.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLInputElement12.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLInputElement13.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLInputElement14.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLInputElement15.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLInputElement16.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLInputElement17.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLInputElement18.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLInputElement19.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLInputElement20.xml/1.2/Fri Apr 3 02:48:03 2009//
+/HTMLInputElement21.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLInputElement22.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLIsIndexElement01.xml/1.6/Fri Apr 3 02:48:02 2009//
+/HTMLIsIndexElement02.xml/1.5/Fri Apr 3 02:48:01 2009//
+/HTMLIsIndexElement03.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLLIElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLLIElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLLabelElement01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLLabelElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLLabelElement03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLLabelElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLLegendElement01.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLLegendElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLLegendElement03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLLegendElement04.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLLinkElement01.xml/1.4/Fri Apr 3 02:48:03 2009//
+/HTMLLinkElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLLinkElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLLinkElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLLinkElement05.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLLinkElement06.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLLinkElement07.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLLinkElement08.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLLinkElement09.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLMapElement01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLMapElement02.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLMenuElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLMetaElement01.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLMetaElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLMetaElement03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLMetaElement04.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLModElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLModElement02.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLModElement03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLModElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLOListElement01.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLOListElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLOListElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLObjectElement01.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLObjectElement02.xml/1.4/Fri Apr 3 02:48:03 2009//
+/HTMLObjectElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLObjectElement04.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLObjectElement05.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLObjectElement06.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLObjectElement07.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLObjectElement08.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLObjectElement09.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLObjectElement10.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLObjectElement11.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLObjectElement12.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLObjectElement13.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLObjectElement14.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLObjectElement15.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLObjectElement16.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLObjectElement17.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLObjectElement18.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLObjectElement19.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLOptGroupElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLOptGroupElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLOptionElement01.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLOptionElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLOptionElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLOptionElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLOptionElement05.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLOptionElement06.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLOptionElement07.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLOptionElement08.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLOptionElement09.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLParagraphElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLParamElement01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLParamElement02.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLParamElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLParamElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLPreElement01.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLQuoteElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLQuoteElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLScriptElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLScriptElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLScriptElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLScriptElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLScriptElement05.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLScriptElement06.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLScriptElement07.xml/1.2/Fri Apr 3 02:48:01 2009//
+/HTMLSelectElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLSelectElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLSelectElement03.xml/1.5/Fri Apr 3 02:48:01 2009//
+/HTMLSelectElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLSelectElement05.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLSelectElement06.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLSelectElement07.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLSelectElement08.xml/1.6/Fri Apr 3 02:48:03 2009//
+/HTMLSelectElement09.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLSelectElement10.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLSelectElement11.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLSelectElement12.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLSelectElement13.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLSelectElement14.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLSelectElement15.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLSelectElement16.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLSelectElement17.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLSelectElement18.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLSelectElement19.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLStyleElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLStyleElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLStyleElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCaptionElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement01.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableCellElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableCellElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement05.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement06.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLTableCellElement07.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement08.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableCellElement09.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLTableCellElement10.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement11.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement12.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableCellElement13.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement14.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement15.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableCellElement16.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLTableCellElement17.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableCellElement18.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableCellElement19.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement20.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement21.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLTableCellElement22.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement23.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement24.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement25.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLTableCellElement26.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement27.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableCellElement28.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableCellElement29.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableCellElement30.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableColElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableColElement02.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLTableColElement03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableColElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableColElement05.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableColElement06.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableColElement07.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableColElement08.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableColElement09.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableColElement10.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableColElement11.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableColElement12.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableElement03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement04.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLTableElement05.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableElement06.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLTableElement07.xml/1.5/Fri Apr 3 02:48:03 2009//
+/HTMLTableElement08.xml/1.5/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement09.xml/1.5/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement10.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableElement11.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement12.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement13.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement14.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement15.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement16.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement17.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement18.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableElement19.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLTableElement20.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLTableElement21.xml/1.2/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement22.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLTableElement23.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLTableElement24.xml/1.2/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement25.xml/1.2/Fri Apr 3 02:48:02 2009//
+/HTMLTableElement26.xml/1.2/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement27.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement28.xml/1.2/Fri Apr 3 02:48:03 2009//
+/HTMLTableElement29.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement30.xml/1.2/Fri Apr 3 02:48:01 2009//
+/HTMLTableElement31.xml/1.7/Fri Apr 3 02:48:02 2009//
+/HTMLTableElement32.xml/1.2/Fri Apr 3 02:48:03 2009//
+/HTMLTableElement33.xml/1.2/Fri Apr 3 02:48:02 2009//
+/HTMLTableRowElement01.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableRowElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableRowElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableRowElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableRowElement05.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableRowElement06.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableRowElement07.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLTableRowElement08.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableRowElement09.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableRowElement10.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableRowElement11.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableRowElement12.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLTableRowElement13.xml/1.4/Fri Apr 3 02:48:03 2009//
+/HTMLTableRowElement14.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLTableSectionElement01.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement02.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableSectionElement03.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLTableSectionElement04.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement05.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement06.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement07.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement08.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement09.xml/1.4/Fri Apr 3 02:48:02 2009//
+/HTMLTableSectionElement10.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableSectionElement11.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTableSectionElement12.xml/1.4/Fri Apr 3 02:48:03 2009//
+/HTMLTableSectionElement13.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement14.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLTableSectionElement15.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement16.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement17.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement18.xml/1.2/Fri Apr 3 02:48:03 2009//
+/HTMLTableSectionElement19.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement20.xml/1.1/Fri Apr 3 02:48:02 2009//
+/HTMLTableSectionElement21.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement22.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLTableSectionElement23.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLTableSectionElement24.xml/1.2/Fri Apr 3 02:48:02 2009//
+/HTMLTextAreaElement01.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLTextAreaElement02.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLTextAreaElement03.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTextAreaElement04.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTextAreaElement05.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTextAreaElement06.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTextAreaElement07.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTextAreaElement08.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLTextAreaElement09.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTextAreaElement10.xml/1.3/Fri Apr 3 02:48:03 2009//
+/HTMLTextAreaElement11.xml/1.4/Fri Apr 3 02:48:01 2009//
+/HTMLTextAreaElement12.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLTextAreaElement13.xml/1.1/Fri Apr 3 02:48:03 2009//
+/HTMLTextAreaElement14.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLTextAreaElement15.xml/1.1/Fri Apr 3 02:48:01 2009//
+/HTMLTitleElement01.xml/1.3/Fri Apr 3 02:48:01 2009//
+/HTMLUListElement01.xml/1.3/Fri Apr 3 02:48:02 2009//
+/HTMLUListElement02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/alltests.xml/1.10/Fri Apr 3 02:48:01 2009//
+/anchor01.xml/1.1/Fri Apr 3 02:48:01 2009//
+/anchor02.xml/1.1/Fri Apr 3 02:48:02 2009//
+/anchor03.xml/1.1/Fri Apr 3 02:48:02 2009//
+/anchor04.xml/1.1/Fri Apr 3 02:48:02 2009//
+/anchor05.xml/1.1/Fri Apr 3 02:48:01 2009//
+/anchor06.xml/1.1/Fri Apr 3 02:48:03 2009//
+/area01.xml/1.1/Fri Apr 3 02:48:02 2009//
+/area02.xml/1.1/Fri Apr 3 02:48:02 2009//
+/area03.xml/1.1/Fri Apr 3 02:48:02 2009//
+/area04.xml/1.1/Fri Apr 3 02:48:01 2009//
+/basefont01.xml/1.1/Fri Apr 3 02:48:02 2009//
+/body01.xml/1.1/Fri Apr 3 02:48:01 2009//
+/button01.xml/1.1/Fri Apr 3 02:48:01 2009//
+/button02.xml/1.1/Fri Apr 3 02:48:01 2009//
+/button03.xml/1.1/Fri Apr 3 02:48:02 2009//
+/button04.xml/1.1/Fri Apr 3 02:48:03 2009//
+/button05.xml/1.1/Fri Apr 3 02:48:01 2009//
+/button06.xml/1.1/Fri Apr 3 02:48:01 2009//
+/button07.xml/1.1/Fri Apr 3 02:48:02 2009//
+/button08.xml/1.1/Fri Apr 3 02:48:02 2009//
+/button09.xml/1.1/Fri Apr 3 02:48:02 2009//
+/dlist01.xml/1.1/Fri Apr 3 02:48:01 2009//
+/doc01.xml/1.1/Fri Apr 3 02:48:01 2009//
+/hasFeature01.xml/1.1/Fri Apr 3 02:48:03 2009//
+/index.htm/1.1/Fri Apr 3 02:48:01 2009//
+/metadata.xml/1.1/Fri Apr 3 02:48:01 2009//
+/object01.xml/1.2/Fri Apr 3 02:48:02 2009//
+/object02.xml/1.2/Fri Apr 3 02:48:02 2009//
+/object03.xml/1.2/Fri Apr 3 02:48:02 2009//
+/object04.xml/1.2/Fri Apr 3 02:48:01 2009//
+/object05.xml/1.2/Fri Apr 3 02:48:01 2009//
+/object06.xml/1.2/Fri Apr 3 02:48:02 2009//
+/object07.xml/1.2/Fri Apr 3 02:48:02 2009//
+/object08.xml/1.4/Fri Apr 3 02:48:02 2009//
+/object09.xml/1.2/Fri Apr 3 02:48:02 2009//
+/object10.xml/1.2/Fri Apr 3 02:48:02 2009//
+/object11.xml/1.2/Fri Apr 3 02:48:02 2009//
+/object12.xml/1.2/Fri Apr 3 02:48:03 2009//
+/object13.xml/1.4/Fri Apr 3 02:48:02 2009//
+/object14.xml/1.2/Fri Apr 3 02:48:01 2009//
+/object15.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table01.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table02.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table03.xml/1.2/Fri Apr 3 02:48:03 2009//
+/table04.xml/1.2/Fri Apr 3 02:48:03 2009//
+/table06.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table07.xml/1.2/Fri Apr 3 02:48:03 2009//
+/table08.xml/1.2/Fri Apr 3 02:48:03 2009//
+/table09.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table10.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table12.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table15.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table17.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table18.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table19.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table20.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table21.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table22.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table23.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table24.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table25.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table26.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table27.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table28.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table29.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table30.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table31.xml/1.2/Fri Apr 3 02:48:03 2009//
+/table32.xml/1.2/Fri Apr 3 02:48:03 2009//
+/table33.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table34.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table35.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table36.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table37.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table38.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table39.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table40.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table41.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table42.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table43.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table44.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table45.xml/1.2/Fri Apr 3 02:48:03 2009//
+/table46.xml/1.2/Fri Apr 3 02:48:03 2009//
+/table47.xml/1.2/Fri Apr 3 02:48:03 2009//
+/table48.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table49.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table50.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table51.xml/1.2/Fri Apr 3 02:48:01 2009//
+/table52.xml/1.2/Fri Apr 3 02:48:02 2009//
+/table53.xml/1.2/Fri Apr 3 02:48:01 2009//
diff --git a/test/testcases/tests/level1/html/CVS/Repository b/test/testcases/tests/level1/html/CVS/Repository
new file mode 100644
index 0000000..87e193a
--- /dev/null
+++ b/test/testcases/tests/level1/html/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level1/html
diff --git a/test/testcases/tests/level1/html/CVS/Root b/test/testcases/tests/level1/html/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level1/html/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level1/html/CVS/Template b/test/testcases/tests/level1/html/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level1/html/CVS/Template
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement01.xml b/test/testcases/tests/level1/html/HTMLAnchorElement01.xml
new file mode 100644
index 0000000..a076a18
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement01">
+<metadata>
+<title>HTMLAnchorElement01</title>
+<creator>NIST</creator>
+<description>
+ The accessKey attribute is a single character access key to give
+ access to the form control.
+
+ Retrieve the accessKey attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89647724"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="vaccesskey" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<accessKey interface="HTMLAnchorElement" obj="testNode" var="vaccesskey"/>
+<assertEquals actual="vaccesskey" expected='"g"' id="accessKeyLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement02.xml b/test/testcases/tests/level1/html/HTMLAnchorElement02.xml
new file mode 100644
index 0000000..247a8cb
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement02">
+<metadata>
+<title>HTMLAnchorElement02</title>
+<creator>NIST</creator>
+<description>
+ The charset attribute indicates the character encoding of the linked
+ resource.
+
+ Retrieve the charset attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67619266"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="vcharset" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<charset interface="HTMLAnchorElement" obj="testNode" var="vcharset"/>
+<assertEquals actual="vcharset" expected='"US-ASCII"' id="charsetLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement03.xml b/test/testcases/tests/level1/html/HTMLAnchorElement03.xml
new file mode 100644
index 0000000..07a421c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement03">
+<metadata>
+<title>HTMLAnchorElement03</title>
+<creator>NIST</creator>
+<description>
+ The coords attribute is a comma-seperated list of lengths, defining
+ an active region geometry.
+
+ Retrieve the coords attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92079539"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="vcoords" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<coords interface="HTMLAnchorElement" obj="testNode" var="vcoords"/>
+<assertEquals actual="vcoords" expected='"0,0,100,100"' id="coordsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement04.xml b/test/testcases/tests/level1/html/HTMLAnchorElement04.xml
new file mode 100644
index 0000000..7b961c4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement04.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement04">
+ <metadata>
+ <title>HTMLAnchorElement04</title>
+ <creator>NIST</creator>
+ <description>
+ The href attribute contains the URL of the linked resource.
+
+ Retrieve the href attribute and examine its value.
+</description>
+ <contributor>Mary Brady</contributor>
+ <date qualifier="created">2002-02-22</date>
+ <subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88517319"/>
+ </metadata>
+ <var name="nodeList" type="NodeList" />
+ <var name="testNode" type="HTMLAnchorElement" />
+ <var name="vhref" type="DOMString" />
+ <var name="doc" type="Document" />
+ <load var="doc" href="anchor" willBeModified="false" />
+ <getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"' />
+ <assertSize collection="nodeList" size="1" id="Asize" />
+ <item interface="NodeList" obj="nodeList" var="testNode" index="0" />
+ <href interface="HTMLAnchorElement" obj="testNode" var="vhref" />
+ <assertURIEquals actual="vhref" file='"submit.gif"' id="hrefLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement05.xml b/test/testcases/tests/level1/html/HTMLAnchorElement05.xml
new file mode 100644
index 0000000..0329515
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement05.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement05">
+<metadata>
+<title>HTMLAnchorElement05</title>
+<creator>NIST</creator>
+<description>
+ The hreflang attribute contains the language code of the linked resource.
+
+ Retrieve the hreflang attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87358513"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="vhreflink" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<hreflang interface="HTMLAnchorElement" obj="testNode" var="vhreflink"/>
+<assertEquals actual="vhreflink" expected='"en"' id="hreflangLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement06.xml b/test/testcases/tests/level1/html/HTMLAnchorElement06.xml
new file mode 100644
index 0000000..ad768fa
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement06.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement06">
+<metadata>
+<title>HTMLAnchorElement06</title>
+<creator>NIST</creator>
+<description>
+ The name attribute contains the anchor name.
+
+ Retrieve the name attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32783304"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLAnchorElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"Anchor"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement07.xml b/test/testcases/tests/level1/html/HTMLAnchorElement07.xml
new file mode 100644
index 0000000..a70cc36
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement07.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement07">
+<metadata>
+<title>HTMLAnchorElement07</title>
+<creator>NIST</creator>
+<description>
+ The rel attribute contains the forward link type.
+
+ Retrieve the rel attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-3815891"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="vrel" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rel interface="HTMLAnchorElement" obj="testNode" var="vrel"/>
+<assertEquals actual="vrel" expected='"GLOSSARY"' id="relLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement08.xml b/test/testcases/tests/level1/html/HTMLAnchorElement08.xml
new file mode 100644
index 0000000..bb76341
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement08.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement08">
+<metadata>
+<title>HTMLAnchorElement08</title>
+<creator>NIST</creator>
+<description>
+ The rev attribute contains the reverse link type
+
+ Retrieve the rev attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58259771"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="vrev" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rev interface="HTMLAnchorElement" obj="testNode" var="vrev"/>
+<assertEquals actual="vrev" expected='"STYLESHEET"' id="revLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement09.xml b/test/testcases/tests/level1/html/HTMLAnchorElement09.xml
new file mode 100644
index 0000000..7da6d18
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement09.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement09">
+<metadata>
+<title>HTMLAnchorElement09</title>
+<creator>NIST</creator>
+<description>
+ The shape attribute contains the shape of the active area.
+
+ Retrieve the shape attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-49899808"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="vshape" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<shape interface="HTMLAnchorElement" obj="testNode" var="vshape"/>
+<assertEquals actual="vshape" expected='"rect"' id="shapeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement10.xml b/test/testcases/tests/level1/html/HTMLAnchorElement10.xml
new file mode 100644
index 0000000..201c113
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement10.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement10">
+<metadata>
+<title>HTMLAnchorElement10</title>
+<creator>NIST</creator>
+<description>
+ The tabIndex attribute contains an index that represents the elements
+ position in the tabbing order.
+
+ Retrieve the tabIndex attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-41586466"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="vtabindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tabIndex interface="HTMLAnchorElement" obj="testNode" var="vtabindex"/>
+<assertEquals actual="vtabindex" expected="22" id="tabIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement11.xml b/test/testcases/tests/level1/html/HTMLAnchorElement11.xml
new file mode 100644
index 0000000..00c2bb9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement11.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement11">
+<metadata>
+<title>HTMLAnchorElement11</title>
+<creator>NIST</creator>
+<description>
+ The target attribute specifies the frame to render the source in.
+
+ Retrieve the target attribute and examine it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6414197"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtarget" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor2" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<target interface="HTMLAnchorElement" obj="testNode" var="vtarget"/>
+<assertEquals actual="vtarget" expected='"dynamic"' id="targetLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement12.xml b/test/testcases/tests/level1/html/HTMLAnchorElement12.xml
new file mode 100644
index 0000000..3b22328
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement12.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement12">
+<metadata>
+<title>HTMLAnchorElement12</title>
+<creator>NIST</creator>
+<description>
+ The type attribute contains the advisory content model.
+
+ Retrieve the type attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63938221"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLAnchorElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"image/gif"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement13.xml b/test/testcases/tests/level1/html/HTMLAnchorElement13.xml
new file mode 100644
index 0000000..555985d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement13.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement13">
+<metadata>
+<title>HTMLAnchorElement13</title>
+<creator>Curt Arnold</creator>
+<description>
+HTMLAnchorElement.blur should surrender input focus.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-65068939"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<blur interface="HTMLAnchorElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAnchorElement14.xml b/test/testcases/tests/level1/html/HTMLAnchorElement14.xml
new file mode 100644
index 0000000..7d3d0c6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAnchorElement14.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAnchorElement14">
+<metadata>
+<title>HTMLAnchorElement14</title>
+<creator>Curt Arnold</creator>
+<description>
+HTMLAnchorElement.focus should capture input focus.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47150313"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="HTMLAnchorElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<focus interface="HTMLAnchorElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAppletElement01.xml b/test/testcases/tests/level1/html/HTMLAppletElement01.xml
new file mode 100644
index 0000000..7be4ac6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAppletElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAppletElement01">
+<metadata>
+<title>HTMLAppletElement01</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the alignment of the object(Vertically
+ or Horizontally) with respect to its surrounding text.
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8049912"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"applet"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLAppletElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"bottom"' id="alignLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAppletElement02.xml b/test/testcases/tests/level1/html/HTMLAppletElement02.xml
new file mode 100644
index 0000000..2042f0a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAppletElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAppletElement02">
+<metadata>
+<title>HTMLAppletElement02</title>
+<creator>NIST</creator>
+<description>
+ The alt attribute specifies the alternate text for user agents not
+ rendering the normal context of this element.
+
+ Retrieve the alt attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58610064"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valt" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"applet"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<alt interface="HTMLAppletElement" obj="testNode" var="valt"/>
+<assertEquals actual="valt" expected='"Applet Number 1"' id="altLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAppletElement03.xml b/test/testcases/tests/level1/html/HTMLAppletElement03.xml
new file mode 100644
index 0000000..a68e3e0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAppletElement03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAppletElement03">
+<metadata>
+<title>HTMLAppletElement03</title>
+<creator>NIST</creator>
+<description>
+ The archive attribute specifies a comma-seperated archive list.
+
+ Retrieve the archive attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14476360"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="varchive" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"applet"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<archive interface="HTMLAppletElement" obj="testNode" var="varchive"/>
+<assertEquals actual="varchive" expected='""' id="archiveLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAppletElement04.xml b/test/testcases/tests/level1/html/HTMLAppletElement04.xml
new file mode 100644
index 0000000..23e8bb6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAppletElement04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAppletElement04">
+<metadata>
+<title>HTMLAppletElement04</title>
+<creator>NIST</creator>
+<description>
+ The code attribute specifies the applet class file.
+
+ Retrieve the code attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-61509645"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcode" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"applet"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<code interface="HTMLAppletElement" obj="testNode" var="vcode"/>
+<assertEquals actual="vcode" expected='"org/w3c/domts/DOMTSApplet.class"' id="codeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAppletElement05.xml b/test/testcases/tests/level1/html/HTMLAppletElement05.xml
new file mode 100644
index 0000000..81076d1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAppletElement05.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAppletElement05">
+<metadata>
+<title>HTMLAppletElement05</title>
+<creator>NIST</creator>
+<description>
+ The codeBase attribute specifies an optional base URI for the applet.
+
+ Retrieve the codeBase attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6581160"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcodebase" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"applet"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<codeBase interface="HTMLAppletElement" obj="testNode" var="vcodebase"/>
+<assertEquals actual="vcodebase" expected='"applets"' id="codebase" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAppletElement06.xml b/test/testcases/tests/level1/html/HTMLAppletElement06.xml
new file mode 100644
index 0000000..1d280da
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAppletElement06.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAppletElement06">
+<metadata>
+<title>HTMLAppletElement06</title>
+<creator>NIST</creator>
+<description>
+ The height attribute overrides the height.
+
+ Retrieve the height attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90184867"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheight" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"applet"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<height interface="HTMLAppletElement" obj="testNode" var="vheight"/>
+<assertEquals actual="vheight" expected='"306"' id="heightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAppletElement07.xml b/test/testcases/tests/level1/html/HTMLAppletElement07.xml
new file mode 100644
index 0000000..d3b4858
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAppletElement07.xml
@@ -0,0 +1,51 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAppletElement07">
+<metadata>
+<title>HTMLAppletElement07</title>
+<creator>NIST</creator>
+<description>
+ The hspace attribute specifies the horizontal space to the left
+ and right of this image, applet, or object. Retrieve the hspace attribute and examine its value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-1567197"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhspace" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<!-- this test is incompatible with L2 HTML implementations -->
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"applet"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<hspace interface="HTMLAppletElement" obj="testNode" var="vhspace"/>
+<assertEquals actual="vhspace" expected='"0"' id="hspaceLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAppletElement08.xml b/test/testcases/tests/level1/html/HTMLAppletElement08.xml
new file mode 100644
index 0000000..a473f23
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAppletElement08.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAppletElement08">
+<metadata>
+<title>HTMLAppletElement08</title>
+<creator>NIST</creator>
+<description>
+ The name attribute specifies the name of the applet.
+
+ Retrieve the name attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39843695"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"applet"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLAppletElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"applet1"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAppletElement09.xml b/test/testcases/tests/level1/html/HTMLAppletElement09.xml
new file mode 100644
index 0000000..98d2413
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAppletElement09.xml
@@ -0,0 +1,51 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAppletElement09">
+<metadata>
+<title>HTMLAppletElement09</title>
+<creator>NIST</creator>
+<description>
+ The vspace attribute specifies the vertical space above and below
+ this image, applet or object. Retrieve the vspace attribute and examine its value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22637173"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvspace" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"applet"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vspace interface="HTMLAppletElement" obj="testNode" var="vvspace"/>
+<assertEquals actual="vvspace" expected='"0"' id="vspaceLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAppletElement10.xml b/test/testcases/tests/level1/html/HTMLAppletElement10.xml
new file mode 100644
index 0000000..2cf1b6a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAppletElement10.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAppletElement10">
+<metadata>
+<title>HTMLAppletElement10</title>
+<creator>NIST</creator>
+<description>
+ The width attribute overrides the regular width.
+
+ Retrieve the width attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16526327"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"applet"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<width interface="HTMLAppletElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"301"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAppletElement11.xml b/test/testcases/tests/level1/html/HTMLAppletElement11.xml
new file mode 100644
index 0000000..91cba8b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAppletElement11.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAppletElement11">
+<metadata>
+<title>HTMLAppletElement11</title>
+<creator>NIST</creator>
+<description>
+ The object attribute specifies the serialized applet file.
+
+ Retrieve the object attribute and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-07-19</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93681523"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vobject" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="applet2" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"applet"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<object interface="HTMLAppletElement" obj="testNode" var="vobject"/>
+<assertEquals actual="vobject" expected='"DOMTSApplet.dat"' id="object" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAreaElement01.xml b/test/testcases/tests/level1/html/HTMLAreaElement01.xml
new file mode 100644
index 0000000..58db920
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAreaElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAreaElement01">
+<metadata>
+<title>HTMLAreaElement01</title>
+<creator>NIST</creator>
+<description>
+ The accessKey attribute specifies a single character access key to
+ give access to the control form.
+
+ Retrieve the accessKey attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57944457"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaccesskey" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<accessKey interface="HTMLAreaElement" obj="testNode" var="vaccesskey"/>
+<assertEquals actual="vaccesskey" expected='"a"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAreaElement02.xml b/test/testcases/tests/level1/html/HTMLAreaElement02.xml
new file mode 100644
index 0000000..e90e643
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAreaElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAreaElement02">
+<metadata>
+<title>HTMLAreaElement02</title>
+<creator>NIST</creator>
+<description>
+ The alt attribute specifies an alternate text for user agents not
+ rendering the normal content of this element.
+
+ Retrieve the alt attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39775416"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valt" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<alt interface="HTMLAreaElement" obj="testNode" var="valt"/>
+<assertEquals actual="valt" expected='"Domain"' id="altLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAreaElement03.xml b/test/testcases/tests/level1/html/HTMLAreaElement03.xml
new file mode 100644
index 0000000..e0d2114
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAreaElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAreaElement03">
+<metadata>
+<title>HTMLAreaElement03</title>
+<creator>NIST</creator>
+<description>
+ The coords attribute specifies a comma-seperated list of lengths,
+ defining an active region geometry.
+
+ Retrieve the coords attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66021476"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcoords" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<coords interface="HTMLAreaElement" obj="testNode" var="vcoords"/>
+<assertEquals actual="vcoords" expected='"0,2,45,45"' id="coordsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAreaElement04.xml b/test/testcases/tests/level1/html/HTMLAreaElement04.xml
new file mode 100644
index 0000000..c464ae0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAreaElement04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAreaElement04">
+<metadata>
+<title>HTMLAreaElement04</title>
+<creator>NIST</creator>
+<description>
+ The href attribute specifies the URI of the linked resource.
+
+ Retrieve the href attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-34672936"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhref" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<href interface="HTMLAreaElement" obj="testNode" var="vhref"/>
+<assertURIEquals actual="vhref" file='"dletter.html"' id="hrefLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAreaElement05.xml b/test/testcases/tests/level1/html/HTMLAreaElement05.xml
new file mode 100644
index 0000000..31bff76
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAreaElement05.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAreaElement05">
+<metadata>
+<title>HTMLAreaElement05</title>
+<creator>NIST</creator>
+<description>
+ The noHref attribute specifies that this area is inactive.
+
+ Retrieve the noHref attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-61826871"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vnohref" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<noHref interface="HTMLAreaElement" obj="testNode" var="vnohref"/>
+<assertFalse actual="vnohref" id="noHrefLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAreaElement06.xml b/test/testcases/tests/level1/html/HTMLAreaElement06.xml
new file mode 100644
index 0000000..407f72a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAreaElement06.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAreaElement06">
+<metadata>
+<title>HTMLAreaElement06</title>
+<creator>NIST</creator>
+<description>
+ The shape attribute specifies the shape of the active area.
+
+ Retrieve the shape attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85683271"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vshape" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<shape interface="HTMLAreaElement" obj="testNode" var="vshape"/>
+<assertEquals actual="vshape" expected='"rect"' id="shapeLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAreaElement07.xml b/test/testcases/tests/level1/html/HTMLAreaElement07.xml
new file mode 100644
index 0000000..c03b07d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAreaElement07.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAreaElement07">
+<metadata>
+<title>HTMLAreaElement07</title>
+<creator>NIST</creator>
+<description>
+ The tabIndex attribute specifies an index that represents the element's
+ position in the tabbing order.
+
+ Retrieve the tabIndex attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8722121"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtabindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tabIndex interface="HTMLAreaElement" obj="testNode" var="vtabindex"/>
+<assertEquals actual="vtabindex" expected="10" id="tabIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLAreaElement08.xml b/test/testcases/tests/level1/html/HTMLAreaElement08.xml
new file mode 100644
index 0000000..9d485fe
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLAreaElement08.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLAreaElement08">
+<metadata>
+<title>HTMLAreaElement08</title>
+<creator>NIST</creator>
+<description>
+ The target specifies the frame to render the resource in.
+
+ Retrieve the target attribute and examine it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46054682"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtarget" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="area2" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<target interface="HTMLAreaElement" obj="testNode" var="vtarget"/>
+<assertEquals actual="vtarget" expected='"dynamic"' id="targetLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBRElement01.xml b/test/testcases/tests/level1/html/HTMLBRElement01.xml
new file mode 100644
index 0000000..cc4d17a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBRElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBRElement01">
+<metadata>
+<title>HTMLBRElement01</title>
+<creator>NIST</creator>
+<description>
+ The clear attribute specifies control flow of text around floats.
+
+ Retrieve the clear attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82703081"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclear" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="br" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"br"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<clear interface="HTMLBRElement" obj="testNode" var="vclear"/>
+<assertEquals actual="vclear" expected='"none"' id="clearLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBaseElement01.xml b/test/testcases/tests/level1/html/HTMLBaseElement01.xml
new file mode 100644
index 0000000..fa6eacc
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBaseElement01.xml
@@ -0,0 +1,42 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBaseElement01">
+<metadata>
+<title>HTMLBaseElement01</title>
+<creator>NIST</creator>
+<description>
+ The href attribute specifies the base URI.
+
+ Retrieve the href attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-65382887"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhref" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="base" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"base"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<href interface="HTMLBaseElement" obj="testNode" var="vhref"/>
+<assertEquals actual="vhref" expected='"about:blank"' id="hrefLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBaseElement02.xml b/test/testcases/tests/level1/html/HTMLBaseElement02.xml
new file mode 100644
index 0000000..d2a20a5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBaseElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBaseElement02">
+<metadata>
+<title>HTMLBaseElement02</title>
+<creator>NIST</creator>
+<description>
+ The target attribute specifies the default target frame.
+
+ Retrieve the target attribute and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73844298"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtarget" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="base2" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"base"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<target interface="HTMLBaseElement" obj="testNode" var="vtarget"/>
+<assertEquals actual="vtarget" expected='"Frame1"' id="targetLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBaseFontElement01.xml b/test/testcases/tests/level1/html/HTMLBaseFontElement01.xml
new file mode 100644
index 0000000..525438f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBaseFontElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBaseFontElement01">
+<metadata>
+<title>HTMLBaseFontElement01</title>
+<creator>NIST</creator>
+<description>
+ The color attribute specifies the base font's color.
+
+ Retrieve the color attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87502302"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcolor" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="basefont" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"basefont"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<color interface="HTMLBaseFontElement" obj="testNode" var="vcolor"/>
+<assertEquals actual="vcolor" expected='"#000000"' id="colorLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBaseFontElement02.xml b/test/testcases/tests/level1/html/HTMLBaseFontElement02.xml
new file mode 100644
index 0000000..94894d6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBaseFontElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBaseFontElement02">
+<metadata>
+<title>HTMLBaseFontElement02</title>
+<creator>NIST</creator>
+<description>
+ The face attribute specifies the base font's face identifier.
+
+ Retrieve the face attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88128969"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vface" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="basefont" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"basefont"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<face interface="HTMLBaseFontElement" obj="testNode" var="vface"/>
+<assertEquals actual="vface" expected='"arial,helvitica"' id="faceLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBaseFontElement03.xml b/test/testcases/tests/level1/html/HTMLBaseFontElement03.xml
new file mode 100644
index 0000000..e63b16f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBaseFontElement03.xml
@@ -0,0 +1,49 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBaseFontElement03">
+<metadata>
+<title>HTMLBaseFontElement03</title>
+<creator>NIST</creator>
+<description>
+ The size attribute specifies the base font's size. Retrieve the size attribute and examine its value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-38930424"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsize" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="basefont" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"basefont"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<size interface="HTMLBaseFontElement" obj="testNode" var="vsize"/>
+<assertEquals actual="vsize" expected='"4"' id="sizeLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBodyElement01.xml b/test/testcases/tests/level1/html/HTMLBodyElement01.xml
new file mode 100644
index 0000000..95438c6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBodyElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBodyElement01">
+<metadata>
+<title>HTMLBodyElement01</title>
+<creator>NIST</creator>
+<description>
+ The aLink attribute specifies the color of active links.
+
+ Retrieve the aLink attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59424581"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valink" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="body" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"body"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<aLink interface="HTMLBodyElement" obj="testNode" var="valink"/>
+<assertEquals actual="valink" expected='"#0000ff"' id="aLinkLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBodyElement02.xml b/test/testcases/tests/level1/html/HTMLBodyElement02.xml
new file mode 100644
index 0000000..e5e7d34
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBodyElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBodyElement02">
+<metadata>
+<title>HTMLBodyElement02</title>
+<creator>NIST</creator>
+<description>
+ The background attribute specifies the URI fo the background texture
+ tile image.
+
+ Retrieve the background attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-37574810"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vbackground" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="body" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"body"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<background interface="HTMLBodyElement" obj="testNode" var="vbackground"/>
+<assertEquals actual="vbackground" expected='"./pix/back1.gif"' id="backgroundLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBodyElement03.xml b/test/testcases/tests/level1/html/HTMLBodyElement03.xml
new file mode 100644
index 0000000..3f0d492
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBodyElement03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBodyElement03">
+<metadata>
+<title>HTMLBodyElement03</title>
+<creator>NIST</creator>
+<description>
+ The bgColor attribute specifies the document background color.
+
+ Retrieve the bgColor attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-24940084"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vbgcolor" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="body" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"body"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<bgColor interface="HTMLBodyElement" obj="testNode" var="vbgcolor"/>
+<assertEquals actual="vbgcolor" expected='"#ffff00"' id="bgColorLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBodyElement04.xml b/test/testcases/tests/level1/html/HTMLBodyElement04.xml
new file mode 100644
index 0000000..0bbab8c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBodyElement04.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBodyElement04">
+<metadata>
+<title>HTMLBodyElement04</title>
+<creator>NIST</creator>
+<description>
+ The link attribute specifies the color of links that are not active
+ and unvisited.
+
+ Retrieve the link attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7662206"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlink" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="body" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"body"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<link interface="HTMLBodyElement" obj="testNode" var="vlink"/>
+<assertEquals actual="vlink" expected='"#ff0000"' id="linkLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBodyElement05.xml b/test/testcases/tests/level1/html/HTMLBodyElement05.xml
new file mode 100644
index 0000000..b9b1596
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBodyElement05.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBodyElement05">
+<metadata>
+<title>HTMLBodyElement05</title>
+<creator>NIST</creator>
+<description>
+ The text attribute specifies the document text color.
+
+ Retrieve the text attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73714763"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtext" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="body" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"body"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<text interface="HTMLBodyElement" obj="testNode" var="vtext"/>
+<assertEquals actual="vtext" expected='"#000000"' id="textLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBodyElement06.xml b/test/testcases/tests/level1/html/HTMLBodyElement06.xml
new file mode 100644
index 0000000..e2adef5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBodyElement06.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLBodyElement06">
+<metadata>
+<title>HTMLBodyElement06</title>
+<creator>NIST</creator>
+<description>
+ The vLink attribute specifies the color of links that have been
+ visited by the user.
+
+ Retrieve the vLink attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83224305"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvlink" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="body" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"body"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vLink interface="HTMLBodyElement" obj="testNode" var="vvlink"/>
+<assertEquals actual="vvlink" expected='"#00ffff"' id="vLinkLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLButtonElement01.xml b/test/testcases/tests/level1/html/HTMLButtonElement01.xml
new file mode 100644
index 0000000..d212307
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLButtonElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLButtonElement01">
+<metadata>
+<title>HTMLButtonElement01</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="fNode" type="HTMLFormElement"/>
+<var name="vform" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLButtonElement" obj="testNode" var="fNode"/>
+<id obj="fNode" var="vform"/>
+<assertEquals actual="vform" expected='"form2"' id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLButtonElement02.xml b/test/testcases/tests/level1/html/HTMLButtonElement02.xml
new file mode 100644
index 0000000..3271a29
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLButtonElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLButtonElement02">
+<metadata>
+<title>HTMLButtonElement02</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the form attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="HTMLFormElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<form interface="HTMLButtonElement" obj="testNode" var="vform"/>
+<assertNull actual="vform" id="formNullLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLButtonElement03.xml b/test/testcases/tests/level1/html/HTMLButtonElement03.xml
new file mode 100644
index 0000000..50b9ce8
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLButtonElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLButtonElement03">
+<metadata>
+<title>HTMLButtonElement03</title>
+<creator>NIST</creator>
+<description>
+ The accessKey attribute returns a single character access key to
+ give access to the form control.
+
+ Retrieve the accessKey attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73169431"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaccesskey" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<accessKey interface="HTMLButtonElement" obj="testNode" var="vaccesskey"/>
+<assertEquals actual="vaccesskey" expected='"f"' id="accessKeyLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLButtonElement04.xml b/test/testcases/tests/level1/html/HTMLButtonElement04.xml
new file mode 100644
index 0000000..648c9e5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLButtonElement04.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLButtonElement04">
+<metadata>
+<title>HTMLButtonElement04</title>
+<creator>NIST</creator>
+<description>
+ The disabled attribute specifies whether the control is unavailable
+ in this context.
+
+ Retrieve the disabled attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92757155"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdisabled" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<disabled interface="HTMLButtonElement" obj="testNode" var="vdisabled"/>
+<assertTrue actual="vdisabled" id="disabledLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLButtonElement05.xml b/test/testcases/tests/level1/html/HTMLButtonElement05.xml
new file mode 100644
index 0000000..53fa764
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLButtonElement05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLButtonElement05">
+<metadata>
+<title>HTMLButtonElement05</title>
+<creator>NIST</creator>
+<description>
+ The name attribute is the form control or object name when submitted
+ with a form.
+
+ Retrieve the name attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11029910"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLButtonElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"disabledButton"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLButtonElement06.xml b/test/testcases/tests/level1/html/HTMLButtonElement06.xml
new file mode 100644
index 0000000..2243456
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLButtonElement06.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLButtonElement06">
+<metadata>
+<title>HTMLButtonElement06</title>
+<creator>NIST</creator>
+<description>
+ The tabIndex attribute specifies an index that represents the element's
+ position in the tabbing order.
+
+ Retrieve the tabIndex attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39190908"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtabindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tabIndex interface="HTMLButtonElement" obj="testNode" var="vtabindex"/>
+<assertEquals actual="vtabindex" expected="20" id="tabIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLButtonElement07.xml b/test/testcases/tests/level1/html/HTMLButtonElement07.xml
new file mode 100644
index 0000000..f4c5461
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLButtonElement07.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLButtonElement07">
+<metadata>
+<title>HTMLButtonElement07</title>
+<creator>NIST</creator>
+<description>
+ The type attribute specifies the type of button.
+
+ Retrieve the type attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27430092"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLButtonElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"reset"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLButtonElement08.xml b/test/testcases/tests/level1/html/HTMLButtonElement08.xml
new file mode 100644
index 0000000..cd3a04d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLButtonElement08.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLButtonElement08">
+<metadata>
+<title>HTMLButtonElement08</title>
+<creator>NIST</creator>
+<description>
+ The value attribute specifies the current control value.
+
+ Retrieve the value attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72856782"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalue" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<value interface="HTMLButtonElement" obj="testNode" var="vvalue"/>
+<assertEquals actual="vvalue" expected='"Reset Disabled Button"' id="valueLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection01.xml b/test/testcases/tests/level1/html/HTMLCollection01.xml
new file mode 100644
index 0000000..fd2cfe4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection01.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection01">
+<metadata>
+<title>HTMLCollection01</title>
+<creator>NIST</creator>
+<description>
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test ordinal index).
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. The item located at ordinal index 0 is further
+ retrieved and its "rowIndex" attribute is examined.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<item interface="HTMLCollection" obj="rowsnodeList" var="rowNode" index="0"/>
+<rowIndex interface="HTMLTableRowElement" obj="rowNode" var="vrowindex"/>
+<assertEquals actual="vrowindex" expected="0" id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection02.xml b/test/testcases/tests/level1/html/HTMLCollection02.xml
new file mode 100644
index 0000000..521d5ae
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection02.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection02">
+<metadata>
+<title>HTMLCollection02</title>
+<creator>NIST</creator>
+<description>
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test node name).
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the elements attribute. The first SELECT element is further retrieved
+ using the elements name attribute.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76728479"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<elements interface="HTMLFormElement" obj="testNode" var="formsnodeList"/>
+<namedItem obj="formsnodeList" var="formNode" name='"select1"'/>
+<nodeName obj="formNode" var="vname"/>
+<assertEquals actual="vname" expected='"SELECT"' id="nameIndexLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection03.xml b/test/testcases/tests/level1/html/HTMLCollection03.xml
new file mode 100644
index 0000000..36d489e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection03.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection03">
+<metadata>
+<title>HTMLCollection03</title>
+<creator>NIST</creator>
+<description>
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test id attribute).
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the "element" attribute. The first SELECT element is further retrieved
+ using the elements id.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21069976"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<elements interface="HTMLFormElement" obj="testNode" var="formsnodeList"/>
+<namedItem obj="formsnodeList" var="formNode" name='"selectId"'/>
+<nodeName obj="formNode" var="vname"/>
+<assertEquals actual="vname" expected='"select"' id="nameIndexLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection04.xml b/test/testcases/tests/level1/html/HTMLCollection04.xml
new file mode 100644
index 0000000..5d78405
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection04.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection04">
+<metadata>
+<title>HTMLCollection04</title>
+<creator>NIST</creator>
+<description>
+ HTMLCollections are live, they are automatically updated when the
+ underlying document is changed.
+
+ Create a HTMLCollection object by invoking the rows attribute of the
+ first TABLE element and examine its length, then add a new row and
+ re-examine the length.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40057551"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowLength1" type="int"/>
+<var name="rowLength2" type="int"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>4</member>
+<member>5</member>
+</var>
+<load var="doc" href="collection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="rowLength1"/>
+<append collection="result" item="rowLength1"/>
+<insertRow interface="HTMLTableElement" obj="testNode" var="newRow" index="4"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="rowLength2"/>
+<append collection="result" item="rowLength2"/>
+<assertEquals actual="result" expected="expectedResult" id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection05.xml b/test/testcases/tests/level1/html/HTMLCollection05.xml
new file mode 100644
index 0000000..ffb7d13
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection05.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection05">
+<metadata>
+<title>HTMLCollection05</title>
+<creator>NIST</creator>
+<description>
+ The length attribute specifies the length or size of the list.
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. Retrieve the length attribute of the HTMLCollection
+ object.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40057551"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="rowLength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="rowLength"/>
+<assertEquals actual="rowLength" expected="4" id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection06.xml b/test/testcases/tests/level1/html/HTMLCollection06.xml
new file mode 100644
index 0000000..1026310
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection06.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection06">
+<metadata>
+<title>HTMLCollection06</title>
+<creator>NIST</creator>
+<description>
+ An item(index) method retrieves an item specified by ordinal index
+ (Test for index=0).
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. The item located at ordinal index 0 is further
+ retrieved and its "rowIndex" attribute is examined.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6156016"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<item interface="HTMLCollection" obj="rowsnodeList" var="rowNode" index="0"/>
+<rowIndex interface="HTMLTableRowElement" obj="rowNode" var="vrowindex"/>
+<assertEquals actual="vrowindex" expected="0" id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection07.xml b/test/testcases/tests/level1/html/HTMLCollection07.xml
new file mode 100644
index 0000000..e0a21a2
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection07.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection07">
+<metadata>
+<title>HTMLCollection07</title>
+<creator>NIST</creator>
+<description>
+ An item(index) method retrieves an item specified by ordinal index
+ (Test for index=3).
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. The item located at ordinal index 3 is further
+ retrieved and its "rowIndex" attribute is examined.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<item interface="HTMLCollection" obj="rowsnodeList" var="rowNode" index="3"/>
+<rowIndex interface="HTMLTableRowElement" obj="rowNode" var="vrowindex"/>
+<assertEquals actual="vrowindex" expected="3" id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection08.xml b/test/testcases/tests/level1/html/HTMLCollection08.xml
new file mode 100644
index 0000000..dfc2e10
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection08.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection08">
+<metadata>
+<title>HTMLCollection08</title>
+<creator>NIST</creator>
+<description>
+ Nodes in a HTMLCollection object are numbered in tree order.
+ (Depth-first traversal order).
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. Access the item in the third ordinal index. The
+ resulting rowIndex attribute is examined and should be two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<item interface="HTMLCollection" obj="rowsnodeList" var="rowNode" index="2"/>
+<rowIndex interface="HTMLTableRowElement" obj="rowNode" var="vrowindex"/>
+<assertEquals actual="vrowindex" expected="2" id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection09.xml b/test/testcases/tests/level1/html/HTMLCollection09.xml
new file mode 100644
index 0000000..f81e7af
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection09.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection09">
+<metadata>
+<title>HTMLCollection09</title>
+<creator>NIST</creator>
+<description>
+ The item(index) method returns null if the index is out of range.
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. Invoke the item(index) method with an index
+ of 5. This index is out of range and should return null.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<item interface="HTMLCollection" obj="rowsnodeList" var="rowNode" index="5"/>
+<assertNull actual="rowNode" id="rowIndexLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection10.xml b/test/testcases/tests/level1/html/HTMLCollection10.xml
new file mode 100644
index 0000000..78f4c9a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection10.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection10">
+<metadata>
+<title>HTMLCollection10</title>
+<creator>NIST</creator>
+<description>
+ The namedItem(name) method retrieves a node using a name. It first
+ searches for a node with a matching id attribute. If it doesn't find
+ one, it then searches for a Node with a matching name attribute, but only
+ on those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the elements attribute. The first SELECT element is further retrieved
+ using the elements name attribute since the id attribute doesn't match.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21069976"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<elements interface="HTMLFormElement" obj="testNode" var="formsnodeList"/>
+<namedItem obj="formsnodeList" var="formNode" name='"select1"'/>
+<nodeName obj="formNode" var="vname"/>
+<assertEquals actual="vname" expected='"SELECT"' id="nameIndexLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection11.xml b/test/testcases/tests/level1/html/HTMLCollection11.xml
new file mode 100644
index 0000000..ebf217f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection11.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection11">
+<metadata>
+<title>HTMLCollection11</title>
+<creator>NIST</creator>
+<description>
+ The namedItem(name) method retrieves a node using a name. It first
+ searches for a node with a matching id attribute. If it doesn't find
+ one, it then searches for a Node with a matching name attribute, but only
+ on those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the elements attribute. The first SELECT element is further retrieved
+ using the elements id attribute.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76728479"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<elements interface="HTMLFormElement" obj="testNode" var="formsnodeList"/>
+<namedItem obj="formsnodeList" var="formNode" name='"selectId"'/>
+<nodeName obj="formNode" var="vname"/>
+<assertEquals actual="vname" expected='"select"' id="nameIndexLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection12.xml b/test/testcases/tests/level1/html/HTMLCollection12.xml
new file mode 100644
index 0000000..d7feb3d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection12.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLCollection12">
+<metadata>
+<title>HTMLCollection12</title>
+<creator>NIST</creator>
+<description>
+ The namedItem(name) method retrieves a node using a name. It first
+ searches for a node with a matching id attribute. If it doesn't find
+ one, it then searches for a Node with a matching name attribute, but only
+ on those elements that are allowed a name attribute. If there isn't
+ a matching node the method returns null.
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the elements attribute. The method returns null since there is not a
+ match of the name or id attribute.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21069976"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="collection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<elements interface="HTMLFormElement" obj="testNode" var="formsnodeList"/>
+<namedItem obj="formsnodeList" var="formNode" name='"select9"'/>
+<assertNull actual="formNode" id="nameIndexLink" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDirectoryElement01.xml b/test/testcases/tests/level1/html/HTMLDirectoryElement01.xml
new file mode 100644
index 0000000..4b1b402
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDirectoryElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDirectoryElement01">
+<metadata>
+<title>HTMLDirectoryElement01</title>
+<creator>NIST</creator>
+<description>
+ The compact attribute specifies a boolean value on whether to display
+ the list more compactly.
+
+ Retrieve the compact attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75317739"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcompact" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="directory" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dir"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<compact interface="HTMLDirectoryElement" obj="testNode" var="vcompact"/>
+<assertTrue actual="vcompact" id="compactLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDivElement01.xml b/test/testcases/tests/level1/html/HTMLDivElement01.xml
new file mode 100644
index 0000000..c658eb2
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDivElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDivElement01">
+<metadata>
+<title>HTMLDivElement01</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal text alignment.
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70908791"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="div" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"div"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLDivElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDlistElement01.xml b/test/testcases/tests/level1/html/HTMLDlistElement01.xml
new file mode 100644
index 0000000..727c189
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDlistElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDlistElement01">
+<metadata>
+<title>HTMLDListElement01</title>
+<creator>NIST</creator>
+<description>
+ The compact attribute specifies a boolean value on whether to display
+ the list more compactly.
+
+ Retrieve the compact attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21738539"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcompact" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="dl" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dl"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<compact interface="HTMLDListElement" obj="testNode" var="vcompact"/>
+<assertTrue actual="vcompact" id="compactLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument01.xml b/test/testcases/tests/level1/html/HTMLDocument01.xml
new file mode 100644
index 0000000..2e528d5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument01.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument01">
+<metadata>
+<title>HTMLDocument01</title>
+<creator>NIST</creator>
+<description>
+ The title attribute is the specified title as a string.
+
+ Retrieve the title attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-01-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18446827"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="vtitle" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<title interface="HTMLDocument" obj="doc" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"NIST DOM HTML Test - DOCUMENT"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument02.xml b/test/testcases/tests/level1/html/HTMLDocument02.xml
new file mode 100644
index 0000000..24bd58f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument02.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument02">
+<metadata>
+<title>HTMLDocument02</title>
+<creator>NIST</creator>
+<description>
+ The referrer attribute returns the URI of the page that linked to this
+ page.
+
+ Retrieve the referrer attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-01-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95229140"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vreferrer" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<referrer interface="HTMLDocument" obj="doc" var="vreferrer"/>
+<assertEquals actual="vreferrer" expected='""' id="referrerLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument03.xml b/test/testcases/tests/level1/html/HTMLDocument03.xml
new file mode 100644
index 0000000..97e291d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument03.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument03">
+<metadata>
+<title>HTMLDocument03</title>
+<creator>NIST</creator>
+<description>
+ The domain attribute specifies the domain name of the server that served
+ the document, or null if the server cannot be identified by a domain name.
+
+ Retrieve the domain attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-01-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-2250147"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdomain" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<domain interface="HTMLDocument" obj="doc" var="vdomain"/>
+<assertEquals actual="vdomain" expected='""' id="domainLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument04.xml b/test/testcases/tests/level1/html/HTMLDocument04.xml
new file mode 100644
index 0000000..223d426
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument04.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument04">
+<metadata>
+<title>HTMLDocument04</title>
+<creator>NIST</creator>
+<description>
+ The URL attribute specifies the absolute URI of the document.
+
+ Retrieve the URL attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-01-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46183437"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vurl" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<URL interface="HTMLDocument" obj="doc" var="vurl"/>
+<assertURIEquals actual="vurl" name='"document"' id="URLLink" isAbsolute="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument05.xml b/test/testcases/tests/level1/html/HTMLDocument05.xml
new file mode 100644
index 0000000..a764b35
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument05.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument05">
+<metadata>
+<title>HTMLDocument05</title>
+<creator>NIST</creator>
+<description>
+ The body attribute is the element that contains the content for the
+ document.
+
+ Retrieve the body attribute and examine its value for the id attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-01-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-56360201"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vbody" type="HTMLElement" />
+<var name="vid" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<body interface="HTMLDocument" obj="doc" var="vbody"/>
+<id interface="HTMLElement" obj="vbody" var="vid"/>
+<assertEquals actual="vid" expected='"TEST-BODY"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument07.xml b/test/testcases/tests/level1/html/HTMLDocument07.xml
new file mode 100644
index 0000000..a08972f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument07.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument07">
+<metadata>
+<title>HTMLDocument07</title>
+<creator>NIST</creator>
+<description>
+ The images attribute returns a collection of all IMG elements in a document.
+
+ Retrieve the images attribute from the document and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90379117"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vimages" type="HTMLCollection" />
+<var name="vlength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<images interface="HTMLDocument" obj="doc" var="vimages" />
+<length interface="HTMLCollection" obj="vimages" var="vlength" />
+<assertEquals actual="vlength" expected='1' id="lengthLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument08.xml b/test/testcases/tests/level1/html/HTMLDocument08.xml
new file mode 100644
index 0000000..fcc8147
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument08.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument08">
+<metadata>
+<title>HTMLDocument08</title>
+<creator>NIST</creator>
+<description>
+ The applets attribute returns a collection of all OBJECT elements that
+ include applets abd APPLET elements in a document.
+
+ Retrieve the applets attribute from the document and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85113862"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vapplets" type="HTMLCollection" />
+<var name="vlength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<applets interface="HTMLDocument" obj="doc" var="vapplets" />
+<length interface="HTMLCollection" obj="vapplets" var="vlength" />
+<assertEquals actual="vlength" expected='4' id="length" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument09.xml b/test/testcases/tests/level1/html/HTMLDocument09.xml
new file mode 100644
index 0000000..037811f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument09.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument09">
+<metadata>
+<title>HTMLDocument09</title>
+<creator>NIST</creator>
+<description>
+ The links attribute returns a collection of all AREA and A elements
+ in a document with a value for the href attribute.
+
+ Retrieve the links attribute from the document and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7068919"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlinks" type="HTMLCollection"/>
+<var name="vlength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<links interface="HTMLDocument" obj="doc" var="vlinks" />
+<length interface="HTMLCollection" obj="vlinks" var="vlength" />
+<assertEquals actual="vlength" expected='3' id="lengthLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument10.xml b/test/testcases/tests/level1/html/HTMLDocument10.xml
new file mode 100644
index 0000000..700cebd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument10.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument10">
+<metadata>
+<title>HTMLDocument10</title>
+<creator>NIST</creator>
+<description>
+ The forms attribute returns a collection of all the forms in a document.
+
+ Retrieve the forms attribute from the document and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-1689064"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vforms" type="HTMLCollection"/>
+<var name="vlength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<forms interface="HTMLDocument" obj="doc" var="vforms" />
+<length interface="HTMLCollection" obj="vforms" var="vlength" />
+<assertEquals actual="vlength" expected='1' id="lengthLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument11.xml b/test/testcases/tests/level1/html/HTMLDocument11.xml
new file mode 100644
index 0000000..308131f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument11.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument11">
+<metadata>
+<title>HTMLDocument11</title>
+<creator>NIST</creator>
+<description>
+ The anchors attribute returns a collection of all A elements with values
+ for the name attribute.
+
+ Retrieve the anchors attribute from the document and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7577272"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vanchors" type="HTMLCollection"/>
+<var name="vlength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<anchors interface="HTMLDocument" obj="doc" var="vanchors" />
+<length interface="HTMLCollection" obj="vanchors" var="vlength" />
+<assertEquals actual="vlength" expected='1' id="lengthLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument12.xml b/test/testcases/tests/level1/html/HTMLDocument12.xml
new file mode 100644
index 0000000..964e70c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument12.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument12">
+<metadata>
+<title>HTMLDocument02</title>
+<creator>NIST</creator>
+<description>
+ The cookie attribute returns the cookies associated with this document.
+
+ Retrieve the cookie attribute and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8747038"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="vcookie" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<cookie interface="HTMLDocument" obj="doc" var="vcookie"/>
+<assertEquals actual="vcookie" expected='""' id="cookieLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument13.xml b/test/testcases/tests/level1/html/HTMLDocument13.xml
new file mode 100644
index 0000000..fc7244b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument13.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument13">
+<metadata>
+<title>HTMLDocument13</title>
+<creator>NIST</creator>
+<description>
+ The getElementsByName method returns the (possibly empty) collection
+ of elements whose name value is given by the elementName.
+
+ Retrieve all the elements whose name attribute is "mapid".
+ Check the length of the nodelist. It should be 1.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71555259"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<getElementsByName interface="HTMLDocument" var="nodeList" obj="doc" elementName='"mapid"' id="getElementsNameId"/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument14.xml b/test/testcases/tests/level1/html/HTMLDocument14.xml
new file mode 100644
index 0000000..c41fe14
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument14.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument14">
+<metadata>
+<title>HTMLDocument14</title>
+<creator>NIST</creator>
+<description>
+ The getElementsByName method returns the (possibly empty) collection
+ of elements whose name value is given by the elementName.
+
+ Retrieve all the elements whose name attribute is "noid".
+ Check the length of the nodelist. It should be 0 since
+ the id "noid" does not exist.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71555259"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<getElementsByName interface="HTMLDocument" var="nodeList" obj="doc" elementName='"noid"' id="getElementsNameId"/>
+<assertSize collection="nodeList" size="0" id="Asize"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument15.xml b/test/testcases/tests/level1/html/HTMLDocument15.xml
new file mode 100644
index 0000000..e01d4ca
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument15.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument15">
+<metadata>
+<title>HTMLDocument15</title>
+<creator>NIST</creator>
+<description>
+ The getElementById method returns the Element whose id is given by
+ elementId. If no such element exists, returns null.
+
+ Retrieve the element whose id is "mapid".
+ Check the value of the element.
+
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36113835"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId"/>
+</metadata>
+<var name="elementNode" type="Element"/>
+<var name="elementValue" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<getElementById var="elementNode" obj="doc" elementId='"mapid"' id="getElementsId"/>
+<nodeName obj="elementNode" var="elementValue"/>
+<assertEquals actual="elementValue" expected='"map"' id="elementId" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument16.xml b/test/testcases/tests/level1/html/HTMLDocument16.xml
new file mode 100644
index 0000000..1bb1fa7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument16.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument16">
+<metadata>
+<title>HTMLDocument16</title>
+<creator>NIST</creator>
+<description>
+ The getElementById method returns the Element whose id is given by
+ elementId. If no such element exists, returns null.
+
+ Retrieve the element whose id is "noid".
+ The value returned should be null since there are not any elements with
+ an id of "noid".
+
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36113835"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId"/>
+</metadata>
+<var name="elementNode" type="Element"/>
+<var name="elementValue" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="false"/>
+<getElementById var="elementNode" obj="doc" elementId='"noid"' id="getElementsId"/>
+<assertNull actual="elementNode" id="elementId"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument17.xml b/test/testcases/tests/level1/html/HTMLDocument17.xml
new file mode 100644
index 0000000..6c89504
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument17.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument17">
+<metadata>
+<title>HTMLDocument17</title>
+<creator>Curt Arnold</creator>
+<description>
+Clears the current document using HTMLDocument.open immediately followed by close.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="bodyElem" type="Element"/>
+<var name="bodyChild" type="Node"/>
+<load var="doc" href="document" willBeModified="true"/>
+<open obj="doc"/>
+<close obj="doc"/>
+<body var="bodyElem" obj="doc"/>
+<if><notNull obj="bodyElem"/>
+ <firstChild interface="Node" var="bodyChild" obj="bodyElem"/>
+ <assertNull actual="bodyChild" id="bodyContainsChildren"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument18.xml b/test/testcases/tests/level1/html/HTMLDocument18.xml
new file mode 100644
index 0000000..7454a15
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument18.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument18">
+<metadata>
+<title>HTMLDocument18</title>
+<creator>Curt Arnold</creator>
+<description>
+Calls HTMLDocument.close on a document that has not been opened for modification.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567"/>
+</metadata>
+<var name="doc" type="Document"/>
+<load var="doc" href="document" willBeModified="true"/>
+<close obj="doc"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument19.xml b/test/testcases/tests/level1/html/HTMLDocument19.xml
new file mode 100644
index 0000000..3fa1a81
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument19.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument19">
+<metadata>
+<title>HTMLDocument19</title>
+<creator>Curt Arnold</creator>
+<description>
+Replaces the current document with a valid HTML document using HTMLDocument.open, write and close.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75233634"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="title" type="DOMString"/>
+<load var="doc" href="document" willBeModified="true"/>
+<open obj="doc"/>
+<if><contentType type="text/html"/>
+ <write obj="doc" text='"&lt;html&gt;"'/>
+ <else>
+ <write obj="doc" text='"&lt;html xmlns=&apos;http://www.w3.org/1999/xhtml&apos;&gt;"'/>
+ </else>
+</if>
+<write obj="doc" text='"&lt;body&gt;"'/>
+<write obj="doc" text='"&lt;title&gt;Replacement&lt;/title&gt;"'/>
+<write obj="doc" text='"&lt;/body&gt;"'/>
+<write obj="doc" text='"&lt;p&gt;"'/>
+<write obj="doc" text='"Hello, World."'/>
+<write obj="doc" text='"&lt;/p&gt;"'/>
+<write obj="doc" text='"&lt;/body&gt;"'/>
+<write obj="doc" text='"&lt;/html&gt;"'/>
+<close obj="doc"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument20.xml b/test/testcases/tests/level1/html/HTMLDocument20.xml
new file mode 100644
index 0000000..0b03356
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument20.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument20">
+<metadata>
+<title>HTMLDocument20</title>
+<creator>Curt Arnold</creator>
+<description>
+Replaces the current document with a valid HTML document using HTMLDocument.open, writeln and close.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35318390"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="title" type="DOMString"/>
+<load var="doc" href="document" willBeModified="true"/>
+<open obj="doc"/>
+<if><contentType type="text/html"/>
+ <writeln obj="doc" text='"&lt;html&gt;"'/>
+ <else>
+ <writeln obj="doc" text='"&lt;html xmlns=&apos;http://www.w3.org/1999/xhtml&apos;&gt;"'/>
+ </else>
+</if>
+<writeln obj="doc" text='"&lt;body&gt;"'/>
+<writeln obj="doc" text='"&lt;title&gt;Replacement&lt;/title&gt;"'/>
+<writeln obj="doc" text='"&lt;/body&gt;"'/>
+<writeln obj="doc" text='"&lt;p&gt;"'/>
+<writeln obj="doc" text='"Hello, World."'/>
+<writeln obj="doc" text='"&lt;/p&gt;"'/>
+<writeln obj="doc" text='"&lt;/body&gt;"'/>
+<writeln obj="doc" text='"&lt;/html&gt;"'/>
+<close obj="doc"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument21.xml b/test/testcases/tests/level1/html/HTMLDocument21.xml
new file mode 100644
index 0000000..4942f45
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument21.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLDocument21">
+<metadata>
+<title>HTMLDocument21</title>
+<creator>Curt Arnold</creator>
+<description>
+Replaces the current document checks that writeln adds a new line.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75233634"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35318390"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="preElems" type="NodeList"/>
+<var name="preElem" type="Element"/>
+<var name="preText" type="Text"/>
+<var name="preValue" type="DOMString"/>
+<load var="doc" href="document" willBeModified="true"/>
+<open obj="doc"/>
+<if><contentType type="text/html"/>
+ <writeln obj="doc" text='"&lt;html&gt;"'/>
+ <else>
+ <writeln obj="doc" text='"&lt;html xmlns=&apos;http://www.w3.org/1999/xhtml&apos;&gt;"'/>
+ </else>
+</if>
+<writeln obj="doc" text='"&lt;body&gt;"'/>
+<writeln obj="doc" text='"&lt;title&gt;Replacement&lt;/title&gt;"'/>
+<writeln obj="doc" text='"&lt;/body&gt;"'/>
+<write obj="doc" text='"&lt;pre&gt;"'/>
+<writeln obj="doc" text='"Hello, World."'/>
+<writeln obj="doc" text='"Hello, World."'/>
+<writeln obj="doc" text='"&lt;/pre&gt;"'/>
+<write obj="doc" text='"&lt;pre&gt;"'/>
+<write obj="doc" text='"Hello, World."'/>
+<write obj="doc" text='"Hello, World."'/>
+<writeln obj="doc" text='"&lt;/pre&gt;"'/>
+<writeln obj="doc" text='"&lt;/body&gt;"'/>
+<writeln obj="doc" text='"&lt;/html&gt;"'/>
+<close obj="doc"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement01.xml b/test/testcases/tests/level1/html/HTMLElement01.xml
new file mode 100644
index 0000000..b139ae6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement01">
+<metadata>
+<title>HTMLElement01</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the HEAD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"head"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-HEAD"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement02.xml b/test/testcases/tests/level1/html/HTMLElement02.xml
new file mode 100644
index 0000000..adfd033
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement02">
+<metadata>
+<title>HTMLElement02</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the SUB element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"sub"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-SUB"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement03.xml b/test/testcases/tests/level1/html/HTMLElement03.xml
new file mode 100644
index 0000000..db2929d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement03">
+<metadata>
+<title>HTMLElement03</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the SUP element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"sup"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-SUP"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement04.xml b/test/testcases/tests/level1/html/HTMLElement04.xml
new file mode 100644
index 0000000..44c4aad
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement04">
+<metadata>
+<title>HTMLElement04</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the SPAN element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"span"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-SPAN"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement05.xml b/test/testcases/tests/level1/html/HTMLElement05.xml
new file mode 100644
index 0000000..a353781
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement05.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement05">
+<metadata>
+<title>HTMLElement05</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the BDO element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"bdo"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-BDO"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement06.xml b/test/testcases/tests/level1/html/HTMLElement06.xml
new file mode 100644
index 0000000..212d2aa
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement06.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement06">
+<metadata>
+<title>HTMLElement06</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the TT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tt"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-TT"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement07.xml b/test/testcases/tests/level1/html/HTMLElement07.xml
new file mode 100644
index 0000000..365b84d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement07.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement07">
+<metadata>
+<title>HTMLElement07</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the I element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"i"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-I"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement08.xml b/test/testcases/tests/level1/html/HTMLElement08.xml
new file mode 100644
index 0000000..1db5576
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement08.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement08">
+<metadata>
+<title>HTMLElement08</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the B element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"b"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-B"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement09.xml b/test/testcases/tests/level1/html/HTMLElement09.xml
new file mode 100644
index 0000000..17180d9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement09.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement09">
+<metadata>
+<title>HTMLElement09</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the U element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"u"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-U"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement10.xml b/test/testcases/tests/level1/html/HTMLElement10.xml
new file mode 100644
index 0000000..fa18238
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement10.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement10">
+<metadata>
+<title>HTMLElement10</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the S element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"s"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-S"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement100.xml b/test/testcases/tests/level1/html/HTMLElement100.xml
new file mode 100644
index 0000000..64cbda7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement100.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement100">
+<metadata>
+<title>HTMLElement100</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the SMALL element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"small"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement101.xml b/test/testcases/tests/level1/html/HTMLElement101.xml
new file mode 100644
index 0000000..3d9cef5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement101.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement101">
+<metadata>
+<title>HTMLElement101</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the EM element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"em"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement102.xml b/test/testcases/tests/level1/html/HTMLElement102.xml
new file mode 100644
index 0000000..3a5c6f5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement102.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement102">
+<metadata>
+<title>HTMLElement102</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the STRONG element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"strong"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement103.xml b/test/testcases/tests/level1/html/HTMLElement103.xml
new file mode 100644
index 0000000..5deb562
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement103.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement103">
+<metadata>
+<title>HTMLElement103</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the DFN element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dfn"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement104.xml b/test/testcases/tests/level1/html/HTMLElement104.xml
new file mode 100644
index 0000000..19dbe69
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement104.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement104">
+<metadata>
+<title>HTMLElement104</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the CODE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"code"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement105.xml b/test/testcases/tests/level1/html/HTMLElement105.xml
new file mode 100644
index 0000000..352c97c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement105.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement105">
+<metadata>
+<title>HTMLElement105</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the SAMP element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"samp"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement106.xml b/test/testcases/tests/level1/html/HTMLElement106.xml
new file mode 100644
index 0000000..3075b6c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement106.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement106">
+<metadata>
+<title>HTMLElement106</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the KBD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"kbd"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement107.xml b/test/testcases/tests/level1/html/HTMLElement107.xml
new file mode 100644
index 0000000..75f90b9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement107.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement107">
+<metadata>
+<title>HTMLElement107</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the VAR element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"var"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement108.xml b/test/testcases/tests/level1/html/HTMLElement108.xml
new file mode 100644
index 0000000..080a2c7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement108.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement108">
+<metadata>
+<title>HTMLElement108</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the CITE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"cite"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement109.xml b/test/testcases/tests/level1/html/HTMLElement109.xml
new file mode 100644
index 0000000..16a6b5f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement109.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement109">
+<metadata>
+<title>HTMLElement109</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the ACRONYM element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"acronym"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement11.xml b/test/testcases/tests/level1/html/HTMLElement11.xml
new file mode 100644
index 0000000..8dab5be
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement11.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement11">
+<metadata>
+<title>HTMLElement11</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the STRIKE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"strike"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-STRIKE"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement110.xml b/test/testcases/tests/level1/html/HTMLElement110.xml
new file mode 100644
index 0000000..cf6ccf0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement110.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement110">
+<metadata>
+<title>HTMLElement110</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the ABBR element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"abbr"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement111.xml b/test/testcases/tests/level1/html/HTMLElement111.xml
new file mode 100644
index 0000000..d5639da
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement111.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement111">
+<metadata>
+<title>HTMLElement111</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the DD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dd"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement112.xml b/test/testcases/tests/level1/html/HTMLElement112.xml
new file mode 100644
index 0000000..215125a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement112.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement112">
+<metadata>
+<title>HTMLElement112</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the DT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dt"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement113.xml b/test/testcases/tests/level1/html/HTMLElement113.xml
new file mode 100644
index 0000000..a639ca2
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement113.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement113">
+<metadata>
+<title>HTMLElement113</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the NOFRAMES element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"noframes"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement114.xml b/test/testcases/tests/level1/html/HTMLElement114.xml
new file mode 100644
index 0000000..d231396
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement114.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement114">
+<metadata>
+<title>HTMLElement114</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the NOSCRIPT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"noscript"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement115.xml b/test/testcases/tests/level1/html/HTMLElement115.xml
new file mode 100644
index 0000000..1e38b03
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement115.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement115">
+<metadata>
+<title>HTMLElement115</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the ADDRESS element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"address"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement116.xml b/test/testcases/tests/level1/html/HTMLElement116.xml
new file mode 100644
index 0000000..7338e78
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement116.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement116">
+<metadata>
+<title>HTMLElement116</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the CENTER element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"center"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement117.xml b/test/testcases/tests/level1/html/HTMLElement117.xml
new file mode 100644
index 0000000..ba720cd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement117.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement117">
+<metadata>
+<title>HTMLElement117</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the HEAD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"head"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"HEAD-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement118.xml b/test/testcases/tests/level1/html/HTMLElement118.xml
new file mode 100644
index 0000000..a175045
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement118.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement118">
+<metadata>
+<title>HTMLElement118</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the SUB element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"sub"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"SUB-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement119.xml b/test/testcases/tests/level1/html/HTMLElement119.xml
new file mode 100644
index 0000000..09361ae
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement119.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement119">
+<metadata>
+<title>HTMLElement119</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the SUP element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"sup"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"SUP-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement12.xml b/test/testcases/tests/level1/html/HTMLElement12.xml
new file mode 100644
index 0000000..3b6b9bb
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement12.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement12">
+<metadata>
+<title>HTMLElement12</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the BIG element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"big"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-BIG"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement120.xml b/test/testcases/tests/level1/html/HTMLElement120.xml
new file mode 100644
index 0000000..4edc694
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement120.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement120">
+<metadata>
+<title>HTMLElement120</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the SPAN element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"span"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"SPAN-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement121.xml b/test/testcases/tests/level1/html/HTMLElement121.xml
new file mode 100644
index 0000000..93af01a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement121.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement121">
+<metadata>
+<title>HTMLElement121</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the BDO element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"bdo"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"BDO-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement122.xml b/test/testcases/tests/level1/html/HTMLElement122.xml
new file mode 100644
index 0000000..e1e1064
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement122.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement122">
+<metadata>
+<title>HTMLElement122</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the TT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tt"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"TT-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement123.xml b/test/testcases/tests/level1/html/HTMLElement123.xml
new file mode 100644
index 0000000..de7ce7a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement123.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement123">
+<metadata>
+<title>HTMLElement123</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the I element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"i"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"I-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement124.xml b/test/testcases/tests/level1/html/HTMLElement124.xml
new file mode 100644
index 0000000..1f86541
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement124.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement124">
+<metadata>
+<title>HTMLElement124</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the B element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"b"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"B-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement125.xml b/test/testcases/tests/level1/html/HTMLElement125.xml
new file mode 100644
index 0000000..4238620
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement125.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement125">
+<metadata>
+<title>HTMLElement125</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the U element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"u"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"U-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement126.xml b/test/testcases/tests/level1/html/HTMLElement126.xml
new file mode 100644
index 0000000..fdfd4a9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement126.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement126">
+<metadata>
+<title>HTMLElement126</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the S element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"s"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"S-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement127.xml b/test/testcases/tests/level1/html/HTMLElement127.xml
new file mode 100644
index 0000000..f7eb5ff
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement127.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement127">
+<metadata>
+<title>HTMLElement127</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the STRIKE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"strike"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"STRIKE-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement128.xml b/test/testcases/tests/level1/html/HTMLElement128.xml
new file mode 100644
index 0000000..3656298
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement128.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement128">
+<metadata>
+<title>HTMLElement128</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the BIG element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"big"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"BIG-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement129.xml b/test/testcases/tests/level1/html/HTMLElement129.xml
new file mode 100644
index 0000000..80ca878
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement129.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement129">
+<metadata>
+<title>HTMLElement129</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the SMALL element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"small"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"SMALL-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement13.xml b/test/testcases/tests/level1/html/HTMLElement13.xml
new file mode 100644
index 0000000..0f861c6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement13.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement13">
+<metadata>
+<title>HTMLElement13</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the SMALL element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"small"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-SMALL"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement130.xml b/test/testcases/tests/level1/html/HTMLElement130.xml
new file mode 100644
index 0000000..9636f0e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement130.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement130">
+<metadata>
+<title>HTMLElement130</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the EM element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"em"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"EM-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement131.xml b/test/testcases/tests/level1/html/HTMLElement131.xml
new file mode 100644
index 0000000..d0a35ee
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement131.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement131">
+<metadata>
+<title>HTMLElement131</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the STRONG element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"strong"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"STRONG-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement132.xml b/test/testcases/tests/level1/html/HTMLElement132.xml
new file mode 100644
index 0000000..50e124e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement132.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement132">
+<metadata>
+<title>HTMLElement132</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the DFN element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dfn"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"DFN-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement133.xml b/test/testcases/tests/level1/html/HTMLElement133.xml
new file mode 100644
index 0000000..096cbfa
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement133.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement133">
+<metadata>
+<title>HTMLElement133</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the CODE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"code"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"CODE-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement134.xml b/test/testcases/tests/level1/html/HTMLElement134.xml
new file mode 100644
index 0000000..dd9645e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement134.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement134">
+<metadata>
+<title>HTMLElement134</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the SAMP element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"samp"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"SAMP-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement135.xml b/test/testcases/tests/level1/html/HTMLElement135.xml
new file mode 100644
index 0000000..5b52ce5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement135.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement135">
+<metadata>
+<title>HTMLElement135</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the KBD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"kbd"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"KBD-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement136.xml b/test/testcases/tests/level1/html/HTMLElement136.xml
new file mode 100644
index 0000000..459f9a5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement136.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement136">
+<metadata>
+<title>HTMLElement136</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the VAR element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"var"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"VAR-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement137.xml b/test/testcases/tests/level1/html/HTMLElement137.xml
new file mode 100644
index 0000000..bd9d69b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement137.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement137">
+<metadata>
+<title>HTMLElement137</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the CITE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"cite"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"CITE-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement138.xml b/test/testcases/tests/level1/html/HTMLElement138.xml
new file mode 100644
index 0000000..25e4ced
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement138.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement138">
+<metadata>
+<title>HTMLElement138</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the ACRONYM element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"acronym"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"ACRONYM-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement139.xml b/test/testcases/tests/level1/html/HTMLElement139.xml
new file mode 100644
index 0000000..82b2771
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement139.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement139">
+<metadata>
+<title>HTMLElement139</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the ABBR element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"abbr"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"ABBR-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement14.xml b/test/testcases/tests/level1/html/HTMLElement14.xml
new file mode 100644
index 0000000..a14e362
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement14.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement14">
+<metadata>
+<title>HTMLElement14</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the EM element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"em"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-EM"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement140.xml b/test/testcases/tests/level1/html/HTMLElement140.xml
new file mode 100644
index 0000000..e982a80
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement140.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement140">
+<metadata>
+<title>HTMLElement140</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the DD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dd"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"DD-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement141.xml b/test/testcases/tests/level1/html/HTMLElement141.xml
new file mode 100644
index 0000000..5c22702
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement141.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement141">
+<metadata>
+<title>HTMLElement141</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the DT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dt"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"DT-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement142.xml b/test/testcases/tests/level1/html/HTMLElement142.xml
new file mode 100644
index 0000000..4f78aff
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement142.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement142">
+<metadata>
+<title>HTMLElement142</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the NOFRAMES element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"noframes"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"NOFRAMES-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement143.xml b/test/testcases/tests/level1/html/HTMLElement143.xml
new file mode 100644
index 0000000..84700a2
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement143.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement143">
+<metadata>
+<title>HTMLElement143</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the NOSCRIPT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"noscript"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"NOSCRIPT-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement144.xml b/test/testcases/tests/level1/html/HTMLElement144.xml
new file mode 100644
index 0000000..e4bdee4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement144.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement144">
+<metadata>
+<title>HTMLElement144</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the ADDRESS element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"address"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"ADDRESS-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement145.xml b/test/testcases/tests/level1/html/HTMLElement145.xml
new file mode 100644
index 0000000..3241888
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement145.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement145">
+<metadata>
+<title>HTMLElement145</title>
+<creator>NIST</creator>
+<description>
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the CENTER element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vclassname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"center"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<className interface="HTMLElement" obj="testNode" var="vclassname"/>
+<assertEquals actual="vclassname" expected='"CENTER-class"' id="classNameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement15.xml b/test/testcases/tests/level1/html/HTMLElement15.xml
new file mode 100644
index 0000000..bd42dbd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement15.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement15">
+<metadata>
+<title>HTMLElement15</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the STRONG element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"strong"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-STRONG"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement16.xml b/test/testcases/tests/level1/html/HTMLElement16.xml
new file mode 100644
index 0000000..56da77c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement16.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement16">
+<metadata>
+<title>HTMLElement16</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the DFN element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dfn"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-DFN"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement17.xml b/test/testcases/tests/level1/html/HTMLElement17.xml
new file mode 100644
index 0000000..b17916c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement17.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement17">
+<metadata>
+<title>HTMLElement17</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the CODE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"code"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-CODE"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement18.xml b/test/testcases/tests/level1/html/HTMLElement18.xml
new file mode 100644
index 0000000..6716cf4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement18.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement18">
+<metadata>
+<title>HTMLElement18</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the SAMP element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"samp"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-SAMP"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement19.xml b/test/testcases/tests/level1/html/HTMLElement19.xml
new file mode 100644
index 0000000..57a6f7a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement19.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement19">
+<metadata>
+<title>HTMLElement19</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the KBD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"kbd"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-KBD"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement20.xml b/test/testcases/tests/level1/html/HTMLElement20.xml
new file mode 100644
index 0000000..340837a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement20.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement20">
+<metadata>
+<title>HTMLElement20</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the VAR element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"var"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-VAR"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement21.xml b/test/testcases/tests/level1/html/HTMLElement21.xml
new file mode 100644
index 0000000..f075ca1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement21.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement21">
+<metadata>
+<title>HTMLElement21</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the CITE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"cite"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-CITE"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement22.xml b/test/testcases/tests/level1/html/HTMLElement22.xml
new file mode 100644
index 0000000..49a1969
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement22.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement22">
+<metadata>
+<title>HTMLElement22</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the ACRONYM element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"acronym"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-ACRONYM"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement23.xml b/test/testcases/tests/level1/html/HTMLElement23.xml
new file mode 100644
index 0000000..cf50bae
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement23.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement23">
+<metadata>
+<title>HTMLElement23</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the ABBR element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"abbr"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-ABBR"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement24.xml b/test/testcases/tests/level1/html/HTMLElement24.xml
new file mode 100644
index 0000000..e455f9b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement24.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement24">
+<metadata>
+<title>HTMLElement24</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the DD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dd"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-DD"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement25.xml b/test/testcases/tests/level1/html/HTMLElement25.xml
new file mode 100644
index 0000000..3875a2c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement25.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement25">
+<metadata>
+<title>HTMLElement25</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the DT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dt"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-DT"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement26.xml b/test/testcases/tests/level1/html/HTMLElement26.xml
new file mode 100644
index 0000000..565c76d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement26.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement26">
+<metadata>
+<title>HTMLElement26</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the NOFRAMES element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"noframes"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-NOFRAMES"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement27.xml b/test/testcases/tests/level1/html/HTMLElement27.xml
new file mode 100644
index 0000000..2b1977c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement27.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement27">
+<metadata>
+<title>HTMLElement27</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the NOSCRIPT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"noscript"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-NOSCRIPT"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement28.xml b/test/testcases/tests/level1/html/HTMLElement28.xml
new file mode 100644
index 0000000..69d62c0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement28.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement28">
+<metadata>
+<title>HTMLElement28</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the ADDRESS element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"address"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-ADDRESS"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement29.xml b/test/testcases/tests/level1/html/HTMLElement29.xml
new file mode 100644
index 0000000..540e753
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement29.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement29">
+<metadata>
+<title>HTMLElement29</title>
+<creator>NIST</creator>
+<description>
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the CENTER element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vid" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"center"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id interface="HTMLElement" obj="testNode" var="vid"/>
+<assertEquals actual="vid" expected='"Test-CENTER"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement30.xml b/test/testcases/tests/level1/html/HTMLElement30.xml
new file mode 100644
index 0000000..735edfc
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement30.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement30">
+<metadata>
+<title>HTMLElement30</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the HEAD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"head"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"HEAD Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement31.xml b/test/testcases/tests/level1/html/HTMLElement31.xml
new file mode 100644
index 0000000..b8aa090
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement31.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement31">
+<metadata>
+<title>HTMLElement31</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the SUB element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"sub"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"SUB Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement32.xml b/test/testcases/tests/level1/html/HTMLElement32.xml
new file mode 100644
index 0000000..3222e4f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement32.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement32">
+<metadata>
+<title>HTMLElement32</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the SUP element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"sup"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"SUP Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement33.xml b/test/testcases/tests/level1/html/HTMLElement33.xml
new file mode 100644
index 0000000..4bd034b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement33.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement33">
+<metadata>
+<title>HTMLElement33</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the SPAN element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"span"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"SPAN Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement34.xml b/test/testcases/tests/level1/html/HTMLElement34.xml
new file mode 100644
index 0000000..81b4ee5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement34.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement34">
+<metadata>
+<title>HTMLElement34</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the BDO element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"bdo"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"BDO Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement35.xml b/test/testcases/tests/level1/html/HTMLElement35.xml
new file mode 100644
index 0000000..d3fa86d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement35.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement35">
+<metadata>
+<title>HTMLElement35</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the TT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tt"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"TT Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement36.xml b/test/testcases/tests/level1/html/HTMLElement36.xml
new file mode 100644
index 0000000..8c5929c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement36.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement36">
+<metadata>
+<title>HTMLElement36</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the I element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"i"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"I Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement37.xml b/test/testcases/tests/level1/html/HTMLElement37.xml
new file mode 100644
index 0000000..72cb816
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement37.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement37">
+<metadata>
+<title>HTMLElement37</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the B element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"b"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"B Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement38.xml b/test/testcases/tests/level1/html/HTMLElement38.xml
new file mode 100644
index 0000000..4f63799
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement38.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement38">
+<metadata>
+<title>HTMLElement38</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the U element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"u"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"U Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement39.xml b/test/testcases/tests/level1/html/HTMLElement39.xml
new file mode 100644
index 0000000..d7a7e9c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement39.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement39">
+<metadata>
+<title>HTMLElement39</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the S element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"s"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"S Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement40.xml b/test/testcases/tests/level1/html/HTMLElement40.xml
new file mode 100644
index 0000000..8da28d4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement40.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement40">
+<metadata>
+<title>HTMLElement40</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the STRIKE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"strike"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"STRIKE Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement41.xml b/test/testcases/tests/level1/html/HTMLElement41.xml
new file mode 100644
index 0000000..3deaa21
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement41.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement41">
+<metadata>
+<title>HTMLElement41</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the BIG element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"big"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"BIG Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement42.xml b/test/testcases/tests/level1/html/HTMLElement42.xml
new file mode 100644
index 0000000..6c03d0c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement42.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement42">
+<metadata>
+<title>HTMLElement42</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the SMALL element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"small"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"SMALL Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement43.xml b/test/testcases/tests/level1/html/HTMLElement43.xml
new file mode 100644
index 0000000..21090c9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement43.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement43">
+<metadata>
+<title>HTMLElement43</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the EM element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"em"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"EM Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement44.xml b/test/testcases/tests/level1/html/HTMLElement44.xml
new file mode 100644
index 0000000..ee7bcb5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement44.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement44">
+<metadata>
+<title>HTMLElement44</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the STRONG element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"strong"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"STRONG Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement45.xml b/test/testcases/tests/level1/html/HTMLElement45.xml
new file mode 100644
index 0000000..1dd4ac4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement45.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement45">
+<metadata>
+<title>HTMLElement45</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the DFN element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dfn"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"DFN Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement46.xml b/test/testcases/tests/level1/html/HTMLElement46.xml
new file mode 100644
index 0000000..0de73a7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement46.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement46">
+<metadata>
+<title>HTMLElement46</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the CODE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"code"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"CODE Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement47.xml b/test/testcases/tests/level1/html/HTMLElement47.xml
new file mode 100644
index 0000000..06bca2d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement47.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement47">
+<metadata>
+<title>HTMLElement47</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the SAMP element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"samp"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"SAMP Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement48.xml b/test/testcases/tests/level1/html/HTMLElement48.xml
new file mode 100644
index 0000000..e0663ac
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement48.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement48">
+<metadata>
+<title>HTMLElement48</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the KBD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"kbd"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"KBD Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement49.xml b/test/testcases/tests/level1/html/HTMLElement49.xml
new file mode 100644
index 0000000..d2541cc
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement49.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement49">
+<metadata>
+<title>HTMLElement49</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the VAR element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"var"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"VAR Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement50.xml b/test/testcases/tests/level1/html/HTMLElement50.xml
new file mode 100644
index 0000000..e01f5ff
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement50.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement50">
+<metadata>
+<title>HTMLElement50</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the CITE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"cite"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"CITE Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement51.xml b/test/testcases/tests/level1/html/HTMLElement51.xml
new file mode 100644
index 0000000..2a48a44
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement51.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement51">
+<metadata>
+<title>HTMLElement51</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the ACRONYM element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"acronym"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"ACRONYM Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement52.xml b/test/testcases/tests/level1/html/HTMLElement52.xml
new file mode 100644
index 0000000..dcbe2fe
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement52.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement52">
+<metadata>
+<title>HTMLElement52</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the ABBR element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"abbr"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"ABBR Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement53.xml b/test/testcases/tests/level1/html/HTMLElement53.xml
new file mode 100644
index 0000000..2706897
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement53.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement53">
+<metadata>
+<title>HTMLElement53</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the DD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dd"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"DD Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement54.xml b/test/testcases/tests/level1/html/HTMLElement54.xml
new file mode 100644
index 0000000..c8c85ff
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement54.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement54">
+<metadata>
+<title>HTMLElement54</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the DT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dt"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"DT Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement55.xml b/test/testcases/tests/level1/html/HTMLElement55.xml
new file mode 100644
index 0000000..04aba47
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement55.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement55">
+<metadata>
+<title>HTMLElement55</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the NOFRAMES element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"noframes"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"NOFRAMES Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement56.xml b/test/testcases/tests/level1/html/HTMLElement56.xml
new file mode 100644
index 0000000..5e42819
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement56.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement56">
+<metadata>
+<title>HTMLElement56</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the NOSCRIPT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"noscript"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"NOSCRIPT Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement57.xml b/test/testcases/tests/level1/html/HTMLElement57.xml
new file mode 100644
index 0000000..d76bdf6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement57.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement57">
+<metadata>
+<title>HTMLElement57</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the ADDRESS element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"address"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"ADDRESS Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement58.xml b/test/testcases/tests/level1/html/HTMLElement58.xml
new file mode 100644
index 0000000..d276c21
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement58.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement58">
+<metadata>
+<title>HTMLElement58</title>
+<creator>NIST</creator>
+<description>
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the CENTER element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"center"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<title interface="HTMLElement" obj="testNode" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"CENTER Element"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement59.xml b/test/testcases/tests/level1/html/HTMLElement59.xml
new file mode 100644
index 0000000..05ceca7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement59.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement59">
+<metadata>
+<title>HTMLElement59</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the HEAD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"head"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement60.xml b/test/testcases/tests/level1/html/HTMLElement60.xml
new file mode 100644
index 0000000..52c8d8c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement60.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement60">
+<metadata>
+<title>HTMLElement60</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the SUB element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"sub"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement61.xml b/test/testcases/tests/level1/html/HTMLElement61.xml
new file mode 100644
index 0000000..26b387e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement61.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement61">
+<metadata>
+<title>HTMLElement61</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the SUP element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"sup"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement62.xml b/test/testcases/tests/level1/html/HTMLElement62.xml
new file mode 100644
index 0000000..e535016
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement62.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement62">
+<metadata>
+<title>HTMLElement62</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the SPAN element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"span"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement63.xml b/test/testcases/tests/level1/html/HTMLElement63.xml
new file mode 100644
index 0000000..3a3d680
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement63.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement63">
+<metadata>
+<title>HTMLElement63</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the BDO element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"bdo"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement64.xml b/test/testcases/tests/level1/html/HTMLElement64.xml
new file mode 100644
index 0000000..8d0278a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement64.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement64">
+<metadata>
+<title>HTMLElement64</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the TT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tt"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement65.xml b/test/testcases/tests/level1/html/HTMLElement65.xml
new file mode 100644
index 0000000..980a814
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement65.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement65">
+<metadata>
+<title>HTMLElement65</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the I element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"i"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement66.xml b/test/testcases/tests/level1/html/HTMLElement66.xml
new file mode 100644
index 0000000..408e257
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement66.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement66">
+<metadata>
+<title>HTMLElement66</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the B element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"b"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement67.xml b/test/testcases/tests/level1/html/HTMLElement67.xml
new file mode 100644
index 0000000..8ec55b6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement67.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement67">
+<metadata>
+<title>HTMLElement67</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the U element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"u"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement68.xml b/test/testcases/tests/level1/html/HTMLElement68.xml
new file mode 100644
index 0000000..31c8fd1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement68.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement68">
+<metadata>
+<title>HTMLElement68</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the S element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"s"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement69.xml b/test/testcases/tests/level1/html/HTMLElement69.xml
new file mode 100644
index 0000000..4d91457
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement69.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement69">
+<metadata>
+<title>HTMLElement69</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the STRIKE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"strike"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement70.xml b/test/testcases/tests/level1/html/HTMLElement70.xml
new file mode 100644
index 0000000..573b4e7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement70.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement70">
+<metadata>
+<title>HTMLElement70</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the BIG element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"big"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement71.xml b/test/testcases/tests/level1/html/HTMLElement71.xml
new file mode 100644
index 0000000..0f61aff
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement71.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement71">
+<metadata>
+<title>HTMLElement71</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the SMALL element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"small"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement72.xml b/test/testcases/tests/level1/html/HTMLElement72.xml
new file mode 100644
index 0000000..db51dfe
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement72.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement72">
+<metadata>
+<title>HTMLElement72</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the EM element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"em"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement73.xml b/test/testcases/tests/level1/html/HTMLElement73.xml
new file mode 100644
index 0000000..ae9cd94
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement73.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement73">
+<metadata>
+<title>HTMLElement73</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the STRONG element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"strong"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement74.xml b/test/testcases/tests/level1/html/HTMLElement74.xml
new file mode 100644
index 0000000..4fc7aaf
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement74.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement74">
+<metadata>
+<title>HTMLElement74</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the DFN element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dfn"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement75.xml b/test/testcases/tests/level1/html/HTMLElement75.xml
new file mode 100644
index 0000000..57d72bd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement75.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement75">
+<metadata>
+<title>HTMLElement75</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the CODE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"code"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement76.xml b/test/testcases/tests/level1/html/HTMLElement76.xml
new file mode 100644
index 0000000..c4deb69
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement76.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement76">
+<metadata>
+<title>HTMLElement76</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the SAMP element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"samp"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement77.xml b/test/testcases/tests/level1/html/HTMLElement77.xml
new file mode 100644
index 0000000..93b4593
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement77.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement77">
+<metadata>
+<title>HTMLElement77</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the KBD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"kbd"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement78.xml b/test/testcases/tests/level1/html/HTMLElement78.xml
new file mode 100644
index 0000000..3c1f372
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement78.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement78">
+<metadata>
+<title>HTMLElement78</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the VAR element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"var"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement79.xml b/test/testcases/tests/level1/html/HTMLElement79.xml
new file mode 100644
index 0000000..754be53
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement79.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement79">
+<metadata>
+<title>HTMLElement79</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the CITE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"cite"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement80.xml b/test/testcases/tests/level1/html/HTMLElement80.xml
new file mode 100644
index 0000000..52c3c11
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement80.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement80">
+<metadata>
+<title>HTMLElement80</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the ACRONYM element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"acronym"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement81.xml b/test/testcases/tests/level1/html/HTMLElement81.xml
new file mode 100644
index 0000000..8fe8c7b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement81.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement81">
+<metadata>
+<title>HTMLElement81</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the ABBR element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"abbr"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement82.xml b/test/testcases/tests/level1/html/HTMLElement82.xml
new file mode 100644
index 0000000..083b5ca
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement82.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement82">
+<metadata>
+<title>HTMLElement82</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the DD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dd"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement83.xml b/test/testcases/tests/level1/html/HTMLElement83.xml
new file mode 100644
index 0000000..7eb8d81
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement83.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement83">
+<metadata>
+<title>HTMLElement83</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the DT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dt"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement84.xml b/test/testcases/tests/level1/html/HTMLElement84.xml
new file mode 100644
index 0000000..df253ec
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement84.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement84">
+<metadata>
+<title>HTMLElement84</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the NOFRAMES element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"noframes"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement85.xml b/test/testcases/tests/level1/html/HTMLElement85.xml
new file mode 100644
index 0000000..a1c7ea1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement85.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement85">
+<metadata>
+<title>HTMLElement85</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the NOSCRIPT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"noscript"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement86.xml b/test/testcases/tests/level1/html/HTMLElement86.xml
new file mode 100644
index 0000000..ab6f721
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement86.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement86">
+<metadata>
+<title>HTMLElement86</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the ADDRESS element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"address"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement87.xml b/test/testcases/tests/level1/html/HTMLElement87.xml
new file mode 100644
index 0000000..2da523e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement87.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement87">
+<metadata>
+<title>HTMLElement87</title>
+<creator>NIST</creator>
+<description>
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the CENTER element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlang" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"center"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lang interface="HTMLElement" obj="testNode" var="vlang"/>
+<assertEquals actual="vlang" expected='"en"' id="langLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement88.xml b/test/testcases/tests/level1/html/HTMLElement88.xml
new file mode 100644
index 0000000..eacdebc
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement88.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement88">
+<metadata>
+<title>HTMLElement88</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the HEAD element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"head"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement89.xml b/test/testcases/tests/level1/html/HTMLElement89.xml
new file mode 100644
index 0000000..4e5b314
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement89.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement89">
+<metadata>
+<title>HTMLElement89</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the SUB element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"sub"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement90.xml b/test/testcases/tests/level1/html/HTMLElement90.xml
new file mode 100644
index 0000000..63aae58
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement90.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement90">
+<metadata>
+<title>HTMLElement90</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the SUP element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"sup"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement91.xml b/test/testcases/tests/level1/html/HTMLElement91.xml
new file mode 100644
index 0000000..6f80a9b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement91.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement91">
+<metadata>
+<title>HTMLElement91</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the SPAN element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"span"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement92.xml b/test/testcases/tests/level1/html/HTMLElement92.xml
new file mode 100644
index 0000000..483b97f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement92.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement92">
+<metadata>
+<title>HTMLElement92</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the BDO element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"bdo"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement93.xml b/test/testcases/tests/level1/html/HTMLElement93.xml
new file mode 100644
index 0000000..c9b0dbc
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement93.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement93">
+<metadata>
+<title>HTMLElement93</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the TT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tt"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement94.xml b/test/testcases/tests/level1/html/HTMLElement94.xml
new file mode 100644
index 0000000..f366f7b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement94.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement94">
+<metadata>
+<title>HTMLElement94</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the I element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"i"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement95.xml b/test/testcases/tests/level1/html/HTMLElement95.xml
new file mode 100644
index 0000000..ab7d2e3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement95.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement95">
+<metadata>
+<title>HTMLElement95</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the B element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"b"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement96.xml b/test/testcases/tests/level1/html/HTMLElement96.xml
new file mode 100644
index 0000000..fdf8bb3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement96.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement96">
+<metadata>
+<title>HTMLElement96</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the U element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"u"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement97.xml b/test/testcases/tests/level1/html/HTMLElement97.xml
new file mode 100644
index 0000000..753becc
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement97.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement97">
+<metadata>
+<title>HTMLElement97</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the S element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"s"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement98.xml b/test/testcases/tests/level1/html/HTMLElement98.xml
new file mode 100644
index 0000000..dc7b849
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement98.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement98">
+<metadata>
+<title>HTMLElement98</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the STRIKE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"strike"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLElement99.xml b/test/testcases/tests/level1/html/HTMLElement99.xml
new file mode 100644
index 0000000..46de389
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLElement99.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLElement99">
+<metadata>
+<title>HTMLElement99</title>
+<creator>NIST</creator>
+<description>
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the BIG element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdir" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="element" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"big"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dir interface="HTMLElement" obj="testNode" var="vdir"/>
+<assertEquals actual="vdir" expected='"ltr"' id="dirLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFieldSetElement01.xml b/test/testcases/tests/level1/html/HTMLFieldSetElement01.xml
new file mode 100644
index 0000000..b6c6e98
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFieldSetElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFieldSetElement01">
+<metadata>
+<title>HTMLFieldSetElement01</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75392630"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="DOMString" />
+<var name="fNode" type="HTMLFormElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="fieldset" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"fieldset"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLFieldSetElement" obj="testNode" var="fNode"/>
+<id obj="fNode" var="vform"/>
+<assertEquals actual="vform" expected='"form2"' id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFieldSetElement02.xml b/test/testcases/tests/level1/html/HTMLFieldSetElement02.xml
new file mode 100644
index 0000000..09d0877
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFieldSetElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFieldSetElement02">
+<metadata>
+<title>HTMLFieldSetElement02</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the form attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75392630"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="HTMLFormElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="fieldset" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"fieldset"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<form interface="HTMLFieldSetElement" obj="testNode" var="vform"/>
+<assertNull actual="vform" id="formNullLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFontElement01.xml b/test/testcases/tests/level1/html/HTMLFontElement01.xml
new file mode 100644
index 0000000..48f0994
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFontElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFontElement01">
+<metadata>
+<title>HTMLFontElement01</title>
+<creator>NIST</creator>
+<description>
+ The color attribute specifies the font's color.
+
+ Retrieve the color attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53532975"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcolor" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="font" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"font"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<color interface="HTMLFontElement" obj="testNode" var="vcolor"/>
+<assertEquals actual="vcolor" expected='"#000000"' id="colorLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFontElement02.xml b/test/testcases/tests/level1/html/HTMLFontElement02.xml
new file mode 100644
index 0000000..48e405e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFontElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFontElement02">
+<metadata>
+<title>HTMLFontElement02</title>
+<creator>NIST</creator>
+<description>
+ The face attribute specifies the font's face identifier.
+
+ Retrieve the face attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-55715655"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTML-HTMLFormElement-length"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vface" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="font" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"font"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<face interface="HTMLFontElement" obj="testNode" var="vface"/>
+<assertEquals actual="vface" expected='"arial,helvetica"' id="faceLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFontElement03.xml b/test/testcases/tests/level1/html/HTMLFontElement03.xml
new file mode 100644
index 0000000..82ced1a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFontElement03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFontElement03">
+<metadata>
+<title>HTMLFontElement03</title>
+<creator>NIST</creator>
+<description>
+ The size attribute specifies the font's size.
+
+ Retrieve the size attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90127284"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsize" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="font" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"font"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<size interface="HTMLFontElement" obj="testNode" var="vsize"/>
+<assertEquals actual="vsize" expected='"4"' id="sizeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFormElement01.xml b/test/testcases/tests/level1/html/HTMLFormElement01.xml
new file mode 100644
index 0000000..057fac5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFormElement01.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFormElement01">
+<metadata>
+<title>HTMLFormElement01</title>
+<creator>NIST</creator>
+<description>
+ The elements attribute specifies a collection of all control element
+ in the form.
+
+ Retrieve the elements attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76728479"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="elementnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="velements" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="form" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<elements interface="HTMLFormElement" obj="testNode" var="elementnodeList"/>
+<length interface="HTMLCollection" obj="elementnodeList" var="velements"/>
+<assertEquals actual="velements" expected="3" id="elementsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFormElement02.xml b/test/testcases/tests/level1/html/HTMLFormElement02.xml
new file mode 100644
index 0000000..06abf8d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFormElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFormElement02">
+<metadata>
+<title>HTMLFormElement02</title>
+<creator>NIST</creator>
+<description>
+ The length attribute specifies the number of form controls
+ in the form.
+
+ Retrieve the length attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40002357"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTML-HTMLFormElement-length"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlength" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="form" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<length interface="HTMLFormElement" obj="testNode" var="vlength"/>
+<assertEquals actual="vlength" expected="3" id="lengthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFormElement03.xml b/test/testcases/tests/level1/html/HTMLFormElement03.xml
new file mode 100644
index 0000000..50332f9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFormElement03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFormElement03">
+<metadata>
+<title>HTMLFormElement03</title>
+<creator>NIST</creator>
+<description>
+ The id(name) attribute specifies the name of the form.
+
+ Retrieve the id attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22051454"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="form" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<id obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"form1"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFormElement04.xml b/test/testcases/tests/level1/html/HTMLFormElement04.xml
new file mode 100644
index 0000000..4077e36
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFormElement04.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFormElement04">
+<metadata>
+<title>HTMLFormElement04</title>
+<creator>NIST</creator>
+<description>
+ The acceptCharset attribute specifies the list of character sets
+ supported by the server.
+
+ Retrieve the acceptCharset attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19661795"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vacceptcharset" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="form" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<acceptCharset interface="HTMLFormElement" obj="testNode" var="vacceptcharset"/>
+<assertEquals actual="vacceptcharset" expected='"US-ASCII"' id="acceptCharsetLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFormElement05.xml b/test/testcases/tests/level1/html/HTMLFormElement05.xml
new file mode 100644
index 0000000..54a3436
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFormElement05.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFormElement05">
+<metadata>
+<title>HTMLFormElement05</title>
+<creator>NIST</creator>
+<description>
+ The action attribute specifies the server-side form handler.
+
+ Retrieve the action attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74049184"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaction" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="form" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<action interface="HTMLFormElement" obj="testNode" var="vaction"/>
+<assertURIEquals actual="vaction" file='"getData.pl"' id="actionLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFormElement06.xml b/test/testcases/tests/level1/html/HTMLFormElement06.xml
new file mode 100644
index 0000000..fb1ca95
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFormElement06.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFormElement06">
+<metadata>
+<title>HTMLFormElement06</title>
+<creator>NIST</creator>
+<description>
+ The enctype attribute specifies the content of the submitted form.
+
+ Retrieve the enctype attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84227810"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="venctype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="form" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<enctype interface="HTMLFormElement" obj="testNode" var="venctype"/>
+<assertEquals actual="venctype" expected='"application/x-www-form-urlencoded"' id="enctypeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFormElement07.xml b/test/testcases/tests/level1/html/HTMLFormElement07.xml
new file mode 100644
index 0000000..897b63d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFormElement07.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFormElement07">
+<metadata>
+<title>HTMLFormElement07</title>
+<creator>NIST</creator>
+<description>
+ The method attribute specifies the HTTP method used to submit the form.
+
+ Retrieve the method attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82545539"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmethod" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="form" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<method interface="HTMLFormElement" obj="testNode" var="vmethod"/>
+<assertEquals actual="vmethod" expected='"post"' id="methodLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFormElement08.xml b/test/testcases/tests/level1/html/HTMLFormElement08.xml
new file mode 100644
index 0000000..1a691cb
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFormElement08.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFormElement08">
+<metadata>
+<title>HTMLFormElement08</title>
+<creator>NIST</creator>
+<description>
+ The target attribute specifies the frame to render the resource in.
+
+ Retrieve the target attribute and examine it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6512890"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtarget" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="form2" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<target interface="HTMLFormElement" obj="testNode" var="vtarget"/>
+<assertEquals actual="vtarget" expected='"dynamic"' id="targetLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFormElement09.xml b/test/testcases/tests/level1/html/HTMLFormElement09.xml
new file mode 100644
index 0000000..4f552d6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFormElement09.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFormElement09">
+<metadata>
+<title>HTMLFormElement09</title>
+<creator>Curt Arnold</creator>
+<description>
+HTMLFormElement.reset restores the forms default values.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76767677"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="form2" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<reset interface="HTMLFormElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFormElement10.xml b/test/testcases/tests/level1/html/HTMLFormElement10.xml
new file mode 100644
index 0000000..8d1f3b4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFormElement10.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFormElement10">
+<metadata>
+<title>HTMLFormElement10</title>
+<creator>Curt Arnold</creator>
+<description>
+HTMLFormElement.submit submits the form.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76767676"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="form3" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<submit interface="HTMLFormElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement01.xml b/test/testcases/tests/level1/html/HTMLFrameElement01.xml
new file mode 100644
index 0000000..e74ef5e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement01.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFrameElement01">
+<metadata>
+<title>HTMLFrameElement01</title>
+<creator>NIST</creator>
+<description>
+ The frameBorder attribute specifies the request for frame borders.
+ (frameBorder=1 A border is drawn)
+ (FrameBorder=0 A border is not drawn)
+
+ Retrieve the frameBorder attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11858633"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vframeborder" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<frameBorder interface="HTMLFrameElement" obj="testNode" var="vframeborder"/>
+<assertEquals actual="vframeborder" expected='"1"' id="frameborderLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement02.xml b/test/testcases/tests/level1/html/HTMLFrameElement02.xml
new file mode 100644
index 0000000..e6197e7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFrameElement02">
+<metadata>
+<title>HTMLFrameElement02</title>
+<creator>NIST</creator>
+<description>
+ The longDesc attribute specifies a URI designating a long description
+ of this image or frame.
+
+ Retrieve the longDesc attribute of the first FRAME element and examine
+ its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7836998"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlongdesc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<longDesc interface="HTMLFrameElement" obj="testNode" var="vlongdesc"/>
+<assertEquals actual="vlongdesc" expected='"about:blank"' ignoreCase="false" id="longdescLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement03.xml b/test/testcases/tests/level1/html/HTMLFrameElement03.xml
new file mode 100644
index 0000000..601ad32
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFrameElement03">
+<metadata>
+<title>HTMLFrameElement03</title>
+<creator>NIST</creator>
+<description>
+ The marginHeight attribute specifies the frame margin height, in pixels.
+
+ Retrieve the marginHeight attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-55569778"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmarginheight" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<marginHeight interface="HTMLFrameElement" obj="testNode" var="vmarginheight"/>
+<assertEquals actual="vmarginheight" expected='"10"' id="marginheightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement04.xml b/test/testcases/tests/level1/html/HTMLFrameElement04.xml
new file mode 100644
index 0000000..85a6b3e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement04.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFrameElement04">
+<metadata>
+<title>HTMLFrameElement04</title>
+<creator>NIST</creator>
+<description>
+ The marginWidth attribute specifies the frame margin width, in pixels.
+
+ Retrieve the marginWidth attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8369969"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmarginwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<marginWidth interface="HTMLFrameElement" obj="testNode" var="vmarginwidth"/>
+<assertEquals actual="vmarginwidth" expected='"5"' id="marginwidthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement05.xml b/test/testcases/tests/level1/html/HTMLFrameElement05.xml
new file mode 100644
index 0000000..8df7700
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement05.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFrameElement05">
+<metadata>
+<title>HTMLFrameElement05</title>
+<creator>NIST</creator>
+<description>
+ The name attribute specifies the frame name(object of the target
+ attribute).
+
+ Retrieve the name attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91128709"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLFrameElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"Frame1"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement06.xml b/test/testcases/tests/level1/html/HTMLFrameElement06.xml
new file mode 100644
index 0000000..43f46e1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement06.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFrameElement06">
+<metadata>
+<title>HTMLFrameElement06</title>
+<creator>NIST</creator>
+<description>
+ The noResize attribute specifies if the user can resize the frame. When
+ true, forbid user from resizing frame.
+
+ Retrieve the noResize attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80766578"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vnoresize" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<noResize interface="HTMLFrameElement" obj="testNode" var="vnoresize"/>
+<assertTrue actual="vnoresize" id="noresizeLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement07.xml b/test/testcases/tests/level1/html/HTMLFrameElement07.xml
new file mode 100644
index 0000000..a7fdea4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFrameElement07">
+<metadata>
+<title>HTMLFrameElement07</title>
+<creator>NIST</creator>
+<description>
+ The scrolling attribute specifies whether or not the frame should have
+ scrollbars.
+
+ Retrieve the scrolling attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-45411424"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vscrolling" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<scrolling interface="HTMLFrameElement" obj="testNode" var="vscrolling"/>
+<assertEquals actual="vscrolling" expected='"yes"' id="scrollingLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement08.xml b/test/testcases/tests/level1/html/HTMLFrameElement08.xml
new file mode 100644
index 0000000..4b2843a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement08.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFrameElement08">
+<metadata>
+<title>HTMLFrameElement08</title>
+<creator>NIST</creator>
+<description>
+ The src attribute specifies a URI designating the initial frame contents.
+
+ Retrieve the src attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78799535"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsrc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<src interface="HTMLFrameElement" obj="testNode" var="vsrc"/>
+<assertURIEquals actual="vsrc" name='"right"' id="srcLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameSetElement01.xml b/test/testcases/tests/level1/html/HTMLFrameSetElement01.xml
new file mode 100644
index 0000000..18e5ff5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameSetElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFrameSetElement01">
+<metadata>
+<title>HTMLFrameSetElement01</title>
+<creator>NIST</creator>
+<description>
+ The cols attribute specifies the number of columns of frames in the
+ frameset.
+
+ Retrieve the cols attribute of the first FRAMESET element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98869594"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcols" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frameset" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"frameset"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<cols interface="HTMLFrameSetElement" obj="testNode" var="vcols"/>
+<assertEquals actual="vcols" expected='"20, 80"' id="colsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameSetElement02.xml b/test/testcases/tests/level1/html/HTMLFrameSetElement02.xml
new file mode 100644
index 0000000..e598cef
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameSetElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLFrameSetElement02">
+<metadata>
+<title>HTMLFrameSetElement02</title>
+<creator>NIST</creator>
+<description>
+ The rows attribute specifies the number of rows of frames in the
+ frameset.
+
+ Retrieve the rows attribute of the second FRAMESET element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19739247"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrows" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frameset" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"frameset"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rows interface="HTMLFrameSetElement" obj="testNode" var="vrows"/>
+<assertEquals actual="vrows" expected='"100, 200"' id="rowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHRElement01.xml b/test/testcases/tests/level1/html/HTMLHRElement01.xml
new file mode 100644
index 0000000..c074605
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHRElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHRElement01">
+<metadata>
+<title>HTMLHRElement01</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the rule alignment on the page.
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-15235012"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="hr" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"hr"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLHRElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHRElement02.xml b/test/testcases/tests/level1/html/HTMLHRElement02.xml
new file mode 100644
index 0000000..37f1293
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHRElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHRElement02">
+<metadata>
+<title>HTMLHRElement02</title>
+<creator>NIST</creator>
+<description>
+ The noShade attribute specifies that the rule should be drawn as
+ a solid color.
+
+ Retrieve the noShade attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79813978"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vnoshade" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="hr" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"hr"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<noShade interface="HTMLHRElement" obj="testNode" var="vnoshade"/>
+<assertTrue actual="vnoshade" id="noShadeLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHRElement03.xml b/test/testcases/tests/level1/html/HTMLHRElement03.xml
new file mode 100644
index 0000000..03ddebc
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHRElement03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHRElement03">
+<metadata>
+<title>HTMLHRElement03</title>
+<creator>NIST</creator>
+<description>
+ The size attribute specifies the height of the rule.
+
+ Retrieve the size attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77612587"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsize" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="hr" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"hr"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<size interface="HTMLHRElement" obj="testNode" var="vsize"/>
+<assertEquals actual="vsize" expected='"5"' id="sizeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHRElement04.xml b/test/testcases/tests/level1/html/HTMLHRElement04.xml
new file mode 100644
index 0000000..2090d14
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHRElement04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHRElement04">
+<metadata>
+<title>HTMLHRElement04</title>
+<creator>NIST</creator>
+<description>
+ The width attribute specifies the width of the rule.
+
+ Retrieve the width attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87744198"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="hr" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"hr"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<width interface="HTMLHRElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"400"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHeadElement01.xml b/test/testcases/tests/level1/html/HTMLHeadElement01.xml
new file mode 100644
index 0000000..a0fd82b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHeadElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHeadElement01">
+<metadata>
+<title>HTMLHeadElement01</title>
+<creator>NIST</creator>
+<description>
+ The profile attribute specifies a URI designating a metadata profile.
+
+ Retrieve the profile attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96921909"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vprofile" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="head" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"head"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<profile interface="HTMLHeadElement" obj="testNode" var="vprofile"/>
+<assertURIEquals actual="vprofile" file='"profile"' id="profileLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHeadingElement01.xml b/test/testcases/tests/level1/html/HTMLHeadingElement01.xml
new file mode 100644
index 0000000..3f8b9fa
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHeadingElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHeadingElement01">
+<metadata>
+<title>HTMLHeadingElement01</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal text alignment(H1).
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="heading" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"h1"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLHeadingElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHeadingElement02.xml b/test/testcases/tests/level1/html/HTMLHeadingElement02.xml
new file mode 100644
index 0000000..e74b428
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHeadingElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHeadingElement02">
+<metadata>
+<title>HTMLHeadingElement02</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal text alignment(H2).
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="heading" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"h2"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLHeadingElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"left"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHeadingElement03.xml b/test/testcases/tests/level1/html/HTMLHeadingElement03.xml
new file mode 100644
index 0000000..a03702b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHeadingElement03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHeadingElement03">
+<metadata>
+<title>HTMLHeadingElement03</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal text alignment(H3).
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="heading" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"h3"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLHeadingElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"right"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHeadingElement04.xml b/test/testcases/tests/level1/html/HTMLHeadingElement04.xml
new file mode 100644
index 0000000..9e16866
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHeadingElement04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHeadingElement04">
+<metadata>
+<title>HTMLHeadingElement04</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal text alignment(H4).
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="heading" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"h4"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLHeadingElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"justify"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHeadingElement05.xml b/test/testcases/tests/level1/html/HTMLHeadingElement05.xml
new file mode 100644
index 0000000..e732f74
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHeadingElement05.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHeadingElement05">
+<metadata>
+<title>HTMLHeadingElement05</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal text alignment(H5).
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="heading" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"h5"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLHeadingElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHeadingElement06.xml b/test/testcases/tests/level1/html/HTMLHeadingElement06.xml
new file mode 100644
index 0000000..3853483
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHeadingElement06.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHeadingElement06">
+<metadata>
+<title>HTMLHeadingElement06</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal text alignment(H6).
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="heading" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"h6"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLHeadingElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"left"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLHtmlElement01.xml b/test/testcases/tests/level1/html/HTMLHtmlElement01.xml
new file mode 100644
index 0000000..1ad206a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLHtmlElement01.xml
@@ -0,0 +1,47 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLHtmlElement01">
+<metadata>
+<title>HTMLHtmlElement01</title>
+<creator>NIST</creator>
+<description>
+ The version attribute specifies version information about the document's
+ DTD.
+
+ Retrieve the version attribute and examine its value.
+
+ Test is only applicable to HTML, version attribute is not supported in XHTML.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9383775"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vversion" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="html" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"html"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<version interface="HTMLHtmlElement" obj="testNode" var="vversion"/>
+<if><contentType type="text/html"/>
+ <assertEquals actual="vversion" expected='"-//W3C//DTD HTML 4.01 Transitional//EN"' id="versionLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement01.xml b/test/testcases/tests/level1/html/HTMLIFrameElement01.xml
new file mode 100644
index 0000000..1280955
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIFrameElement01">
+<metadata>
+<title>HTMLIFrameElement01</title>
+<creator>NIST</creator>
+<description>
+ The align attribute aligns this object(vertically or horizontally with
+ respect to its surrounding text.
+
+ Retrieve the align attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11309947"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLIFrameElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"top"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement02.xml b/test/testcases/tests/level1/html/HTMLIFrameElement02.xml
new file mode 100644
index 0000000..c815c67
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement02.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIFrameElement02">
+<metadata>
+<title>HTMLIFrameElement02</title>
+<creator>NIST</creator>
+<description>
+ The frameBorder attribute specifies the request for frame borders.
+ (frameBorder=1 A border is drawn)
+ (FrameBorder=0 A border is not drawn)
+
+ Retrieve the frameBorder attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22463410"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vframeborder" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<frameBorder interface="HTMLIFrameElement" obj="testNode" var="vframeborder"/>
+<assertEquals actual="vframeborder" expected='"1"' id="frameborderLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement03.xml b/test/testcases/tests/level1/html/HTMLIFrameElement03.xml
new file mode 100644
index 0000000..3842aa3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIFrameElement03">
+<metadata>
+<title>HTMLIFrameElement03</title>
+<creator>NIST</creator>
+<description>
+ The height attribute specifies the frame height.
+
+ Retrieve the height attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-1678118"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheight" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<height interface="HTMLIFrameElement" obj="testNode" var="vheight"/>
+<assertEquals actual="vheight" expected='"50"' id="heightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement04.xml b/test/testcases/tests/level1/html/HTMLIFrameElement04.xml
new file mode 100644
index 0000000..65535fd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement04.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIFrameElement04">
+<metadata>
+<title>HTMLIFrameElement04</title>
+<creator>NIST</creator>
+<description>
+ The longDesc attribute specifies a URI designating a long description
+ of this image or frame.
+
+ Retrieve the longDesc attribute of the first IFRAME element and examine
+ its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70472105"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlongdesc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<longDesc interface="HTMLIFrameElement" obj="testNode" var="vlongdesc"/>
+<assertEquals actual="vlongdesc" expected='"about:blank"' ignoreCase="false" id="longdescLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement05.xml b/test/testcases/tests/level1/html/HTMLIFrameElement05.xml
new file mode 100644
index 0000000..5ba9855
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIFrameElement05">
+<metadata>
+<title>HTMLIFrameElement05</title>
+<creator>NIST</creator>
+<description>
+ The marginWidth attribute specifies the frame margin width, in pixels.
+
+ Retrieve the marginWidth attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66486595"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmarginwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<marginWidth interface="HTMLIFrameElement" obj="testNode" var="vmarginwidth"/>
+<assertEquals actual="vmarginwidth" expected='"5"' id="marginwidthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement06.xml b/test/testcases/tests/level1/html/HTMLIFrameElement06.xml
new file mode 100644
index 0000000..85654d7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement06.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIFrameElement06">
+<metadata>
+<title>HTMLIFrameElement06</title>
+<creator>NIST</creator>
+<description>
+ The marginHeight attribute specifies the frame margin height, in pixels.
+
+ Retrieve the marginHeight attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91371294"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmarginheight" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<marginHeight interface="HTMLIFrameElement" obj="testNode" var="vmarginheight"/>
+<assertEquals actual="vmarginheight" expected='"10"' id="marginheightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement07.xml b/test/testcases/tests/level1/html/HTMLIFrameElement07.xml
new file mode 100644
index 0000000..8143aa5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIFrameElement07">
+<metadata>
+<title>HTMLIFrameElement07</title>
+<creator>NIST</creator>
+<description>
+ The name attribute specifies the frame name(object of the target
+ attribute).
+
+ Retrieve the name attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96819659"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLIFrameElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"Iframe1"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement08.xml b/test/testcases/tests/level1/html/HTMLIFrameElement08.xml
new file mode 100644
index 0000000..729c1a9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement08.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIFrameElement08">
+<metadata>
+<title>HTMLIFrameElement08</title>
+<creator>NIST</creator>
+<description>
+ The scrolling attribute specifies whether or not the frame should have
+ scrollbars.
+
+ Retrieve the scrolling attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36369822"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vscrolling" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<scrolling interface="HTMLIFrameElement" obj="testNode" var="vscrolling"/>
+<assertEquals actual="vscrolling" expected='"yes"' id="scrollingLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement09.xml b/test/testcases/tests/level1/html/HTMLIFrameElement09.xml
new file mode 100644
index 0000000..e9cc84b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement09.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIFrameElement09">
+<metadata>
+<title>HTMLIFrameElement09</title>
+<creator>NIST</creator>
+<description>
+ The src attribute specifies a URI designating the initial frame contents.
+
+ Retrieve the src attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-43933957"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsrc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<src interface="HTMLIFrameElement" obj="testNode" var="vsrc"/>
+<assertURIEquals actual="vsrc" name='"right"' id="srcLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement10.xml b/test/testcases/tests/level1/html/HTMLIFrameElement10.xml
new file mode 100644
index 0000000..7278bb4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement10.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIFrameElement10">
+<metadata>
+<title>HTMLIFrameElement10</title>
+<creator>NIST</creator>
+<description>
+ The width attribute specifies the frame width.
+
+ Retrieve the width attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67133005"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<width interface="HTMLIFrameElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"60"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement01.xml b/test/testcases/tests/level1/html/HTMLImageElement01.xml
new file mode 100644
index 0000000..ca61559
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement01">
+<metadata>
+<title>HTMLImageElement01</title>
+<creator>NIST</creator>
+<description>
+ The name attribute specifies the name of the element.
+
+ Retrieve the name attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47534097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLImageElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"IMAGE-1"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement02.xml b/test/testcases/tests/level1/html/HTMLImageElement02.xml
new file mode 100644
index 0000000..f314888
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement02">
+<metadata>
+<title>HTMLImageElement02</title>
+<creator>NIST</creator>
+<description>
+ The align attribute aligns this object with respect to its surrounding
+ text.
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-3211094"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLImageElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"middle"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement03.xml b/test/testcases/tests/level1/html/HTMLImageElement03.xml
new file mode 100644
index 0000000..75716f9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement03">
+<metadata>
+<title>HTMLImageElement03</title>
+<creator>NIST</creator>
+<description>
+ The alt attribute specifies an alternative text for user agenst not
+ rendering the normal content of this element.
+
+ Retrieve the alt attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95636861"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valt" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<alt interface="HTMLImageElement" obj="testNode" var="valt"/>
+<assertEquals actual="valt" expected='"DTS IMAGE LOGO"' id="altLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement04.xml b/test/testcases/tests/level1/html/HTMLImageElement04.xml
new file mode 100644
index 0000000..80a30b0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement04">
+<metadata>
+<title>HTMLImageElement04</title>
+<creator>NIST</creator>
+<description>
+ The border attribute specifies the width of the border around the image.
+
+ Retrieve the border attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-136671"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vborder" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<border interface="HTMLImageElement" obj="testNode" var="vborder"/>
+<assertEquals actual="vborder" expected='"0"' id="borderLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement05.xml b/test/testcases/tests/level1/html/HTMLImageElement05.xml
new file mode 100644
index 0000000..169b5ff
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement05.xml
@@ -0,0 +1,49 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement05">
+<metadata>
+<title>HTMLImageElement05</title>
+<creator>NIST</creator>
+<description>
+ The height attribute overrides the natural "height" of the image. Retrieve the height attribute and examine its value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91561496"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheight" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="img" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<height interface="HTMLImageElement" obj="testNode" var="vheight"/>
+<assertEquals actual="vheight" expected='"47"' id="heightLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement06.xml b/test/testcases/tests/level1/html/HTMLImageElement06.xml
new file mode 100644
index 0000000..f95cef7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement06.xml
@@ -0,0 +1,52 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement06">
+<metadata>
+<title>HTMLImageElement06</title>
+<creator>NIST</creator>
+<description>
+ The hspace attribute specifies the horizontal space to the left and
+ right of this image.
+
+ Retrieve the hspace attribute and examine its value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53675471"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhspace" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="img" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<hspace interface="HTMLImageElement" obj="testNode" var="vhspace"/>
+<assertEquals actual="vhspace" expected='"4"' id="hspaceLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement07.xml b/test/testcases/tests/level1/html/HTMLImageElement07.xml
new file mode 100644
index 0000000..faca09e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement07.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement07">
+<metadata>
+<title>HTMLImageElement07</title>
+<creator>NIST</creator>
+<description>
+ The isMap attribute indicates the use of server-side image map.
+
+ Retrieve the isMap attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58983880"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vismap" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<isMap interface="HTMLImageElement" obj="testNode" var="vismap"/>
+<assertFalse actual="vismap" id="isMapLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement08.xml b/test/testcases/tests/level1/html/HTMLImageElement08.xml
new file mode 100644
index 0000000..e7bedbf
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement08.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement08">
+<metadata>
+<title>HTMLImageElement08</title>
+<creator>NIST</creator>
+<description>
+ The longDesc attribute contains an URI designating a long description
+ of this image or frame.
+
+ Retrieve the longDesc attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77376969"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlongdesc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<longDesc interface="HTMLImageElement" obj="testNode" var="vlongdesc"/>
+<assertURIEquals actual="vlongdesc" file='"desc.html"' id="longDescLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement09.xml b/test/testcases/tests/level1/html/HTMLImageElement09.xml
new file mode 100644
index 0000000..6d0f584
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement09.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement09">
+<metadata>
+<title>HTMLImageElement09</title>
+<creator>NIST</creator>
+<description>
+ The src attribute contains an URI designating the source of this image.
+
+ Retrieve the src attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87762984"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsrc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<src interface="HTMLImageElement" obj="testNode" var="vsrc"/>
+<assertURIEquals actual="vsrc" file='"dts.gif"' id="srcLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement10.xml b/test/testcases/tests/level1/html/HTMLImageElement10.xml
new file mode 100644
index 0000000..3c13080
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement10.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement10">
+<metadata>
+<title>HTMLImageElement10</title>
+<creator>NIST</creator>
+<description>
+ The useMap attribute specifies to use the client-side image map.
+
+ Retrieve the useMap attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35981181"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vusemap" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<useMap interface="HTMLImageElement" obj="testNode" var="vusemap"/>
+<assertEquals actual="vusemap" expected='"#DTS-MAP"' id="useMapLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement11.xml b/test/testcases/tests/level1/html/HTMLImageElement11.xml
new file mode 100644
index 0000000..bd3940e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement11.xml
@@ -0,0 +1,52 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement11">
+<metadata>
+<title>HTMLImageElement11</title>
+<creator>NIST</creator>
+<description>
+ The vspace attribute specifies the vertical space above and below this
+ image.
+
+ Retrieve the vspace attribute and examine its value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85374897"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvspace" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="img" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vspace interface="HTMLImageElement" obj="testNode" var="vvspace"/>
+<assertEquals actual="vvspace" expected='"10"' id="vspaceLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement12.xml b/test/testcases/tests/level1/html/HTMLImageElement12.xml
new file mode 100644
index 0000000..05dd9de
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement12.xml
@@ -0,0 +1,51 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement12">
+<metadata>
+<title>HTMLImageElement12</title>
+<creator>NIST</creator>
+<description>
+ The width attribute overrides the natural "width" of the image.
+
+ Retrieve the width attribute and examine its value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13839076"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="img" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<width interface="HTMLImageElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"115"' id="widthLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLImageElement14.xml b/test/testcases/tests/level1/html/HTMLImageElement14.xml
new file mode 100644
index 0000000..3edc980
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLImageElement14.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLImageElement14">
+<metadata>
+<title>HTMLImageElement14</title>
+<creator>NIST</creator>
+<description>
+The lowSrc attribute specifies an URI designating a long description of
+this image or frame.
+
+Retrieve the lowSrc attribute of the first IMG element and examine
+its value. Should be "" since lowSrc is not a valid attribute for IMG.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-19</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91256910"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlow" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"img"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<lowSrc interface="HTMLImageElement" obj="testNode" var="vlow"/>
+<assertEquals actual="vlow" expected='""' id="lowLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement01.xml b/test/testcases/tests/level1/html/HTMLInputElement01.xml
new file mode 100644
index 0000000..67df3ec
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement01">
+<metadata>
+<title>HTMLInputElement01</title>
+<creator>NIST</creator>
+<description>
+ The defaultValue attribute represents the HTML value of the attribute
+ when the type attribute has the value of "Text", "File" or "Password".
+
+ Retrieve the defaultValue attribute of the 1st INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26091157"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdefaultvalue" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<defaultValue interface="HTMLInputElement" obj="testNode" var="vdefaultvalue"/>
+<assertEquals actual="vdefaultvalue" expected='"Password"' id="defaultValueLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement02.xml b/test/testcases/tests/level1/html/HTMLInputElement02.xml
new file mode 100644
index 0000000..127337c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement02">
+<metadata>
+<title>HTMLInputElement02</title>
+<creator>NIST</creator>
+<description>
+ The defaultChecked attribute represents the HTML checked attribute of
+ the element when the type attribute has the value checkbox or radio.
+
+ Retrieve the defaultValue attribute of the 4th INPUT element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20509171"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdefaultchecked" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<defaultChecked interface="HTMLInputElement" obj="testNode" var="vdefaultchecked"/>
+<assertTrue actual="vdefaultchecked" id="defaultCheckedLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement03.xml b/test/testcases/tests/level1/html/HTMLInputElement03.xml
new file mode 100644
index 0000000..93c994f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement03.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement03">
+<metadata>
+<title>HTMLInputElement03</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute of the 1st INPUT element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63239895"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="DOMString" />
+<var name="fNode" type="HTMLFormElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLInputElement" obj="testNode" var="fNode"/>
+<id obj="fNode" var="vform"/>
+<assertEquals actual="vform" expected='"form1"' id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement04.xml b/test/testcases/tests/level1/html/HTMLInputElement04.xml
new file mode 100644
index 0000000..58adad5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement04.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement04">
+<metadata>
+<title>HTMLInputElement04</title>
+<creator>NIST</creator>
+<description>
+ The accept attribute is a comma-seperated list of content types that
+ a server processing this form will handle correctly.
+
+ Retrieve the accept attribute of the 9th INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-15328520"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaccept" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="8"/>
+<accept interface="HTMLInputElement" obj="testNode" var="vaccept"/>
+<assertEquals actual="vaccept" expected='"GIF,JPEG"' id="acceptLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement05.xml b/test/testcases/tests/level1/html/HTMLInputElement05.xml
new file mode 100644
index 0000000..c5d8351
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement05.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement05">
+<metadata>
+<title>HTMLInputElement05</title>
+<creator>NIST</creator>
+<description>
+ The accessKey attribute is a single character access key to give access
+ to the form control.
+
+ Retrieve the accessKey attribute of the 2nd INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59914154"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaccesskey" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<accessKey interface="HTMLInputElement" obj="testNode" var="vaccesskey"/>
+<assertEquals actual="vaccesskey" expected='"c"' id="accesskeyLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement06.xml b/test/testcases/tests/level1/html/HTMLInputElement06.xml
new file mode 100644
index 0000000..6dc9d11
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement06.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement06">
+<metadata>
+<title>HTMLInputElement06</title>
+<creator>NIST</creator>
+<description>
+ The align attribute aligns this object(vertically or horizontally)
+ with respect to the surrounding text.
+
+ Retrieve the align attribute of the 4th INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96991182"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<align interface="HTMLInputElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"bottom"' id="alignLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement07.xml b/test/testcases/tests/level1/html/HTMLInputElement07.xml
new file mode 100644
index 0000000..8f7e4b7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement07">
+<metadata>
+<title>HTMLInputElement07</title>
+<creator>NIST</creator>
+<description>
+ The alt attribute alternates text for user agents not rendering the
+ normal content of this element.
+
+ Retrieve the alt attribute of the 1st INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92701314"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valt" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<alt interface="HTMLInputElement" obj="testNode" var="valt"/>
+<assertEquals actual="valt" expected='"Password entry"' id="altLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement08.xml b/test/testcases/tests/level1/html/HTMLInputElement08.xml
new file mode 100644
index 0000000..3aa3a26
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement08.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement08">
+<metadata>
+<title>HTMLInputElement08</title>
+<creator>NIST</creator>
+<description>
+ The checked attribute represents the current state of the corresponding
+ form control when type has the value Radio or Checkbox.
+
+ Retrieve the accept attribute of the 3rd INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30233917"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vchecked" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="2"/>
+<checked interface="HTMLInputElement" obj="testNode" var="vchecked"/>
+<assertTrue actual="vchecked" id="checkedLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement09.xml b/test/testcases/tests/level1/html/HTMLInputElement09.xml
new file mode 100644
index 0000000..67b1d3b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement09.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement09">
+<metadata>
+<title>HTMLInputElement09</title>
+<creator>NIST</creator>
+<description>
+ The disabled attribute has a TRUE value if it is explicitly set.
+
+ Retrieve the disabled attribute of the 7th INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-50886781"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdisabled" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="6"/>
+<disabled interface="HTMLInputElement" obj="testNode" var="vdisabled"/>
+<assertTrue actual="vdisabled" id="disabledLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement10.xml b/test/testcases/tests/level1/html/HTMLInputElement10.xml
new file mode 100644
index 0000000..7f28589
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement10.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement10">
+<metadata>
+<title>HTMLInputElement10</title>
+<creator>NIST</creator>
+<description>
+ The maxLength attribute is the maximum number of text characters for text
+ fields, when type has the value of Text or Password.
+
+ Retrieve the maxLenght attribute of the 1st INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-54719353"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmaxlength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<maxLength interface="HTMLInputElement" obj="testNode" var="vmaxlength"/>
+<assertEquals actual="vmaxlength" expected="5" id="maxlengthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement11.xml b/test/testcases/tests/level1/html/HTMLInputElement11.xml
new file mode 100644
index 0000000..3113f9a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement11.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement11">
+<metadata>
+<title>HTMLInputElement11</title>
+<creator>NIST</creator>
+<description>
+ The name attribute is the form control or object name when submitted with
+ a form.
+
+ Retrieve the name attribute of the 1st INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89658498"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLInputElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"Password"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement12.xml b/test/testcases/tests/level1/html/HTMLInputElement12.xml
new file mode 100644
index 0000000..d4cd099
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement12.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement12">
+<metadata>
+<title>HTMLInputElement12</title>
+<creator>NIST</creator>
+<description>
+ The readOnly attribute indicates that this control is read-only when
+ type has a value of text or password only.
+
+ Retrieve the readOnly attribute of the 1st INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88461592"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vreadonly" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<readOnly interface="HTMLInputElement" obj="testNode" var="vreadonly"/>
+<assertTrue actual="vreadonly" id="readonlyLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement13.xml b/test/testcases/tests/level1/html/HTMLInputElement13.xml
new file mode 100644
index 0000000..2c906d9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement13.xml
@@ -0,0 +1,54 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement13">
+<metadata>
+<title>HTMLInputElement13</title>
+<creator>NIST</creator>
+<description>
+ The size attribute contains the size information. Its precise meaning
+ is specific to each type of field.
+
+ Retrieve the size attribute of the 1st INPUT element and examine
+ its value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79659438"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsize" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="input" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<size interface="HTMLInputElement" obj="testNode" var="vsize"/>
+<assertEquals actual="vsize" expected='"25"' id="sizeLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement14.xml b/test/testcases/tests/level1/html/HTMLInputElement14.xml
new file mode 100644
index 0000000..82f022e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement14.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement14">
+<metadata>
+<title>HTMLInputElement14</title>
+<creator>NIST</creator>
+<description>
+ The src attribute specifies the location of the image to decorate the
+ graphical submit button when the type has the value Image.
+
+ Retrieve the src attribute of the 8th INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-97320704"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsrc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="7"/>
+<src interface="HTMLInputElement" obj="testNode" var="vsrc"/>
+<assertURIEquals actual="vsrc" file='"submit.gif"' id="srcLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement15.xml b/test/testcases/tests/level1/html/HTMLInputElement15.xml
new file mode 100644
index 0000000..a9a3c78
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement15.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement15">
+<metadata>
+<title>HTMLInputElement15</title>
+<creator>NIST</creator>
+<description>
+ The tabIndex attribute is an index that represents the elements position
+ in the tabbing order.
+
+ Retrieve the tabIndex attribute of the 3rd INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62176355"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtabindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="2"/>
+<tabIndex interface="HTMLInputElement" obj="testNode" var="vtabindex"/>
+<assertEquals actual="vtabindex" expected="9" id="tabindexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement16.xml b/test/testcases/tests/level1/html/HTMLInputElement16.xml
new file mode 100644
index 0000000..119a8b0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement16.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement16">
+<metadata>
+<title>HTMLInputElement16</title>
+<creator>NIST</creator>
+<description>
+ The type attribute is the type of control created.
+
+ Retrieve the type attribute of the 1st INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62883744"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLInputElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"password"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement17.xml b/test/testcases/tests/level1/html/HTMLInputElement17.xml
new file mode 100644
index 0000000..163eee4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement17.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement17">
+<metadata>
+<title>HTMLInputElement17</title>
+<creator>NIST</creator>
+<description>
+ The useMap attribute specifies the use of the client-side image map.
+
+ Retrieve the useMap attribute of the 8th INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32463706"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vusemap" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="7"/>
+<useMap interface="HTMLInputElement" obj="testNode" var="vusemap"/>
+<assertEquals actual="vusemap" expected='"#submit-map"' id="usemapLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement18.xml b/test/testcases/tests/level1/html/HTMLInputElement18.xml
new file mode 100644
index 0000000..85aca78
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement18.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement18">
+<metadata>
+<title>HTMLInputElement18</title>
+<creator>NIST</creator>
+<description>
+ The value attribute is the current content of the corresponding form
+ control when the type attribute has the value Text, File or Password.
+
+ Retrieve the value attribute of the 2nd INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-49531485"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalue" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<value interface="HTMLInputElement" obj="testNode" var="vvalue"/>
+<assertEquals actual="vvalue" expected='"ReHire"' id="valueLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement19.xml b/test/testcases/tests/level1/html/HTMLInputElement19.xml
new file mode 100644
index 0000000..ad4a00c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement19.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement19">
+<metadata>
+<title>HTMLInputElement19</title>
+<creator>Curt Arnold</creator>
+<description>
+HTMLInputElement.blur should surrender input focus.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26838235"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<blur interface="HTMLInputElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement20.xml b/test/testcases/tests/level1/html/HTMLInputElement20.xml
new file mode 100644
index 0000000..141473f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement20.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement20">
+<metadata>
+<title>HTMLInputElement20</title>
+<creator>Curt Arnold</creator>
+<description>
+HTMLInputElement.focus should capture input focus.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-65996295"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="input" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<focus interface="HTMLInputElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement21.xml b/test/testcases/tests/level1/html/HTMLInputElement21.xml
new file mode 100644
index 0000000..57fbc76
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement21.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement21">
+<metadata>
+<title>HTMLInputElement21</title>
+<creator>Curt Arnold</creator>
+<description>
+HTMLInputElement.click should change the state of checked on a radio button.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-2651361"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="checked" type="boolean"/>
+<load var="doc" href="input" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<checked var="checked" obj="testNode"/>
+<assertFalse actual="checked" id="notCheckedBeforeClick"/>
+<click interface="HTMLInputElement" obj="testNode"/>
+<checked var="checked" obj="testNode"/>
+<assertTrue actual="checked" id="checkedAfterClick"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement22.xml b/test/testcases/tests/level1/html/HTMLInputElement22.xml
new file mode 100644
index 0000000..0d65890
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement22.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLInputElement22">
+<metadata>
+<title>HTMLInputElement22</title>
+<creator>Curt Arnold</creator>
+<description>
+HTMLInputElement.select should select the contents of a text area.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-34677168"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="checked" type="boolean"/>
+<load var="doc" href="input" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<select interface="HTMLInputElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIsIndexElement01.xml b/test/testcases/tests/level1/html/HTMLIsIndexElement01.xml
new file mode 100644
index 0000000..e0da920
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIsIndexElement01.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIsIndexElement01">
+<metadata>
+<title>HTMLIsIndexElement01</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87069980"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="DOMString" />
+<var name="fNode" type="HTMLFormElement"/>
+<var name="doc" type="Document"/>
+<var name="prompt" type="DOMString"/>
+<load var="doc" href="isindex" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"isindex"'/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<assertNotNull id="notnull" actual="testNode"/>
+<!-- check contents of prompt -->
+<prompt interface="HTMLIsIndexElement" var="prompt" obj="testNode"/>
+<assertEquals id="IsIndex.Prompt" actual="prompt" expected='"New Employee: "' ignoreCase="false"/>
+<form interface="HTMLIsIndexElement" obj="testNode" var="fNode"/>
+<assertNotNull id="formNotNull" actual="fNode"/>
+<id obj="fNode" var="vform"/>
+<assertEquals actual="vform" expected='"form1"' id="formLink" ignoreCase="false"/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIsIndexElement02.xml b/test/testcases/tests/level1/html/HTMLIsIndexElement02.xml
new file mode 100644
index 0000000..af0cf07
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIsIndexElement02.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIsIndexElement02">
+<metadata>
+<title>HTMLIsIndexElement02</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the form attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87069980"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="HTMLFormElement" />
+<var name="doc" type="Document"/>
+<var name="prompt" type="DOMString"/>
+<load var="doc" href="isindex" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"isindex"'/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<assertNotNull id="notnull" actual="testNode"/>
+<!-- check contents of prompt -->
+<prompt interface="HTMLIsIndexElement" var="prompt" obj="testNode"/>
+<assertEquals id="IsIndex.Prompt" actual="prompt" expected='"Old Employee: "' ignoreCase="false"/>
+<!-- check form == null since not in context of a form -->
+<form interface="HTMLIsIndexElement" obj="testNode" var="vform"/>
+<assertNull actual="vform" id="formNullLink"/>
+<!-- check that we found 2 isindex elements -->
+<assertSize collection="nodeList" size="2" id="Asize"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIsIndexElement03.xml b/test/testcases/tests/level1/html/HTMLIsIndexElement03.xml
new file mode 100644
index 0000000..cc91d78
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIsIndexElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLIsIndexElement03">
+<metadata>
+<title>HTMLIsIndexElement03</title>
+<creator>NIST</creator>
+<description>
+ The prompt attribute specifies the prompt message.
+
+ Retrieve the prompt attribute of the 1st isindex element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33589862"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vprompt" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="isindex" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"isindex"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<prompt interface="HTMLIsIndexElement" obj="testNode" var="vprompt"/>
+<assertEquals actual="vprompt" expected='"New Employee: "' id="promptLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLIElement01.xml b/test/testcases/tests/level1/html/HTMLLIElement01.xml
new file mode 100644
index 0000000..2fe59d5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLIElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLIElement01">
+<metadata>
+<title>HTMLLIElement01</title>
+<creator>NIST</creator>
+<description>
+ The type attribute is a list item bullet style.
+
+ Retrieve the type attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52387668"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="li" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"li"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLLIElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"square"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLIElement02.xml b/test/testcases/tests/level1/html/HTMLLIElement02.xml
new file mode 100644
index 0000000..a397773
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLIElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLIElement02">
+<metadata>
+<title>HTMLLIElement02</title>
+<creator>NIST</creator>
+<description>
+ The value attribute is a reset sequence number when used in OL.
+
+ Retrieve the value attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-45496263"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalue" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="li" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"li"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<value interface="HTMLLIElement" obj="testNode" var="vvalue"/>
+<assertEquals actual="vvalue" expected="2" id="valueLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLabelElement01.xml b/test/testcases/tests/level1/html/HTMLLabelElement01.xml
new file mode 100644
index 0000000..2111d6e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLabelElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLabelElement01">
+<metadata>
+<title>HTMLLabelElement01</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32480901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="DOMString" />
+<var name="fNode" type="HTMLFormElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="label" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"label"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLLabelElement" obj="testNode" var="fNode"/>
+<id obj="fNode" var="vform"/>
+<assertEquals actual="vform" expected='"form1"' id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLabelElement02.xml b/test/testcases/tests/level1/html/HTMLLabelElement02.xml
new file mode 100644
index 0000000..444a753
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLabelElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLabelElement02">
+<metadata>
+<title>HTMLLabelElement02</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the form attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32480901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="HTMLFormElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="label" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"label"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<form interface="HTMLLabelElement" obj="testNode" var="vform"/>
+<assertNull actual="vform" id="formNullLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLabelElement03.xml b/test/testcases/tests/level1/html/HTMLLabelElement03.xml
new file mode 100644
index 0000000..b4daacf
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLabelElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLabelElement03">
+<metadata>
+<title>HTMLLabelElement03</title>
+<creator>NIST</creator>
+<description>
+ The accessKey attribute is a single character access key to give access
+ to the form control.
+
+ Retrieve the accessKey attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-43589892"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaccesskey" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="label" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"label"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<accessKey interface="HTMLLabelElement" obj="testNode" var="vaccesskey"/>
+<assertEquals actual="vaccesskey" expected='"b"' id="accesskeyLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLabelElement04.xml b/test/testcases/tests/level1/html/HTMLLabelElement04.xml
new file mode 100644
index 0000000..ae22b88
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLabelElement04.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLabelElement04">
+<metadata>
+<title>HTMLLabelElement04</title>
+<creator>NIST</creator>
+<description>
+ The htmlFor attribute links this label with another form control by
+ id attribute.
+
+ Retrieve the htmlFor attribute of the first LABEL element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96509813"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhtmlfor" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="label" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"label"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<htmlFor interface="HTMLLabelElement" obj="testNode" var="vhtmlfor"/>
+<assertEquals actual="vhtmlfor" expected='"input1"' id="htmlForLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLegendElement01.xml b/test/testcases/tests/level1/html/HTMLLegendElement01.xml
new file mode 100644
index 0000000..f478379
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLegendElement01.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLegendElement01">
+<metadata>
+<title>HTMLLLegendElement01</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute from the first LEGEND element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-29594519"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="DOMString" />
+<var name="fNode" type="HTMLFormElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="legend" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"legend"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLLegendElement" obj="testNode" var="fNode"/>
+<id obj="fNode" var="vform"/>
+<assertEquals actual="vform" expected='"form1"' id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLegendElement02.xml b/test/testcases/tests/level1/html/HTMLLegendElement02.xml
new file mode 100644
index 0000000..19cf87f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLegendElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLegendElement02">
+<metadata>
+<title>HTMLLegendElement02</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the second ELEMENT and examine its form element.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-29594519"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="HTMLFormElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="legend" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"legend"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<form interface="HTMLLegendElement" obj="testNode" var="vform"/>
+<assertNull actual="vform" id="formNullLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLegendElement03.xml b/test/testcases/tests/level1/html/HTMLLegendElement03.xml
new file mode 100644
index 0000000..a3747fd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLegendElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLegendElement03">
+<metadata>
+<title>HTMLLegendElement03</title>
+<creator>NIST</creator>
+<description>
+ The accessKey attribute is a single character access key to give access
+ to the form control.
+
+ Retrieve the accessKey attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11297832"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaccesskey" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="legend" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"legend"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<accessKey interface="HTMLLegendElement" obj="testNode" var="vaccesskey"/>
+<assertEquals actual="vaccesskey" expected='"b"' id="accesskeyLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLegendElement04.xml b/test/testcases/tests/level1/html/HTMLLegendElement04.xml
new file mode 100644
index 0000000..fa3e76c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLegendElement04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLegendElement04">
+<metadata>
+<title>HTMLLegendElement04</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the text alignment relative to FIELDSET.
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79538067"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="legend" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"legend"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLLegendElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"top"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLinkElement01.xml b/test/testcases/tests/level1/html/HTMLLinkElement01.xml
new file mode 100644
index 0000000..c9e2d16
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLinkElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLinkElement01">
+<metadata>
+<title>HTMLLinkElement01</title>
+<creator>NIST</creator>
+<description>
+ The disabled attribute enables/disables the link.
+
+ Retrieve the disabled attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87355129"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdisabled" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="link" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"link"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<disabled interface="HTMLLinkElement" obj="testNode" var="vdisabled"/>
+<assertFalse actual="vdisabled" id="disabled"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLinkElement02.xml b/test/testcases/tests/level1/html/HTMLLinkElement02.xml
new file mode 100644
index 0000000..ab0105a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLinkElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLinkElement02">
+<metadata>
+<title>HTMLLinkElement02</title>
+<creator>NIST</creator>
+<description>
+ The charset attribute indicates the character encoding of the linked
+ resource.
+
+ Retrieve the charset attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63954491"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcharset" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="link" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"link"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<charset interface="HTMLLinkElement" obj="testNode" var="vcharset"/>
+<assertEquals actual="vcharset" expected='"Latin-1"' id="charsetLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLinkElement03.xml b/test/testcases/tests/level1/html/HTMLLinkElement03.xml
new file mode 100644
index 0000000..fff36db
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLinkElement03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLinkElement03">
+<metadata>
+<title>HTMLLinkElement03</title>
+<creator>NIST</creator>
+<description>
+ The href attribute specifies the URI of the linked resource.
+
+ Retrieve the href attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33532588"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhref" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="link" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"link"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<href interface="HTMLLinkElement" obj="testNode" var="vhref"/>
+<assertURIEquals actual="vhref" file='"glossary.html"' id="hrefLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLinkElement04.xml b/test/testcases/tests/level1/html/HTMLLinkElement04.xml
new file mode 100644
index 0000000..924d945
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLinkElement04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLinkElement04">
+<metadata>
+<title>HTMLLinkElement04</title>
+<creator>NIST</creator>
+<description>
+ The hreflang attribute specifies the language code of the linked resource.
+
+ Retrieve the hreflang attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85145682"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhreflang" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="link" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"link"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<hreflang interface="HTMLLinkElement" obj="testNode" var="vhreflang"/>
+<assertEquals actual="vhreflang" expected='"en"' id="hreflangLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLinkElement05.xml b/test/testcases/tests/level1/html/HTMLLinkElement05.xml
new file mode 100644
index 0000000..cec4f35
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLinkElement05.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLinkElement05">
+<metadata>
+<title>HTMLLinkElement05</title>
+<creator>NIST</creator>
+<description>
+ The media attribute specifies the targeted media.
+
+ Retrieve the media attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75813125"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmedia" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="link" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"link"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<media interface="HTMLLinkElement" obj="testNode" var="vmedia"/>
+<assertEquals actual="vmedia" expected='"screen"' id="mediaLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLinkElement06.xml b/test/testcases/tests/level1/html/HTMLLinkElement06.xml
new file mode 100644
index 0000000..400e8ed
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLinkElement06.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLinkElement06">
+<metadata>
+<title>HTMLLinkElement06</title>
+<creator>NIST</creator>
+<description>
+ The rel attribute specifies the forward link type.
+
+ Retrieve the rel attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-41369587"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrel" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="link" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"link"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rel interface="HTMLLinkElement" obj="testNode" var="vrel"/>
+<assertEquals actual="vrel" expected='"Glossary"' id="relLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLinkElement07.xml b/test/testcases/tests/level1/html/HTMLLinkElement07.xml
new file mode 100644
index 0000000..71bbd8d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLinkElement07.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLinkElement07">
+<metadata>
+<title>HTMLLinkElement07</title>
+<creator>NIST</creator>
+<description>
+ The rev attribute specifies the reverse link type.
+
+ Retrieve the rev attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40715461"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrev" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="link" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"link"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rev interface="HTMLLinkElement" obj="testNode" var="vrev"/>
+<assertEquals actual="vrev" expected='"stylesheet"' id="revLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLinkElement08.xml b/test/testcases/tests/level1/html/HTMLLinkElement08.xml
new file mode 100644
index 0000000..657237d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLinkElement08.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLinkElement08">
+<metadata>
+<title>HTMLLinkElement08</title>
+<creator>NIST</creator>
+<description>
+ The type attribute specifies the advisory content type.
+
+ Retrieve the type attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32498296"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="link" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"link"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLLinkElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"text/html"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLLinkElement09.xml b/test/testcases/tests/level1/html/HTMLLinkElement09.xml
new file mode 100644
index 0000000..6fb55a8
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLLinkElement09.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLLinkElement09">
+<metadata>
+<title>HTMLLinkElement09</title>
+<creator>NIST</creator>
+<description>
+ The target attribute specifies the frame to render the resource in.
+
+ Retrieve the target attribute and examine it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84183095"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtarget" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="link2" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"link"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<target interface="HTMLLinkElement" obj="testNode" var="vtarget"/>
+<assertEquals actual="vtarget" expected='"dynamic"' id="targetLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLMapElement01.xml b/test/testcases/tests/level1/html/HTMLMapElement01.xml
new file mode 100644
index 0000000..01e2459
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLMapElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLMapElement01">
+<metadata>
+<title>HTMLMapElement01</title>
+<creator>NIST</creator>
+<description>
+ The areas attribute is a list of areas defined for the image map.
+
+ Retrieve the areas attribute and find the number of areas defined.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71838730"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="areasnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vareas" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="map" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"map"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<areas interface="HTMLMapElement" obj="testNode" var="areasnodeList"/>
+<length interface="HTMLCollection" obj="areasnodeList" var="vareas"/>
+<assertEquals actual="vareas" expected="3" id="areasLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLMapElement02.xml b/test/testcases/tests/level1/html/HTMLMapElement02.xml
new file mode 100644
index 0000000..fc83993
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLMapElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLMapElement02">
+<metadata>
+<title>HTMLMapElement02</title>
+<creator>NIST</creator>
+<description>
+ The name attribute names the map(for use with usemap).
+
+ Retrieve the name attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52696514"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="map" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"map"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLMapElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"mapid"' id="mapLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLMenuElement01.xml b/test/testcases/tests/level1/html/HTMLMenuElement01.xml
new file mode 100644
index 0000000..509a114
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLMenuElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLMenuElement01">
+<metadata>
+<title>HTMLMenuElement01</title>
+<creator>NIST</creator>
+<description>
+ The compact attribute specifies a boolean value on whether to display
+ the list more compactly.
+
+ Retrieve the compact attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68436464"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcompact" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="menu" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"menu"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<compact interface="HTMLMenuElement" obj="testNode" var="vcompact"/>
+<assertTrue actual="vcompact" id="compactLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLMetaElement01.xml b/test/testcases/tests/level1/html/HTMLMetaElement01.xml
new file mode 100644
index 0000000..5ee3bcc
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLMetaElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLMetaElement01">
+<metadata>
+<title>HTMLMetaElement01</title>
+<creator>NIST</creator>
+<description>
+ The content attribute specifies associated information.
+
+ Retrieve the content attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87670826"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcontent" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="meta" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"meta"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<content interface="HTMLMetaElement" obj="testNode" var="vcontent"/>
+<assertEquals actual="vcontent" expected='"text/html; CHARSET=utf-8"' id="contentLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLMetaElement02.xml b/test/testcases/tests/level1/html/HTMLMetaElement02.xml
new file mode 100644
index 0000000..11e7a09
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLMetaElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLMetaElement02">
+<metadata>
+<title>HTMLMetaElement02</title>
+<creator>NIST</creator>
+<description>
+ The httpEquiv attribute specifies an HTTP respnse header name.
+
+ Retrieve the httpEquiv attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77289449"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhttpequiv" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="meta" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"meta"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<httpEquiv interface="HTMLMetaElement" obj="testNode" var="vhttpequiv"/>
+<assertEquals actual="vhttpequiv" expected='"Content-Type"' id="httpEquivLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLMetaElement03.xml b/test/testcases/tests/level1/html/HTMLMetaElement03.xml
new file mode 100644
index 0000000..ab3afc7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLMetaElement03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLMetaElement03">
+<metadata>
+<title>HTMLMetaElement03</title>
+<creator>NIST</creator>
+<description>
+ The name attribute specifies the meta information name.
+
+ Retrieve the name attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-31037081"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="meta" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"meta"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLMetaElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"Meta-Name"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLMetaElement04.xml b/test/testcases/tests/level1/html/HTMLMetaElement04.xml
new file mode 100644
index 0000000..14ce0eb
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLMetaElement04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLMetaElement04">
+<metadata>
+<title>HTMLMetaElement04</title>
+<creator>NIST</creator>
+<description>
+ The scheme attribute specifies a select form of content.
+
+ Retrieve the scheme attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35993789"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vscheme" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="meta" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"meta"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<scheme interface="HTMLMetaElement" obj="testNode" var="vscheme"/>
+<assertEquals actual="vscheme" expected='"NIST"' id="schemeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLModElement01.xml b/test/testcases/tests/level1/html/HTMLModElement01.xml
new file mode 100644
index 0000000..616bc36
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLModElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLModElement01">
+<metadata>
+<title>HTMLModElement01</title>
+<creator>NIST</creator>
+<description>
+ The cite attribute specifies an URI designating a document that describes
+ the reason for the change.
+
+ Retrieve the cite attribute of the INS element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75101708"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcite" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="mod" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"ins"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<cite interface="HTMLModElement" obj="testNode" var="vcite"/>
+<assertURIEquals actual="vcite" file='"ins-reasons.html"' id="citeLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLModElement02.xml b/test/testcases/tests/level1/html/HTMLModElement02.xml
new file mode 100644
index 0000000..bcb8c11
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLModElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLModElement02">
+<metadata>
+<title>HTMLModElement02</title>
+<creator>NIST</creator>
+<description>
+ The dateTime attribute specifies the date and time of the change.
+
+ Retrieve the dateTime attribute of the INS element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88432678"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdatetime" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="mod" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"ins"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dateTime interface="HTMLModElement" obj="testNode" var="vdatetime"/>
+<assertEquals actual="vdatetime" expected='"January 1, 2002"' id="dateTimeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLModElement03.xml b/test/testcases/tests/level1/html/HTMLModElement03.xml
new file mode 100644
index 0000000..82f85b0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLModElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLModElement03">
+<metadata>
+<title>HTMLModElement03</title>
+<creator>NIST</creator>
+<description>
+ The cite attribute specifies an URI designating a document that describes
+ the reason for the change.
+
+ Retrieve the cite attribute of the DEL element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75101708"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcite" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="mod" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"del"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<cite interface="HTMLModElement" obj="testNode" var="vcite"/>
+<assertURIEquals actual="vcite" file='"del-reasons.html"' id="citeLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLModElement04.xml b/test/testcases/tests/level1/html/HTMLModElement04.xml
new file mode 100644
index 0000000..4220ba5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLModElement04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLModElement04">
+<metadata>
+<title>HTMLModElement04</title>
+<creator>NIST</creator>
+<description>
+ The dateTime attribute specifies the date and time of the change.
+
+ Retrieve the dateTime attribute of the DEL element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88432678"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdatetime" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="mod" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"del"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<dateTime interface="HTMLModElement" obj="testNode" var="vdatetime"/>
+<assertEquals actual="vdatetime" expected='"January 2, 2002"' id="dateTimeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOListElement01.xml b/test/testcases/tests/level1/html/HTMLOListElement01.xml
new file mode 100644
index 0000000..7b053bf
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOListElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOListElement01">
+<metadata>
+<title>HTMLOListElement01</title>
+<creator>NIST</creator>
+<description>
+ The compact attribute specifies a boolean value on whether to display
+ the list more compactly.
+
+ Retrieve the compact attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76448506"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcompact" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="olist" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"ol"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<compact interface="HTMLOListElement" obj="testNode" var="vcompact"/>
+<assertTrue actual="vcompact" id="compactLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOListElement02.xml b/test/testcases/tests/level1/html/HTMLOListElement02.xml
new file mode 100644
index 0000000..85b78d4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOListElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOListElement02">
+<metadata>
+<title>HTMLOListElement02</title>
+<creator>NIST</creator>
+<description>
+ The start attribute specifies the starting sequence number.
+
+ Retrieve the start attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14793325"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vstart" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="olist" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"ol"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<start interface="HTMLOListElement" obj="testNode" var="vstart"/>
+<assertEquals actual="vstart" expected="1" id="startLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOListElement03.xml b/test/testcases/tests/level1/html/HTMLOListElement03.xml
new file mode 100644
index 0000000..e6306ec
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOListElement03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOListElement03">
+<metadata>
+<title>HTMLOListElement03</title>
+<creator>NIST</creator>
+<description>
+ The type attribute specifies the numbering style.
+
+ Retrieve the type attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40971103"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="olist" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"ol"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLOListElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"1"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement01.xml b/test/testcases/tests/level1/html/HTMLObjectElement01.xml
new file mode 100644
index 0000000..9b39aaf
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement01">
+<metadata>
+<title>HTMLObjectElement01</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-19</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46094773"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="fNode" type="HTMLFormElement"/>
+<var name="vform" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object2" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<form interface="HTMLObjectElement" obj="testNode" var="fNode"/>
+<id obj="fNode" var="vform"/>
+<assertEquals actual="vform" expected='"object2"' id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement02.xml b/test/testcases/tests/level1/html/HTMLObjectElement02.xml
new file mode 100644
index 0000000..52539a5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement02">
+<metadata>
+<title>HTMLObjectElement02</title>
+<creator>NIST</creator>
+<description>
+The code attribute specifies an Applet class file.
+
+Retrieve the code attribute of the second OBJECT element and examine
+its value. Should be "" since CODE is not a valid attribute for OBJECT.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75241146"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcode" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<code interface="HTMLObjectElement" obj="testNode" var="vcode"/>
+<assertEquals actual="vcode" expected='""' id="codeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement03.xml b/test/testcases/tests/level1/html/HTMLObjectElement03.xml
new file mode 100644
index 0000000..086f0d9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement03.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement03">
+<metadata>
+<title>HTMLObjectElement03</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the alignment of this object with respect
+ to its surrounding text.
+
+ Retrieve the align attribute of the first OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16962097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLObjectElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"middle"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement04.xml b/test/testcases/tests/level1/html/HTMLObjectElement04.xml
new file mode 100644
index 0000000..c4091ec
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement04.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement04">
+<metadata>
+<title>HTMLObjectElement04</title>
+<creator>NIST</creator>
+<description>
+ The archive attribute specifies a space-separated list of archives.
+
+ Retrieve the archive attribute of the first OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47783837"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="varchive" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<archive interface="HTMLObjectElement" obj="testNode" var="varchive"/>
+<assertEquals actual="varchive" expected='""' id="archiveLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement05.xml b/test/testcases/tests/level1/html/HTMLObjectElement05.xml
new file mode 100644
index 0000000..5348c20
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement05">
+<metadata>
+<title>HTMLObjectElement05</title>
+<creator>NIST</creator>
+<description>
+ The border attribute specifies the widht of the border around the object.
+
+ Retrieve the border attribute of the first OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82818419"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vborder" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<border interface="HTMLObjectElement" obj="testNode" var="vborder"/>
+<assertEquals actual="vborder" expected='"0"' id="borderLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement06.xml b/test/testcases/tests/level1/html/HTMLObjectElement06.xml
new file mode 100644
index 0000000..974fd88
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement06.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement06">
+<metadata>
+<title>HTMLObjectElement06</title>
+<creator>NIST</creator>
+<description>
+ The codeBase attribute specifies the base URI for the classid, data and
+ archive attributes.
+
+ Retrieve the codeBase attribute of the first OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25709136"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcodebase" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<codeBase interface="HTMLObjectElement" obj="testNode" var="vcodebase"/>
+<assertURIEquals actual="vcodebase" path='"//xw2k.sdct.itl.nist.gov/brady/dom/"' id="codebaseLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement07.xml b/test/testcases/tests/level1/html/HTMLObjectElement07.xml
new file mode 100644
index 0000000..8e2c5d2
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement07">
+<metadata>
+<title>HTMLObjectElement07</title>
+<creator>NIST</creator>
+<description>
+ The codeType attribute specifies the data downloaded via the classid
+ attribute.
+
+ Retrieve the codeType attribute of the second OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19945008"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcodetype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<codeType interface="HTMLObjectElement" obj="testNode" var="vcodetype"/>
+<assertEquals actual="vcodetype" expected='"image/gif"' id="codetypeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement08.xml b/test/testcases/tests/level1/html/HTMLObjectElement08.xml
new file mode 100644
index 0000000..f5fd14c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement08.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement08">
+<metadata>
+<title>HTMLObjectElement08</title>
+<creator>NIST</creator>
+<description>
+ The data attribute specifies the URI of the location of the objects data.
+
+ Retrieve the data attribute of the first OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-81766986"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdata" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<data interface="HTMLObjectElement" obj="testNode" var="vdata"/>
+<assertURIEquals actual="vdata" file='"logo.gif"' id="dataLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement09.xml b/test/testcases/tests/level1/html/HTMLObjectElement09.xml
new file mode 100644
index 0000000..8c6ca17
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement09.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement09">
+<metadata>
+<title>HTMLObjectElement09</title>
+<creator>NIST</creator>
+<description>
+ The declare attribute specifies this object should be declared only and
+ no instance of it should be created.
+
+ Retrieve the declare attribute of the second OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-942770"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdeclare" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<declare interface="HTMLObjectElement" obj="testNode" var="vdeclare"/>
+<assertTrue actual="vdeclare" id="declareLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement10.xml b/test/testcases/tests/level1/html/HTMLObjectElement10.xml
new file mode 100644
index 0000000..b0f0c8b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement10.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement10">
+<metadata>
+<title>HTMLObjectElement10</title>
+<creator>NIST</creator>
+<description>
+ The height attribute overrides the value of the actual height of the
+ object.
+
+ Retrieve the height attribute of the first OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88925838"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheight" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<height interface="HTMLObjectElement" obj="testNode" var="vheight"/>
+<assertEquals actual="vheight" expected='"60"' id="heightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement11.xml b/test/testcases/tests/level1/html/HTMLObjectElement11.xml
new file mode 100644
index 0000000..9cfea39
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement11.xml
@@ -0,0 +1,53 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement11">
+<metadata>
+<title>HTMLObjectElement11</title>
+<creator>NIST</creator>
+<description>
+ The hspace attribute specifies the horizontal space to the left and right
+ of this image, applet or object.
+
+ Retrieve the hspace attribute of the first OBJECT element and examine
+ its value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-17085376"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhspace" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="object" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<hspace interface="HTMLObjectElement" obj="testNode" var="vhspace"/>
+<assertEquals actual="vhspace" expected='"0"' id="hspaceLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement12.xml b/test/testcases/tests/level1/html/HTMLObjectElement12.xml
new file mode 100644
index 0000000..8ef377d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement12.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement12">
+<metadata>
+<title>HTMLObjectElement12</title>
+<creator>NIST</creator>
+<description>
+ The standby attribute specifies a message to render while loading the
+ object.
+
+ Retrieve the standby attribute of the first OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25039673"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vstandby" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<standby interface="HTMLObjectElement" obj="testNode" var="vstandby"/>
+<assertEquals actual="vstandby" expected='"Loading Image ..."' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement13.xml b/test/testcases/tests/level1/html/HTMLObjectElement13.xml
new file mode 100644
index 0000000..0e764de
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement13.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement13">
+<metadata>
+<title>HTMLObjectElement13</title>
+<creator>NIST</creator>
+<description>
+ The tabIndex attribute specifies the elements position in the tabbing
+ order.
+
+ Retrieve the tabIndex attribute of the first OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27083787"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtabindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tabIndex interface="HTMLObjectElement" obj="testNode" var="vtabindex"/>
+<assertEquals actual="vtabindex" expected="0" id="tabIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement14.xml b/test/testcases/tests/level1/html/HTMLObjectElement14.xml
new file mode 100644
index 0000000..0fa56d3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement14.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement14">
+<metadata>
+<title>HTMLObjectElement14</title>
+<creator>NIST</creator>
+<description>
+ The type attribute specifies the content type for data downloaded via
+ the data attribute.
+
+ Retrieve the type attribute of the first OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91665621"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLObjectElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"image/gif"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement15.xml b/test/testcases/tests/level1/html/HTMLObjectElement15.xml
new file mode 100644
index 0000000..07d3c97
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement15.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement15">
+<metadata>
+<title>HTMLObjectElement15</title>
+<creator>NIST</creator>
+<description>
+ The useMap attribute specifies the used client-side image map.
+
+ Retrieve the useMap attribute of the first OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6649772"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vusemap" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<useMap interface="HTMLObjectElement" obj="testNode" var="vusemap"/>
+<assertEquals actual="vusemap" expected='"#DivLogo-map"' id="useMapLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement16.xml b/test/testcases/tests/level1/html/HTMLObjectElement16.xml
new file mode 100644
index 0000000..7702616
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement16.xml
@@ -0,0 +1,53 @@
+<?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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement16">
+<metadata>
+<title>HTMLObjectElement16</title>
+<creator>NIST</creator>
+<description>
+ The vspace attribute specifies the vertical space above or below this
+ image, applet or object.
+
+ Retrieve the vspace attribute of the first OBJECT element and examine
+ its value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8682483"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvspace" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="object" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vspace interface="HTMLObjectElement" obj="testNode" var="vvspace"/>
+<assertEquals actual="vvspace" expected='"0"' id="vspaceLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement17.xml b/test/testcases/tests/level1/html/HTMLObjectElement17.xml
new file mode 100644
index 0000000..caabb88
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement17.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement17">
+<metadata>
+<title>HTMLObjectElement17</title>
+<creator>NIST</creator>
+<description>
+ The width attribute overrides the original width value.
+
+ Retrieve the width attribute of the first OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-38538620"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<width interface="HTMLObjectElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"550"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement18.xml b/test/testcases/tests/level1/html/HTMLObjectElement18.xml
new file mode 100644
index 0000000..f994859
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement18.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement18">
+<metadata>
+<title>HTMLObjectElement18</title>
+<creator>NIST</creator>
+<description>
+ The name attribute specifies form control or object name when submitted
+ with a form.
+
+ Retrieve the name attribute of the second OBJECT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20110362"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<name interface="HTMLObjectElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"OBJECT2"' id="vspaceLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLObjectElement19.xml b/test/testcases/tests/level1/html/HTMLObjectElement19.xml
new file mode 100644
index 0000000..51d1115
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLObjectElement19.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLObjectElement19">
+<metadata>
+<title>HTMLObjectElement19</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the form attribute and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-19</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46094773"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="HTMLFormElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="object2" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLObjectElement" obj="testNode" var="vform"/>
+<assertNull actual="vform" id="formNullLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOptGroupElement01.xml b/test/testcases/tests/level1/html/HTMLOptGroupElement01.xml
new file mode 100644
index 0000000..23ab2e4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptGroupElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOptGroupElement01">
+<metadata>
+<title>HTMLOptGroupElement01</title>
+<creator>NIST</creator>
+<description>
+ The disabled attribute indicates that the control is unavailable in
+ this context.
+
+ Retrieve the disabled attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-15518803"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdisabled" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="optgroup" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"optgroup"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<disabled interface="HTMLOptGroupElement" obj="testNode" var="vdisabled"/>
+<assertTrue actual="vdisabled" id="disabledLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOptGroupElement02.xml b/test/testcases/tests/level1/html/HTMLOptGroupElement02.xml
new file mode 100644
index 0000000..ff793f8
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptGroupElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOptGroupElement02">
+<metadata>
+<title>HTMLOptGroupElement02</title>
+<creator>NIST</creator>
+<description>
+ The label attribute specifies the label assigned to this option group.
+
+ Retrieve the label attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95806054"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlabel" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="optgroup" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"optgroup"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<label interface="HTMLOptGroupElement" obj="testNode" var="vlabel"/>
+<assertEquals actual="vlabel" expected='"Regular Employees"' id="labelLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement01.xml b/test/testcases/tests/level1/html/HTMLOptionElement01.xml
new file mode 100644
index 0000000..d07454c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptionElement01.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOptionElement01">
+<metadata>
+<title>HTMLOptionElement01</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute from the first SELECT element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-17116503"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="DOMString" />
+<var name="fNode" type="HTMLFormElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="option" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"option"'/>
+<assertSize collection="nodeList" size="10" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLOptionElement" obj="testNode" var="fNode"/>
+<id obj="fNode" var="vform"/>
+<assertEquals actual="vform" expected='"form1"' id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement02.xml b/test/testcases/tests/level1/html/HTMLOptionElement02.xml
new file mode 100644
index 0000000..bbf3153
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptionElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOptionElement02">
+<metadata>
+<title>HTMLOptionElement02</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns null if control in not within the context of
+ a form.
+
+ Retrieve the first OPTION attribute from the second select element and
+ examine its form element.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-17116503"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="HTMLFormElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="option" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"option"'/>
+<assertSize collection="nodeList" size="10" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="6"/>
+<form interface="HTMLOptionElement" obj="testNode" var="vform"/>
+<assertNull actual="vform" id="formNullLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement03.xml b/test/testcases/tests/level1/html/HTMLOptionElement03.xml
new file mode 100644
index 0000000..9cee3c4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptionElement03.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOptionElement03">
+<metadata>
+<title>HTMLOptionElement03</title>
+<creator>NIST</creator>
+<description>
+ The defaultSelected attribute contains the value of the selected
+ attribute.
+
+ Retrieve the defaultSelected attribute from the first OPTION element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-37770574"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdefaultselected" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="option" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"option"'/>
+<assertSize collection="nodeList" size="10" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<defaultSelected interface="HTMLOptionElement" obj="testNode" var="vdefaultselected"/>
+<assertTrue actual="vdefaultselected" id="defaultSelectedLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement04.xml b/test/testcases/tests/level1/html/HTMLOptionElement04.xml
new file mode 100644
index 0000000..1923dd3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptionElement04.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOptionElement04">
+<metadata>
+<title>HTMLOptionElement04</title>
+<creator>NIST</creator>
+<description>
+ The text attribute contains the text contained within the option element.
+
+ Retrieve the text attribute from the second OPTION element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48154426"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtext" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="option" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"option"'/>
+<assertSize collection="nodeList" size="10" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<text interface="HTMLOptionElement" obj="testNode" var="vtext"/>
+<assertEquals actual="vtext" expected='"EMP10002"' id="textLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement05.xml b/test/testcases/tests/level1/html/HTMLOptionElement05.xml
new file mode 100644
index 0000000..46812a1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptionElement05.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOptionElement05">
+<metadata>
+<title>HTMLOptionElement05</title>
+<creator>NIST</creator>
+<description>
+ The index attribute indicates th index of this OPTION in ints parent
+ SELECT.
+
+ Retrieve the index attribute from the seventh OPTION element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14038413"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="option" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"option"'/>
+<assertSize collection="nodeList" size="10" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="6"/>
+<index interface="HTMLOptionElement" obj="testNode" var="vindex"/>
+<assertEquals actual="vindex" expected="1" id="indexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement06.xml b/test/testcases/tests/level1/html/HTMLOptionElement06.xml
new file mode 100644
index 0000000..2c00da4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptionElement06.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOptionElement06">
+<metadata>
+<title>HTMLOptionElement06</title>
+<creator>NIST</creator>
+<description>
+ The disabled attribute indicates that this control is not available
+ within this context.
+
+ Retrieve the disabled attribute from the last OPTION element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23482473"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdisabled" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="option" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"option"'/>
+<assertSize collection="nodeList" size="10" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="9"/>
+<disabled interface="HTMLOptionElement" obj="testNode" var="vdisabled"/>
+<assertTrue actual="vdisabled" id="disabledLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement07.xml b/test/testcases/tests/level1/html/HTMLOptionElement07.xml
new file mode 100644
index 0000000..9218070
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptionElement07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOptionElement07">
+<metadata>
+<title>HTMLOptionElement07</title>
+<creator>NIST</creator>
+<description>
+ The label attribute is used in hierarchical menus. It specifies
+ a shorter label for an option that the content of the OPTION element.
+
+ Retrieve the label attribute from the second OPTION element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40736115"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlabel" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="option" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"option"'/>
+<assertSize collection="nodeList" size="10" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<label interface="HTMLOptionElement" obj="testNode" var="vlabel"/>
+<assertEquals actual="vlabel" expected='"l1"' id="labelLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement08.xml b/test/testcases/tests/level1/html/HTMLOptionElement08.xml
new file mode 100644
index 0000000..c5c6640
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptionElement08.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOptionElement08">
+<metadata>
+<title>HTMLOptionElement08</title>
+<creator>NIST</creator>
+<description>
+ The selected attribute indicates the current state of the corresponding
+ form control in an interactive user-agent.
+
+ Retrieve the selected attribute from the first OPTION element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70874476"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vselected" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="option" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"option"'/>
+<assertSize collection="nodeList" size="10" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<defaultSelected interface="HTMLOptionElement" obj="testNode" var="vselected"/>
+<assertTrue actual="vselected" id="selectedLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement09.xml b/test/testcases/tests/level1/html/HTMLOptionElement09.xml
new file mode 100644
index 0000000..064ccbe
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptionElement09.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLOptionElement09">
+<metadata>
+<title>HTMLOptionElement09</title>
+<creator>NIST</creator>
+<description>
+ The value attribute contains the current form control value.
+
+ Retrieve the value attribute from the first OPTION element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6185554"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalue" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="option" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"option"'/>
+<assertSize collection="nodeList" size="10" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<value interface="HTMLOptionElement" obj="testNode" var="vvalue"/>
+<assertEquals actual="vvalue" expected='"10001"' id="valueLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLParagraphElement01.xml b/test/testcases/tests/level1/html/HTMLParagraphElement01.xml
new file mode 100644
index 0000000..0f3fa0e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLParagraphElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLParagraphElement01">
+<metadata>
+<title>HTMLParagraphElement01</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal text alignment.
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53465507"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="paragraph" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"p"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLParagraphElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLParamElement01.xml b/test/testcases/tests/level1/html/HTMLParamElement01.xml
new file mode 100644
index 0000000..33f9238
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLParamElement01.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLParamElement01">
+<metadata>
+<title>HTMLParamElement01</title>
+<creator>NIST</creator>
+<description>
+ The name attribute specifies the name of the run-time parameter.
+
+ Retrieve the name attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59871447"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="param" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"param"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLParamElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"image3"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLParamElement02.xml b/test/testcases/tests/level1/html/HTMLParamElement02.xml
new file mode 100644
index 0000000..52e3b8a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLParamElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLParamElement02">
+<metadata>
+<title>HTMLParamElement02</title>
+<creator>NIST</creator>
+<description>
+ The value attribute specifies the value of the run-time parameter.
+
+ Retrieve the value attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77971357"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalue" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="param" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"param"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<value interface="HTMLParamElement" obj="testNode" var="vvalue"/>
+<assertURIEquals actual="vvalue" file='"file.gif"' id="valueLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLParamElement03.xml b/test/testcases/tests/level1/html/HTMLParamElement03.xml
new file mode 100644
index 0000000..48b227a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLParamElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLParamElement03">
+<metadata>
+<title>HTMLParamElement03</title>
+<creator>NIST</creator>
+<description>
+ The valueType attribute specifies information about the meaning of the
+ value specified by the value attribute.
+
+ Retrieve the valueType attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23931872"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvaluetype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="param" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"param"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<valueType interface="HTMLParamElement" obj="testNode" var="vvaluetype"/>
+<assertEquals actual="vvaluetype" expected='"ref"' id="valueTypeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLParamElement04.xml b/test/testcases/tests/level1/html/HTMLParamElement04.xml
new file mode 100644
index 0000000..da298fd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLParamElement04.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLParamElement04">
+<metadata>
+<title>HTMLParamElement04</title>
+<creator>NIST</creator>
+<description>
+ The type attribute specifies the content type for the value attribute
+ when valuetype has the value ref.
+
+ Retrieve the type attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18179888"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="param" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"param"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLParamElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"image/gif"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLPreElement01.xml b/test/testcases/tests/level1/html/HTMLPreElement01.xml
new file mode 100644
index 0000000..9b8d4f2
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLPreElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLPreElement01">
+<metadata>
+<title>HTMLPreElement01</title>
+<creator>NIST</creator>
+<description>
+ The width attribute specifies the fixed width for content.
+
+ Retrieve the width attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13894083"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="pre" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"pre"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<width interface="HTMLPreElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected="277" id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLQuoteElement01.xml b/test/testcases/tests/level1/html/HTMLQuoteElement01.xml
new file mode 100644
index 0000000..f7aadf7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLQuoteElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLQuoteElement01">
+<metadata>
+<title>HTMLQuoteElement01</title>
+<creator>NIST</creator>
+<description>
+ The cite attribute specifies a URI designating a source document
+ or message.
+
+ Retrieve the cite attribute from the Q element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53895598"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcite" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="quote" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"q"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<cite interface="HTMLQuoteElement" obj="testNode" var="vcite"/>
+<assertURIEquals actual="vcite" file='"Q.html"' id="citeLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLQuoteElement02.xml b/test/testcases/tests/level1/html/HTMLQuoteElement02.xml
new file mode 100644
index 0000000..342b10f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLQuoteElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLQuoteElement02">
+<metadata>
+<title>HTMLQuoteElement02</title>
+<creator>NIST</creator>
+<description>
+ The cite attribute specifies a URI designating a source document
+ or message.
+
+ Retrieve the cite attribute from the BLOCKQUOTE element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53895598"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcite" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="quote" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"blockquote"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<cite interface="HTMLQuoteElement" obj="testNode" var="vcite"/>
+<assertURIEquals actual="vcite" file='"BLOCKQUOTE.html"' id="citeLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLScriptElement01.xml b/test/testcases/tests/level1/html/HTMLScriptElement01.xml
new file mode 100644
index 0000000..c4f28dd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLScriptElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLScriptElement01">
+<metadata>
+<title>HTMLScriptElement01</title>
+<creator>NIST</creator>
+<description>
+ The text attribute specifies the script content of the element.
+
+ Retrieve the text attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46872999"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtext" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="script" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"script"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<text interface="HTMLScriptElement" obj="testNode" var="vtext"/>
+<assertEquals actual="vtext" expected='"var a=2;"' id="textLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLScriptElement02.xml b/test/testcases/tests/level1/html/HTMLScriptElement02.xml
new file mode 100644
index 0000000..dd3911d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLScriptElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLScriptElement02">
+<metadata>
+<title>HTMLScriptElement02</title>
+<creator>NIST</creator>
+<description>
+ The charset attribute specifies the character encoding of the linked
+ resource.
+
+ Retrieve the charset attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35305677"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcharset" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="script" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"script"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<charset interface="HTMLScriptElement" obj="testNode" var="vcharset"/>
+<assertEquals actual="vcharset" expected='"US-ASCII"' id="charsetLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLScriptElement03.xml b/test/testcases/tests/level1/html/HTMLScriptElement03.xml
new file mode 100644
index 0000000..d23ad8a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLScriptElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLScriptElement03">
+<metadata>
+<title>HTMLScriptElement03</title>
+<creator>NIST</creator>
+<description>
+ The defer attribute specifies the user agent can defer processing of
+ the script.
+
+ Retrieve the defer attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93788534"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdefer" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="script" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"script"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<defer interface="HTMLScriptElement" obj="testNode" var="vdefer"/>
+<assertTrue actual="vdefer" id="deferLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLScriptElement04.xml b/test/testcases/tests/level1/html/HTMLScriptElement04.xml
new file mode 100644
index 0000000..da94196
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLScriptElement04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLScriptElement04">
+<metadata>
+<title>HTMLScriptElement04</title>
+<creator>NIST</creator>
+<description>
+ The src attribute specifies a URI designating an external script.
+
+ Retrieve the src attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75147231"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsrc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="script" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"script"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<src interface="HTMLScriptElement" obj="testNode" var="vsrc"/>
+<assertURIEquals actual="vsrc" file='"script1.js"' id="srcLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLScriptElement05.xml b/test/testcases/tests/level1/html/HTMLScriptElement05.xml
new file mode 100644
index 0000000..2a3ede2
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLScriptElement05.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLScriptElement05">
+<metadata>
+<title>HTMLScriptElement05</title>
+<creator>NIST</creator>
+<description>
+ The type attribute specifies the content of the script language.
+
+ Retrieve the type attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30534818"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="script" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"script"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLScriptElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"text/javaScript"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLScriptElement06.xml b/test/testcases/tests/level1/html/HTMLScriptElement06.xml
new file mode 100644
index 0000000..4e869fc
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLScriptElement06.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLScriptElement06">
+<metadata>
+<title>HTMLScriptElement06</title>
+<creator>Curt Arnold</creator>
+<description>
+htmlFor is described as for future use. Test accesses the value, but makes no assertions about its value.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66979266"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="htmlFor" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="script" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"script"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<htmlFor interface="HTMLScriptElement" obj="testNode" var="htmlFor"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLScriptElement07.xml b/test/testcases/tests/level1/html/HTMLScriptElement07.xml
new file mode 100644
index 0000000..d5a0145
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLScriptElement07.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLScriptElement07">
+<metadata>
+<title>HTMLScriptElement07</title>
+<creator>Curt Arnold</creator>
+<description>
+event is described as for future use. Test accesses the value, but makes no assertions about its value.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-56700403"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="event" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="script" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"script"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<event interface="HTMLScriptElement" obj="testNode" var="event"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement01.xml b/test/testcases/tests/level1/html/HTMLSelectElement01.xml
new file mode 100644
index 0000000..3b08881
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement01">
+<metadata>
+<title>HTMLSelectElement01</title>
+<creator>NIST</creator>
+<description>
+ The type attribute is the string "select-multiple" when multiple
+ attribute is true.
+
+ Retrieve the type attribute from the first SELECT element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58783172"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLSelectElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"select-multiple"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement02.xml b/test/testcases/tests/level1/html/HTMLSelectElement02.xml
new file mode 100644
index 0000000..f9e865d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement02">
+<metadata>
+<title>HTMLSelectElement02</title>
+<creator>NIST</creator>
+<description>
+ The selectedIndex attribute specifies the ordinal index of the selected
+ option.
+
+ Retrieve the selectedIndex attribute from the first SELECT element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85676760"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vselectedindex" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<selectedIndex interface="HTMLSelectElement" obj="testNode" var="vselectedindex"/>
+<assertEquals actual="vselectedindex" expected="0" id="selectedIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement03.xml b/test/testcases/tests/level1/html/HTMLSelectElement03.xml
new file mode 100644
index 0000000..97d217c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement03.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement03">
+<metadata>
+<title>HTMLSelectElement03</title>
+<creator>NIST</creator>
+<description>
+ The selectedIndex attribute specifies the ordinal index of the selected
+ option. If no element is selected -1 is returned.
+
+ Retrieve the selectedIndex attribute from the second SELECT element and
+ examine its value.
+
+ Per http://www.w3.org/TR/html401/interact/forms.html#h-17.6.1,
+ without an explicit selected attribute, user agent behavior is
+ undefined. There is no way to coerce no option to be selected.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85676760"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vselectedindex" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<selectedIndex interface="HTMLSelectElement" obj="testNode" var="vselectedindex"/>
+<!-- Commented assertion per section 17.6.3 -->
+<!-- assertEquals actual="vselectedindex" expected="-1" id="selectedIndexLink" ignoreCase="false"/ -->
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement04.xml b/test/testcases/tests/level1/html/HTMLSelectElement04.xml
new file mode 100644
index 0000000..11ff6ee
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement04.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement04">
+<metadata>
+<title>HTMLSelectElement04</title>
+<creator>NIST</creator>
+<description>
+ The value attribute specifies the current form control value.
+
+ Retrieve the value attribute from the first SELECT element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59351919"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalue" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<value interface="HTMLSelectElement" obj="testNode" var="vvalue"/>
+<assertEquals actual="vvalue" expected='"EMP1"' id="valueLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement05.xml b/test/testcases/tests/level1/html/HTMLSelectElement05.xml
new file mode 100644
index 0000000..16c78e1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement05">
+<metadata>
+<title>HTMLSelectElement05</title>
+<creator>NIST</creator>
+<description>
+ The length attribute specifies the number of options in this select.
+
+ Retrieve the length attribute from the first SELECT element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5933486"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlength" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<length interface="HTMLSelectElement" obj="testNode" var="vlength"/>
+<assertEquals actual="vlength" expected="5" id="lengthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement06.xml b/test/testcases/tests/level1/html/HTMLSelectElement06.xml
new file mode 100644
index 0000000..8ff66a0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement06.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement06">
+<metadata>
+<title>HTMLSelectElement06</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute from the first SELECT element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20489458"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="DOMString" />
+<var name="fNode" type="HTMLFormElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLSelectElement" obj="testNode" var="fNode"/>
+<id obj="fNode" var="vform"/>
+<assertEquals actual="vform" expected='"form1"' id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement07.xml b/test/testcases/tests/level1/html/HTMLSelectElement07.xml
new file mode 100644
index 0000000..218b9d6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement07">
+<metadata>
+<title>HTMLSelectElement07</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns null if control in not within the context of
+ a form.
+
+ Retrieve the second SELECT element and
+ examine its form element.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20489458"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="HTMLFormElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<form interface="HTMLSelectElement" obj="testNode" var="vform"/>
+<assertNull actual="vform" id="formNullLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement08.xml b/test/testcases/tests/level1/html/HTMLSelectElement08.xml
new file mode 100644
index 0000000..12593fe
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement08.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement08">
+<metadata>
+<title>HTMLSelectElement08</title>
+<creator>NIST</creator>
+<description>
+ The options attribute returns a collection of OPTION elements contained
+ by this element.
+
+ Retrieve the options attribute from the first SELECT element and
+ examine the items of the returned collection.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30606413"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="optionsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vareas" type="int" />
+<var name="doc" type="Document"/>
+<var name="optionName" type="DOMString"/>
+<var name="voption" type="Node"/>
+<var name="result" type="List"/>
+<var name="expectedOptions" type="List">
+<member>"option"</member>
+<member>"option"</member>
+<member>"option"</member>
+<member>"option"</member>
+<member>"option"</member>
+</var>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<options interface="HTMLSelectElement" obj="testNode" var="optionsnodeList"/>
+<for-each collection="optionsnodeList" member="voption">
+<nodeName obj="voption" var="optionName"/>
+<append collection="result" item="optionName"/>
+</for-each>
+<assertEquals actual="result" expected="expectedOptions" id="optionsLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement09.xml b/test/testcases/tests/level1/html/HTMLSelectElement09.xml
new file mode 100644
index 0000000..382510d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement09.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement09">
+<metadata>
+<title>HTMLSelectElement09</title>
+<creator>NIST</creator>
+<description>
+ The disabled attribute indicates that this control is not available
+ within this context.
+
+ Retrieve the disabled attribute from the third SELECT element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79102918"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdisabled" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="2"/>
+<disabled interface="HTMLSelectElement" obj="testNode" var="vdisabled"/>
+<assertTrue actual="vdisabled" id="disabledLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement10.xml b/test/testcases/tests/level1/html/HTMLSelectElement10.xml
new file mode 100644
index 0000000..b9f5762
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement10.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement10">
+<metadata>
+<title>HTMLSelectElement10</title>
+<creator>NIST</creator>
+<description>
+ The multiple attribute(if true) indicates that multiple OPTION elements
+ may be selected
+
+ Retrieve the multiple attribute from the first SELECT element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13246613"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmultiple" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<multiple interface="HTMLSelectElement" obj="testNode" var="vmultiple"/>
+<assertTrue actual="vmultiple" id="multipleLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement11.xml b/test/testcases/tests/level1/html/HTMLSelectElement11.xml
new file mode 100644
index 0000000..ebb4d1b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement11.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement11">
+<metadata>
+<title>HTMLSelectElement11</title>
+<creator>NIST</creator>
+<description>
+ The name attribute specifies the form control or object name when
+ submitted with a form.
+
+ Retrieve the name attribute from the first SELECT element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-41636323"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLSelectElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"select1"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement12.xml b/test/testcases/tests/level1/html/HTMLSelectElement12.xml
new file mode 100644
index 0000000..5559f5d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement12.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement12">
+<metadata>
+<title>HTMLSelectElement12</title>
+<creator>NIST</creator>
+<description>
+ The size attribute specifies the number of visible rows.
+
+ Retrieve the size attribute from the first SELECT element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18293826"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsize" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<size interface="HTMLSelectElement" obj="testNode" var="vsize"/>
+<assertEquals actual="vsize" expected="1" id="sizeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement13.xml b/test/testcases/tests/level1/html/HTMLSelectElement13.xml
new file mode 100644
index 0000000..2c0aafb
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement13.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement13">
+<metadata>
+<title>HTMLSelectElement13</title>
+<creator>NIST</creator>
+<description>
+ The tabIndex attribute specifies an index that represents the elements
+ position in the tabbing order.
+
+ Retrieve the tabIndex attribute from the first SELECT element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40676705"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtabindex" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tabIndex interface="HTMLSelectElement" obj="testNode" var="vtabindex"/>
+<assertEquals actual="vtabindex" expected="7" id="tabIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement14.xml b/test/testcases/tests/level1/html/HTMLSelectElement14.xml
new file mode 100644
index 0000000..df22987
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement14.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement14">
+<metadata>
+<title>HTMLSelectElement14</title>
+<creator>Curt Arnold</creator>
+<description>
+focus should give the select element input focus.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32130014"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<focus interface="HTMLSelectElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement15.xml b/test/testcases/tests/level1/html/HTMLSelectElement15.xml
new file mode 100644
index 0000000..dcc2f6d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement15.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement15">
+<metadata>
+<title>HTMLSelectElement15</title>
+<creator>Curt Arnold</creator>
+<description>
+blur should surrender input focus.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-28216144"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<blur interface="HTMLSelectElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement16.xml b/test/testcases/tests/level1/html/HTMLSelectElement16.xml
new file mode 100644
index 0000000..a5e9422
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement16.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement16">
+<metadata>
+<title>HTMLSelectElement16</title>
+<creator>Curt Arnold</creator>
+<description>
+Removes an option using HTMLSelectElement.remove.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33404570"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="optLength" type="int"/>
+<var name="selected" type="int"/>
+<load var="doc" href="select" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<remove interface="HTMLSelectElement" obj="testNode" index="0"/>
+<length interface="HTMLSelectElement" obj="testNode" var="optLength"/>
+<assertEquals actual="optLength" expected="4" id="optLength" ignoreCase="false"/>
+<selectedIndex interface="HTMLSelectElement" obj="testNode" var="selected"/>
+<assertEquals actual="selected" expected="-1" id="selected" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement17.xml b/test/testcases/tests/level1/html/HTMLSelectElement17.xml
new file mode 100644
index 0000000..03549ff
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement17.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement17">
+<metadata>
+<title>HTMLSelectElement17</title>
+<creator>Curt Arnold</creator>
+<description>
+Removes a non-existant option using HTMLSelectElement.remove.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33404570"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="optLength" type="int"/>
+<var name="selected" type="int"/>
+<load var="doc" href="select" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<remove interface="HTMLSelectElement" obj="testNode" index="6"/>
+<length interface="HTMLSelectElement" obj="testNode" var="optLength"/>
+<assertEquals actual="optLength" expected="5" id="optLength" ignoreCase="false"/>
+<selectedIndex interface="HTMLSelectElement" obj="testNode" var="selected"/>
+<assertEquals actual="selected" expected="0" id="selected" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement18.xml b/test/testcases/tests/level1/html/HTMLSelectElement18.xml
new file mode 100644
index 0000000..aff29d9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement18.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement18">
+<metadata>
+<title>HTMLSelectElement18</title>
+<creator>Curt Arnold</creator>
+<description>
+Add a new option at the end of an select using HTMLSelectElement.add.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14493106"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="optLength" type="int"/>
+<var name="selected" type="int"/>
+<var name="newOpt" type="Element"/>
+<var name="newOptText" type="Text"/>
+<var name="opt" type="Element"/>
+<var name="optText" type="Text"/>
+<var name="optValue" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<var name="nullNode" type="Node" isNull="true"/>
+<load var="doc" href="select" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<createElement var="newOpt" obj="doc" tagName='"option"'/>
+<createTextNode var="newOptText" obj="doc" data='"EMP31415"'/>
+<appendChild var="retNode" obj="newOpt" newChild="newOptText"/>
+<add interface="HTMLSelectElement" obj="testNode" element="newOpt" before="nullNode"/>
+<length interface="HTMLSelectElement" obj="testNode" var="optLength"/>
+<assertEquals actual="optLength" expected="6" id="optLength" ignoreCase="false"/>
+<selectedIndex interface="HTMLSelectElement" obj="testNode" var="selected"/>
+<assertEquals actual="selected" expected="0" id="selected" ignoreCase="false"/>
+<lastChild var="opt" obj="testNode" interface="Node"/>
+<firstChild var="optText" obj="opt" interface="Node"/>
+<nodeValue var="optValue" obj="optText"/>
+<assertEquals actual="optValue" expected='"EMP31415"' id="lastValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement19.xml b/test/testcases/tests/level1/html/HTMLSelectElement19.xml
new file mode 100644
index 0000000..2d2a732
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement19.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLSelectElement19">
+<metadata>
+<title>HTMLSelectElement19</title>
+<creator>Curt Arnold</creator>
+<description>
+Add a new option before the selected node using HTMLSelectElement.add.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14493106"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="optLength" type="int"/>
+<var name="selected" type="int"/>
+<var name="newOpt" type="Element"/>
+<var name="newOptText" type="Text"/>
+<var name="opt" type="Element"/>
+<var name="optText" type="Text"/>
+<var name="optValue" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<var name="options" type="HTMLCollection"/>
+<var name="selectedNode" type="Node"/>
+<load var="doc" href="select" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<createElement var="newOpt" obj="doc" tagName='"option"'/>
+<createTextNode var="newOptText" obj="doc" data='"EMP31415"'/>
+<appendChild var="retNode" obj="newOpt" newChild="newOptText"/>
+<options var="options" obj="testNode"/>
+<item var="selectedNode" obj="options" index="0" interface="HTMLCollection"/>
+<add interface="HTMLSelectElement" obj="testNode" element="newOpt" before="selectedNode"/>
+<length interface="HTMLSelectElement" obj="testNode" var="optLength"/>
+<assertEquals actual="optLength" expected="6" id="optLength" ignoreCase="false"/>
+<selectedIndex interface="HTMLSelectElement" obj="testNode" var="selected"/>
+<assertEquals actual="selected" expected="1" id="selected" ignoreCase="false"/>
+<options var="options" obj="testNode"/>
+<item var="opt" obj="options" index="0" interface="HTMLCollection"/>
+<firstChild var="optText" obj="opt" interface="Node"/>
+<nodeValue var="optValue" obj="optText"/>
+<assertEquals actual="optValue" expected='"EMP31415"' id="lastValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLStyleElement01.xml b/test/testcases/tests/level1/html/HTMLStyleElement01.xml
new file mode 100644
index 0000000..60c2e57
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLStyleElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLStyleElement01">
+<metadata>
+<title>HTMLStyleElement01</title>
+<creator>NIST</creator>
+<description>
+ The disabled attribute enables/disables the stylesheet.
+
+ Retrieve the disabled attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-51162010"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdisabled" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="style" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"style"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<disabled interface="HTMLStyleElement" obj="testNode" var="vdisabled"/>
+<assertFalse actual="vdisabled" id="disabledLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLStyleElement02.xml b/test/testcases/tests/level1/html/HTMLStyleElement02.xml
new file mode 100644
index 0000000..727df54
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLStyleElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLStyleElement02">
+<metadata>
+<title>HTMLStyleElement02</title>
+<creator>NIST</creator>
+<description>
+ The media attribute identifies the intended medium of the style info.
+
+ Retrieve the media attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76412738"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmedia" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="style" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"style"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<media interface="HTMLStyleElement" obj="testNode" var="vmedia"/>
+<assertEquals actual="vmedia" expected='"screen"' id="mediaLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLStyleElement03.xml b/test/testcases/tests/level1/html/HTMLStyleElement03.xml
new file mode 100644
index 0000000..54394e3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLStyleElement03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLStyleElement03">
+<metadata>
+<title>HTMLStyleElement03</title>
+<creator>NIST</creator>
+<description>
+ The type attribute specifies the style sheet language(Internet media type).
+
+ Retrieve the type attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22472002"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="style" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"style"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLStyleElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"text/css"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCaptionElement01.xml b/test/testcases/tests/level1/html/HTMLTableCaptionElement01.xml
new file mode 100644
index 0000000..fb2fae7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCaptionElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCaptionElement01">
+<metadata>
+<title>HTMLTableCaptionElement01</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the caption alignment with respect to
+ the table.
+
+ Retrieve the align attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79875068"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecaption" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"caption"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLTableCaptionElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"top"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement01.xml b/test/testcases/tests/level1/html/HTMLTableCellElement01.xml
new file mode 100644
index 0000000..456d6d4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement01">
+<metadata>
+<title>HTMLTableCellElement01</title>
+<creator>NIST</creator>
+<description>
+ The cellIndex attribute specifies the index of this cell in the row(TH).
+
+ Retrieve the cellIndex attribute of the first TH element and examine its
+ value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80748363"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcellindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<cellIndex interface="HTMLTableCellElement" obj="testNode" var="vcellindex"/>
+<assertEquals actual="vcellindex" expected="0" id="cellIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement02.xml b/test/testcases/tests/level1/html/HTMLTableCellElement02.xml
new file mode 100644
index 0000000..f93075e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement02.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement02">
+<metadata>
+<title>HTMLTableCellElement02</title>
+<creator>NIST</creator>
+<description>
+ The cellIndex attribute specifies the index of this cell in the row(TD).
+
+ Retrieve the cellIndex attribute of the first TD element and examine its
+ value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80748363"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcellindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<cellIndex interface="HTMLTableCellElement" obj="testNode" var="vcellindex"/>
+<assertEquals actual="vcellindex" expected="0" id="cellIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement03.xml b/test/testcases/tests/level1/html/HTMLTableCellElement03.xml
new file mode 100644
index 0000000..ed23a81
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement03">
+<metadata>
+<title>HTMLTableCellElement03</title>
+<creator>NIST</creator>
+<description>
+ The abbr attribute specifies the abbreviation for table header cells(TH).
+
+ Retrieve the abbr attribute from the second TH element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74444037"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vabbr" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<abbr interface="HTMLTableCellElement" obj="testNode" var="vabbr"/>
+<assertEquals actual="vabbr" expected='"hd1"' id="abbrLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement04.xml b/test/testcases/tests/level1/html/HTMLTableCellElement04.xml
new file mode 100644
index 0000000..2a6ba39
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement04.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement04">
+<metadata>
+<title>HTMLTableCellElement04</title>
+<creator>NIST</creator>
+<description>
+ The abbr attribute specifies the abbreviation for table data cells(TD).
+
+ Retrieve the abbr attribute from the second TD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74444037"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vabbr" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<abbr interface="HTMLTableCellElement" obj="testNode" var="vabbr"/>
+<assertEquals actual="vabbr" expected='"hd2"' id="abbrLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement05.xml b/test/testcases/tests/level1/html/HTMLTableCellElement05.xml
new file mode 100644
index 0000000..97e12ee
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement05.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement05">
+<metadata>
+<title>HTMLTableCellElement05</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal alignment for table
+ header cells(TH).
+
+ Retrieve the align attribute from the second TH element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98433879"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<align interface="HTMLTableCellElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement06.xml b/test/testcases/tests/level1/html/HTMLTableCellElement06.xml
new file mode 100644
index 0000000..d642df3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement06.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement06">
+<metadata>
+<title>HTMLTableCellElement06</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal alignment for table
+ data cells(TD).
+
+ Retrieve the align attribute from the second TD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98433879"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<align interface="HTMLTableCellElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement07.xml b/test/testcases/tests/level1/html/HTMLTableCellElement07.xml
new file mode 100644
index 0000000..9041f28
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement07">
+<metadata>
+<title>HTMLTableCellElement07</title>
+<creator>NIST</creator>
+<description>
+ The axis attribute specifies the names group of related headers for table
+ header cells(TH).
+
+ Retrieve the align attribute from the second TH element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76554418"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaxis" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<axis interface="HTMLTableCellElement" obj="testNode" var="vaxis"/>
+<assertEquals actual="vaxis" expected='"center"' id="axisLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement08.xml b/test/testcases/tests/level1/html/HTMLTableCellElement08.xml
new file mode 100644
index 0000000..27136ed
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement08.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement08">
+<metadata>
+<title>HTMLTableCellElement08</title>
+<creator>NIST</creator>
+<description>
+ The axis attribute specifies the names group of related headers for table
+ data cells(TD).
+
+ Retrieve the axis attribute from the second TD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76554418"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaxis" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<axis interface="HTMLTableCellElement" obj="testNode" var="vaxis"/>
+<assertEquals actual="vaxis" expected='"center"' id="axisLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement09.xml b/test/testcases/tests/level1/html/HTMLTableCellElement09.xml
new file mode 100644
index 0000000..efd65ad
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement09.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement09">
+<metadata>
+<title>HTMLTableCellElement09</title>
+<creator>NIST</creator>
+<description>
+ The bgColor attribute specifies the cells background color for
+ table header cells(TH).
+
+ Retrieve the bgColor attribute from the second TH element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88135431"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vbgcolor" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<bgColor interface="HTMLTableCellElement" obj="testNode" var="vbgcolor"/>
+<assertEquals actual="vbgcolor" expected='"#00FFFF"' id="bgColorLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement10.xml b/test/testcases/tests/level1/html/HTMLTableCellElement10.xml
new file mode 100644
index 0000000..64a2746
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement10.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement10">
+<metadata>
+<title>HTMLTableCellElement10</title>
+<creator>NIST</creator>
+<description>
+ The bgColor attribute specifies the cells background color for table
+ data cells(TD).
+
+ Retrieve the bgColor attribute from the second TD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88135431"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vbgcolor" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<bgColor interface="HTMLTableCellElement" obj="testNode" var="vbgcolor"/>
+<assertEquals actual="vbgcolor" expected='"#FF0000"' id="bgColorLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement11.xml b/test/testcases/tests/level1/html/HTMLTableCellElement11.xml
new file mode 100644
index 0000000..0c7c2b3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement11.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement11">
+<metadata>
+<title>HTMLTableCellElement11</title>
+<creator>NIST</creator>
+<description>
+ The char attribute specifies the alignment character for cells in a column
+ of table header cells(TH).
+
+ Retrieve the char attribute from the second TH element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30914780"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vch" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<ch interface="HTMLTableCellElement" obj="testNode" var="vch"/>
+<assertEquals actual="vch" expected='":"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement12.xml b/test/testcases/tests/level1/html/HTMLTableCellElement12.xml
new file mode 100644
index 0000000..17ff175
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement12.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement12">
+<metadata>
+<title>HTMLTableCellElement12</title>
+<creator>NIST</creator>
+<description>
+ The char attribute specifies the alignment character for cells in a column
+ of table data cells(TD).
+
+ Retrieve the char attribute from the second TD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30914780"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vch" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<ch interface="HTMLTableCellElement" obj="testNode" var="vch"/>
+<assertEquals actual="vch" expected='":"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement13.xml b/test/testcases/tests/level1/html/HTMLTableCellElement13.xml
new file mode 100644
index 0000000..74beef5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement13.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement13">
+<metadata>
+<title>HTMLTableCellElement13</title>
+<creator>NIST</creator>
+<description>
+ The charoff attribute specifies the offset of alignment characacter
+ of table header cells(TH).
+
+ Retrieve the charoff attribute from the second TH element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20144310"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcharoff" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<chOff interface="HTMLTableCellElement" obj="testNode" var="vcharoff"/>
+<assertEquals actual="vcharoff" expected='"1"' id="chOffLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement14.xml b/test/testcases/tests/level1/html/HTMLTableCellElement14.xml
new file mode 100644
index 0000000..c703661
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement14.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement14">
+<metadata>
+<title>HTMLTableCellElement14</title>
+<creator>NIST</creator>
+<description>
+ The charoff attribute specifies the offset of alignment character
+ of table data cells(TD).
+
+ Retrieve the charoff attribute from the second TD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20144310"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcharoff" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<chOff interface="HTMLTableCellElement" obj="testNode" var="vcharoff"/>
+<assertEquals actual="vcharoff" expected='"1"' id="chOffLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement15.xml b/test/testcases/tests/level1/html/HTMLTableCellElement15.xml
new file mode 100644
index 0000000..b476253
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement15.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement15">
+<metadata>
+<title>HTMLTableCellElement15</title>
+<creator>NIST</creator>
+<description>
+ The colSpan attribute specifies the number of columns spanned by a table
+ header(TH) cell.
+
+ Retrieve the colspan attribute of the second TH element and examine its
+ value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84645244"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcolspan" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<colSpan interface="HTMLTableCellElement" obj="testNode" var="vcolspan"/>
+<assertEquals actual="vcolspan" expected="1" id="colSpanLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement16.xml b/test/testcases/tests/level1/html/HTMLTableCellElement16.xml
new file mode 100644
index 0000000..f5a7408
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement16.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement16">
+<metadata>
+<title>HTMLTableCellElement16</title>
+<creator>NIST</creator>
+<description>
+ The colSpan attribute specifies the number of columns spanned by a
+ table data(TD) cell.
+
+ Retrieve the colSpan attribute of the second TD element and examine its
+ value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84645244"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcolspan" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<colSpan interface="HTMLTableCellElement" obj="testNode" var="vcolspan"/>
+<assertEquals actual="vcolspan" expected="1" id="colSpanLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement17.xml b/test/testcases/tests/level1/html/HTMLTableCellElement17.xml
new file mode 100644
index 0000000..f10d801
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement17.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement17">
+<metadata>
+<title>HTMLTableCellElement17</title>
+<creator>NIST</creator>
+<description>
+ The headers attribute specifies a list of id attribute values for
+ table header cells(TH).
+
+ Retrieve the headers attribute from the second TH element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89104817"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheaders" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<headers interface="HTMLTableCellElement" obj="testNode" var="vheaders"/>
+<assertEquals actual="vheaders" expected='"header-1"' id="headersLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement18.xml b/test/testcases/tests/level1/html/HTMLTableCellElement18.xml
new file mode 100644
index 0000000..0ed53d0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement18.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement18">
+<metadata>
+<title>HTMLTableCellElement18</title>
+<creator>NIST</creator>
+<description>
+ The headers attribute specifies a list of id attribute values for
+ table data cells(TD).
+
+ Retrieve the headers attribute from the second TD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89104817"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheaders" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<headers interface="HTMLTableCellElement" obj="testNode" var="vheaders"/>
+<assertEquals actual="vheaders" expected='"header-3"' id="headersLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement19.xml b/test/testcases/tests/level1/html/HTMLTableCellElement19.xml
new file mode 100644
index 0000000..a4ab68d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement19.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement19">
+<metadata>
+<title>HTMLTableCellElement19</title>
+<creator>NIST</creator>
+<description>
+ The height attribute specifies the cell height.
+
+ Retrieve the height attribute from the second TH element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83679212"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheight" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<height interface="HTMLTableCellElement" obj="testNode" var="vheight"/>
+<assertEquals actual="vheight" expected='"50"' id="heightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement20.xml b/test/testcases/tests/level1/html/HTMLTableCellElement20.xml
new file mode 100644
index 0000000..a5fa5ae
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement20.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement20">
+<metadata>
+<title>HTMLTableCellElement20</title>
+<creator>NIST</creator>
+<description>
+ The height attribute specifies the cell height.
+
+ Retrieve the height attribute from the second TD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83679212"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheight" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<height interface="HTMLTableCellElement" obj="testNode" var="vheight"/>
+<assertEquals actual="vheight" expected='"50"' id="heightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement21.xml b/test/testcases/tests/level1/html/HTMLTableCellElement21.xml
new file mode 100644
index 0000000..19bb5fe
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement21.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement21">
+<metadata>
+<title>HTMLTableCellElement21</title>
+<creator>NIST</creator>
+<description>
+ The noWrap attribute supresses word wrapping.
+
+ Retrieve the noWrap attribute of the second TH Element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62922045"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vnowrap" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<noWrap interface="HTMLTableCellElement" obj="testNode" var="vnowrap"/>
+<assertTrue actual="vnowrap" id="noWrapLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement22.xml b/test/testcases/tests/level1/html/HTMLTableCellElement22.xml
new file mode 100644
index 0000000..98e11c4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement22.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement22">
+<metadata>
+<title>HTMLTableCellElement22</title>
+<creator>NIST</creator>
+<description>
+ The noWrap attribute supresses word wrapping.
+
+ Retrieve the noWrap attribute of the second TD Element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62922045"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vnowrap" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<noWrap interface="HTMLTableCellElement" obj="testNode" var="vnowrap"/>
+<assertTrue actual="vnowrap" id="noWrapLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement23.xml b/test/testcases/tests/level1/html/HTMLTableCellElement23.xml
new file mode 100644
index 0000000..b276fbc
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement23.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement23">
+<metadata>
+<title>HTMLTableCellElement23</title>
+<creator>NIST</creator>
+<description>
+ The rowSpan attribute specifies the number of rows spanned by a table
+ header(TH) cell.
+
+ Retrieve the rowSpan attribute of the second TH element and examine its
+ value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48237625"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrowspan" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rowSpan interface="HTMLTableCellElement" obj="testNode" var="vrowspan"/>
+<assertEquals actual="vrowspan" expected="1" id="rowSpanLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement24.xml b/test/testcases/tests/level1/html/HTMLTableCellElement24.xml
new file mode 100644
index 0000000..3679bee
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement24.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement24">
+<metadata>
+<title>HTMLTableCellElement24</title>
+<creator>NIST</creator>
+<description>
+ The rowSpan attribute specifies the number of rows spanned by a
+ table data(TD) cell.
+
+ Retrieve the rowSpan attribute of the second TD element and examine its
+ value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48237625"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrowspan" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rowSpan interface="HTMLTableCellElement" obj="testNode" var="vrowspan"/>
+<assertEquals actual="vrowspan" expected="1" id="rowSpanLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement25.xml b/test/testcases/tests/level1/html/HTMLTableCellElement25.xml
new file mode 100644
index 0000000..bc74f39
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement25.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement25">
+<metadata>
+<title>HTMLTableCellElement25</title>
+<creator>NIST</creator>
+<description>
+ The scope attribute specifies the scope covered by header cells.
+
+ Retrieve the scope attribute from the second TH element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36139952"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vscope" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<scope interface="HTMLTableCellElement" obj="testNode" var="vscope"/>
+<assertEquals actual="vscope" expected='"col"' id="scopeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement26.xml b/test/testcases/tests/level1/html/HTMLTableCellElement26.xml
new file mode 100644
index 0000000..5cf82e8
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement26.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement26">
+<metadata>
+<title>HTMLTableCellElement26</title>
+<creator>NIST</creator>
+<description>
+ The scope attribute specifies the scope covered by data cells.
+
+ Retrieve the scope attribute from the second TD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36139952"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vscope" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<scope interface="HTMLTableCellElement" obj="testNode" var="vscope"/>
+<assertEquals actual="vscope" expected='"col"' id="scopeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement27.xml b/test/testcases/tests/level1/html/HTMLTableCellElement27.xml
new file mode 100644
index 0000000..dceae74
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement27.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement27">
+<metadata>
+<title>HTMLTableCellElement27</title>
+<creator>NIST</creator>
+<description>
+ The vAlign attribute specifies the vertical alignment of data in cell.
+
+ Retrieve the vAlign attribute from the second TH element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58284221"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<vAlign interface="HTMLTableCellElement" obj="testNode" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement28.xml b/test/testcases/tests/level1/html/HTMLTableCellElement28.xml
new file mode 100644
index 0000000..1594528
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement28.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement28">
+<metadata>
+<title>HTMLTableCellElement28</title>
+<creator>NIST</creator>
+<description>
+ The vAlign attribute specifies the vertical alignment of data in cell.
+
+ Retrieve the vAlign attribute from the second TD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58284221"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<vAlign interface="HTMLTableCellElement" obj="testNode" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement29.xml b/test/testcases/tests/level1/html/HTMLTableCellElement29.xml
new file mode 100644
index 0000000..571458b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement29.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement29">
+<metadata>
+<title>HTMLTableCellElement29</title>
+<creator>NIST</creator>
+<description>
+ The width attribute specifies the cells width.
+
+ Retrieve the width attribute from the second TH element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27480795"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"th"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<width interface="HTMLTableCellElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"170"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableCellElement30.xml b/test/testcases/tests/level1/html/HTMLTableCellElement30.xml
new file mode 100644
index 0000000..332c038
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableCellElement30.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableCellElement30">
+<metadata>
+<title>HTMLTableCellElement30</title>
+<creator>NIST</creator>
+<description>
+ The width attribute specifies the cells width.
+
+ Retrieve the width attribute from the second TD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27480795"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<width interface="HTMLTableCellElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"175"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement01.xml b/test/testcases/tests/level1/html/HTMLTableColElement01.xml
new file mode 100644
index 0000000..ae5fea0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement01">
+<metadata>
+<title>HTMLTableColElement01</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal alignment of cell data
+ in column(COL).
+
+ Retrieve the align attribute from the COL element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-31128447"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLTableColElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement02.xml b/test/testcases/tests/level1/html/HTMLTableColElement02.xml
new file mode 100644
index 0000000..2d30433
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement02">
+<metadata>
+<title>HTMLTableColElement02</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal alignment of cell data
+ in column(COLGROUP).
+
+ Retrieve the align attribute from the COLGROUP element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-31128447"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"colgroup"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLTableColElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement03.xml b/test/testcases/tests/level1/html/HTMLTableColElement03.xml
new file mode 100644
index 0000000..6710753
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement03.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement03">
+<metadata>
+<title>HTMLTableColElement03</title>
+<creator>NIST</creator>
+<description>
+ The char attribute specifies the alignment character for cells
+ in a column(COL).
+
+ Retrieve the char attribute from the COL element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9447412"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vch" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<ch interface="HTMLTableColElement" obj="testNode" var="vch"/>
+<assertEquals actual="vch" expected='"*"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement04.xml b/test/testcases/tests/level1/html/HTMLTableColElement04.xml
new file mode 100644
index 0000000..db0ebd0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement04.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement04">
+<metadata>
+<title>HTMLTableColElement04</title>
+<creator>NIST</creator>
+<description>
+ The char attribute specifies the alignment character for cells
+ in a column(COLGROUP).
+
+ Retrieve the char attribute from the COLGROUP element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9447412"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vch" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"colgroup"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<ch interface="HTMLTableColElement" obj="testNode" var="vch"/>
+<assertEquals actual="vch" expected='"$"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement05.xml b/test/testcases/tests/level1/html/HTMLTableColElement05.xml
new file mode 100644
index 0000000..ebd56a9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement05">
+<metadata>
+<title>HTMLTableColElement05</title>
+<creator>NIST</creator>
+<description>
+ The charoff attribute specifies offset of alignment character(COL).
+
+ Retrieve the charoff attribute from the COL element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57779225"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vchoff" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<chOff interface="HTMLTableColElement" obj="testNode" var="vchoff"/>
+<assertEquals actual="vchoff" expected='"20"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement06.xml b/test/testcases/tests/level1/html/HTMLTableColElement06.xml
new file mode 100644
index 0000000..285f794
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement06.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement06">
+<metadata>
+<title>HTMLTableColElement06</title>
+<creator>NIST</creator>
+<description>
+ The charoff attribute specifies offset of alignment character(COLGROUP).
+
+ Retrieve the charoff attribute from the COLGROUP element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57779225"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vchoff" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"colgroup"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<chOff interface="HTMLTableColElement" obj="testNode" var="vchoff"/>
+<assertEquals actual="vchoff" expected='"15"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement07.xml b/test/testcases/tests/level1/html/HTMLTableColElement07.xml
new file mode 100644
index 0000000..7a70e40
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement07">
+<metadata>
+<title>HTMLTableColElement07</title>
+<creator>NIST</creator>
+<description>
+ The span attribute indicates the number of columns in a group or affected
+ by a grouping(COL).
+
+ Retrieve the span attribute of the COL element and examine its
+ value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96511335"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vspan" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<span interface="HTMLTableColElement" obj="testNode" var="vspan"/>
+<assertEquals actual="vspan" expected="1" id="spanLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement08.xml b/test/testcases/tests/level1/html/HTMLTableColElement08.xml
new file mode 100644
index 0000000..491ea88
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement08.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement08">
+<metadata>
+<title>HTMLTableColElement08</title>
+<creator>NIST</creator>
+<description>
+ The span attribute indicates the number of columns in a group or affected
+ by a grouping(COLGROUP).
+
+ Retrieve the span attribute of the COLGROUP element and examine its
+ value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96511335"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vspan" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"colgroup"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<span interface="HTMLTableColElement" obj="testNode" var="vspan"/>
+<assertEquals actual="vspan" expected="2" id="spanLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement09.xml b/test/testcases/tests/level1/html/HTMLTableColElement09.xml
new file mode 100644
index 0000000..0e3314b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement09.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement09">
+<metadata>
+<title>HTMLTableColElement09</title>
+<creator>NIST</creator>
+<description>
+ The vAlign attribute specifies the vertical alignment of cell data
+ in column(COL).
+
+ Retrieve the vAlign attribute from the COL element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83291710"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vAlign interface="HTMLTableColElement" obj="testNode" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement10.xml b/test/testcases/tests/level1/html/HTMLTableColElement10.xml
new file mode 100644
index 0000000..7be9c98
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement10.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement10">
+<metadata>
+<title>HTMLTableColElement10</title>
+<creator>NIST</creator>
+<description>
+ The vAlign attribute specifies the vertical alignment of cell data
+ in column(COLGROUP).
+
+ Retrieve the vAlign attribute from the COLGROUP element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83291710"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"colgroup"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vAlign interface="HTMLTableColElement" obj="testNode" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement11.xml b/test/testcases/tests/level1/html/HTMLTableColElement11.xml
new file mode 100644
index 0000000..636a0ae
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement11.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement11">
+<metadata>
+<title>HTMLTableColElement11</title>
+<creator>NIST</creator>
+<description>
+ The width attribute specifies the default column width(COL).
+
+ Retrieve the width attribute from the COL element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25196799"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<width interface="HTMLTableColElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"20"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableColElement12.xml b/test/testcases/tests/level1/html/HTMLTableColElement12.xml
new file mode 100644
index 0000000..bc39b9a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableColElement12.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableColElement12">
+<metadata>
+<title>HTMLTableColElement12</title>
+<creator>NIST</creator>
+<description>
+ The width attribute specifies the default column width(COLGORUP).
+
+ Retrieve the width attribute from the COLGROUP element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25196799"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"colgroup"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<width interface="HTMLTableColElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"20"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement01.xml b/test/testcases/tests/level1/html/HTMLTableElement01.xml
new file mode 100644
index 0000000..7135fd7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement01.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement01">
+<metadata>
+<title>HTMLTableElement01</title>
+<creator>NIST</creator>
+<description>
+ The caption attribute returns the tables CAPTION.
+
+ Retrieve the align attribute of the CAPTION element from the second
+ TABLE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcaption" type="HTMLTableCaptionElement" />
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<caption interface="HTMLTableElement" obj="testNode" var="vcaption"/>
+<align interface="HTMLTableCaptionElement" obj="vcaption" var="valign"/>
+<assertEquals actual="valign" expected='"top"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement02.xml b/test/testcases/tests/level1/html/HTMLTableElement02.xml
new file mode 100644
index 0000000..fb9fa8f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement02">
+<metadata>
+<title>HTMLTableElement02</title>
+<creator>NIST</creator>
+<description>
+ The caption attribute returns the tables CAPTION or void if it does not
+ exist.
+
+ Retrieve the CAPTION element from within the first TABLE element.
+ Since one does not exist it should be void.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcaption" type="HTMLTableCaptionElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<caption interface="HTMLTableElement" obj="testNode" var="vcaption"/>
+<assertNull actual="vcaption" id="captionLink" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement03.xml b/test/testcases/tests/level1/html/HTMLTableElement03.xml
new file mode 100644
index 0000000..0b59fe6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement03.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement03">
+<metadata>
+<title>HTMLTableElement03</title>
+<creator>NIST</creator>
+<description>
+ The tHead attribute returns the tables THEAD.
+
+ Retrieve the align attribute of the THEAD element from the second
+ TABLE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<align interface="HTMLTableSectionElement" obj="vsection" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement04.xml b/test/testcases/tests/level1/html/HTMLTableElement04.xml
new file mode 100644
index 0000000..1e254b3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement04.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement04">
+<metadata>
+<title>HTMLTableElement04</title>
+<creator>NIST</creator>
+<description>
+ The tHead attribute returns the tables THEAD or null if it does not
+ exist.
+
+ Retrieve the THEAD element from within the first TABLE element.
+ Since one does not exist it should be null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<assertNull actual="vsection" id="sectionLink" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement05.xml b/test/testcases/tests/level1/html/HTMLTableElement05.xml
new file mode 100644
index 0000000..15de11c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement05.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement05">
+<metadata>
+<title>HTMLTableElement05</title>
+<creator>NIST</creator>
+<description>
+ The tFoot attribute returns the tables TFOOT.
+
+ Retrieve the align attribute of the TFOOT element from the second
+ TABLE element and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<align interface="HTMLTableSectionElement" obj="vsection" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement06.xml b/test/testcases/tests/level1/html/HTMLTableElement06.xml
new file mode 100644
index 0000000..e18b8f8
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement06.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement06">
+<metadata>
+<title>HTMLTableElement06</title>
+<creator>NIST</creator>
+<description>
+ The tFoot attribute returns the tables TFOOT or null if it does not
+ exist.
+
+ Retrieve the TFOOT element from within the first TABLE element.
+ Since one does not exist it should be null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<assertNull actual="vsection" id="sectionLink" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement07.xml b/test/testcases/tests/level1/html/HTMLTableElement07.xml
new file mode 100644
index 0000000..44be1c3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement07.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement07">
+<metadata>
+<title>HTMLTableElement07</title>
+<creator>NIST</creator>
+<description>
+ The rows attribute returns a collection of all the rows in the table,
+ including al in THEAD, TFOOT, all TBODY elements.
+
+ Retrieve the rows attribute from the second TABLE element and
+ examine the items of the returned collection.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6156016"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="rowName" type="DOMString"/>
+<var name="vrow" type="Node"/>
+<var name="result" type="List"/>
+<var name="expectedOptions" type="List">
+<member>"tr"</member>
+<member>"tr"</member>
+<member>"tr"</member>
+<member>"tr"</member>
+</var>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<for-each collection="rowsnodeList" member="vrow">
+<nodeName obj="vrow" var="rowName"/>
+<append collection="result" item="rowName"/>
+</for-each>
+<assertEquals actual="result" expected="expectedOptions" id="rowsLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement08.xml b/test/testcases/tests/level1/html/HTMLTableElement08.xml
new file mode 100644
index 0000000..1a744b1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement08.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement08">
+<metadata>
+<title>HTMLTableElement08</title>
+<creator>NIST</creator>
+<description>
+ The tBodies attribute returns a collection of all the defined
+ table bodies.
+
+ Retrieve the tBodies attribute from the second TABLE element and
+ examine the items of the returned collection.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63206416"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="tbodiesnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="tbodiesName" type="DOMString"/>
+<var name="vtbodies" type="Node"/>
+<var name="result" type="List"/>
+<var name="expectedOptions" type="List">
+<member>"tbody"</member>
+</var>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tBodies interface="HTMLTableElement" obj="testNode" var="tbodiesnodeList"/>
+<for-each collection="tbodiesnodeList" member="vtbodies">
+<nodeName obj="vtbodies" var="tbodiesName"/>
+<append collection="result" item="tbodiesName"/>
+</for-each>
+<assertEquals actual="result" expected="expectedOptions" id="tbodiesLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement09.xml b/test/testcases/tests/level1/html/HTMLTableElement09.xml
new file mode 100644
index 0000000..a0aecf3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement09.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement09">
+<metadata>
+<title>HTMLTableElement09</title>
+<creator>NIST</creator>
+<description>
+ The tBodies attribute returns a collection of all the defined
+ table bodies.
+
+ Retrieve the tBodies attribute from the third TABLE element and
+ examine the items of the returned collection. Tests multiple TBODY
+ elements.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63206416"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="tbodiesnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="tbodiesName" type="DOMString"/>
+<var name="vtbodies" type="Node"/>
+<var name="result" type="List"/>
+<var name="expectedOptions" type="List">
+<member>"tbody"</member>
+<member>"tbody"</member>
+<member>"tbody"</member>
+</var>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="2"/>
+<tBodies interface="HTMLTableElement" obj="testNode" var="tbodiesnodeList"/>
+<for-each collection="tbodiesnodeList" member="vtbodies">
+<nodeName obj="vtbodies" var="tbodiesName"/>
+<append collection="result" item="tbodiesName"/>
+</for-each>
+<assertEquals actual="result" expected="expectedOptions" id="tbodiesLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement10.xml b/test/testcases/tests/level1/html/HTMLTableElement10.xml
new file mode 100644
index 0000000..160afeb
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement10.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement10">
+<metadata>
+<title>HTMLTableElement10</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the table's position with respect to the
+ rest of the document.
+
+ Retrieve the align attribute of the first TABLE element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23180977"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLTableElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement11.xml b/test/testcases/tests/level1/html/HTMLTableElement11.xml
new file mode 100644
index 0000000..785c4d0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement11.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement11">
+<metadata>
+<title>HTMLTableElement11</title>
+<creator>NIST</creator>
+<description>
+ The bgColor attribute specifies cell background color.
+
+ Retrieve the bgColor attribute of the first TABLE element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83532985"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vbgcolor" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<bgColor interface="HTMLTableElement" obj="testNode" var="vbgcolor"/>
+<assertEquals actual="vbgcolor" expected='"#ff0000"' id="bgColorLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement12.xml b/test/testcases/tests/level1/html/HTMLTableElement12.xml
new file mode 100644
index 0000000..811a147
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement12.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement12">
+<metadata>
+<title>HTMLTableElement12</title>
+<creator>NIST</creator>
+<description>
+ The border attribute specifies the width of the border around the table.
+
+ Retrieve the border attribute of the first TABLE element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-50969400"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vborder" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<border interface="HTMLTableElement" obj="testNode" var="vborder"/>
+<assertEquals actual="vborder" expected='"4"' id="borderLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement13.xml b/test/testcases/tests/level1/html/HTMLTableElement13.xml
new file mode 100644
index 0000000..4a18d8d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement13.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement13">
+<metadata>
+<title>HTMLTableElement13</title>
+<creator>NIST</creator>
+<description>
+ The cellpadding attribute specifies the horizontal and vertical space
+ between cell content and cell borders.
+
+ Retrieve the cellpadding attribute of the first TABLE element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59162158"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcellpadding" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<cellPadding interface="HTMLTableElement" obj="testNode" var="vcellpadding"/>
+<assertEquals actual="vcellpadding" expected='"2"' id="cellPaddingLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement14.xml b/test/testcases/tests/level1/html/HTMLTableElement14.xml
new file mode 100644
index 0000000..478e9c9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement14.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement14">
+<metadata>
+<title>HTMLTableElement14</title>
+<creator>NIST</creator>
+<description>
+ The cellSpacing attribute specifies the horizontal and vertical separation
+ between cells.
+
+ Retrieve the cellSpacing attribute of the first TABLE element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68907883"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="cellSpacing" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<cellSpacing interface="HTMLTableElement" obj="testNode" var="cellSpacing"/>
+<assertEquals actual="cellSpacing" expected='"2"' id="cellSpacingLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement15.xml b/test/testcases/tests/level1/html/HTMLTableElement15.xml
new file mode 100644
index 0000000..51f9763
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement15.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement15">
+<metadata>
+<title>HTMLTableElement15</title>
+<creator>NIST</creator>
+<description>
+ The frame attribute specifies which external table borders to render.
+
+ Retrieve the frame attribute of the first TABLE element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64808476"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vframe" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<frame interface="HTMLTableElement" obj="testNode" var="vframe"/>
+<assertEquals actual="vframe" expected='"border"' id="frameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement16.xml b/test/testcases/tests/level1/html/HTMLTableElement16.xml
new file mode 100644
index 0000000..7166437
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement16.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement16">
+<metadata>
+<title>HTMLTableElement16</title>
+<creator>NIST</creator>
+<description>
+ The rules attribute specifies which internal table borders to render.
+
+ Retrieve the rules attribute of the first TABLE element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26347553"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrules" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rules interface="HTMLTableElement" obj="testNode" var="vrules"/>
+<assertEquals actual="vrules" expected='"all"' id="rulesLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement17.xml b/test/testcases/tests/level1/html/HTMLTableElement17.xml
new file mode 100644
index 0000000..9337c09
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement17.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement17">
+<metadata>
+<title>HTMLTableElement17</title>
+<creator>NIST</creator>
+<description>
+ The summary attribute is a description about the purpose or structure
+ of a table.
+
+ Retrieve the summary attribute of the first TABLE element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-44998528"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsummary" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<summary interface="HTMLTableElement" obj="testNode" var="vsummary"/>
+<assertEquals actual="vsummary" expected='"HTML Control Table"' id="summaryLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement18.xml b/test/testcases/tests/level1/html/HTMLTableElement18.xml
new file mode 100644
index 0000000..210e2b1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement18.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement18">
+<metadata>
+<title>HTMLTableElement18</title>
+<creator>NIST</creator>
+<description>
+ The width attribute specifies the desired table width.
+
+ Retrieve the width attribute of the first TABLE element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77447361"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<width interface="HTMLTableElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"680"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement19.xml b/test/testcases/tests/level1/html/HTMLTableElement19.xml
new file mode 100644
index 0000000..152174d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement19.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement19">
+<metadata>
+<title>HTMLTableElement19</title>
+<creator>NIST</creator>
+<description>
+ The createTHead() method creates a table header row or returns
+ an existing one.
+
+ Create a new THEAD element on the first TABLE element. The first
+ TABLE element should return null to make sure one doesn't exist.
+ After creation of the THEAD element the value is once again
+ checked and should not be null.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70313345"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection1" type="HTMLTableSectionElement" />
+<var name="vsection2" type="HTMLTableSectionElement" />
+<var name="newHead" type="HTMLElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection1"/>
+<assertNull actual="vsection1" id="vsection1Id"/>
+<createTHead interface="HTMLTableElement" obj="testNode" var="newHead"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection2"/>
+<assertNotNull actual="vsection2" id="vsection2Id"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement20.xml b/test/testcases/tests/level1/html/HTMLTableElement20.xml
new file mode 100644
index 0000000..032725b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement20.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement20">
+<metadata>
+<title>HTMLTableElement20</title>
+<creator>NIST</creator>
+<description>
+ The createTHead() method creates a table header row or returns
+ an existing one.
+
+ Try to create a new THEAD element on the second TABLE element.
+ Since a THEAD element already exists in the TABLE element a new
+ THEAD element is not created and information from the already
+ existing THEAD element is returned.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70313345"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="newHead" type="HTMLElement" />
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<createTHead interface="HTMLTableElement" obj="testNode" var="newHead"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<align interface="HTMLTableSectionElement" obj="vsection" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement21.xml b/test/testcases/tests/level1/html/HTMLTableElement21.xml
new file mode 100644
index 0000000..3903b69
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement21.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement21">
+<metadata>
+<title>HTMLTableElement21</title>
+<creator>NIST</creator>
+<description>
+ The deleteTHead() method deletes the header from the table.
+
+ The deleteTHead() method will delete the THEAD Element from the
+ second TABLE element. First make sure that the THEAD element exists
+ and then count the number of rows. After the THEAD element is
+ deleted there should be one less row.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-38310198"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vsection1" type="HTMLTableElement" />
+<var name="vsection2" type="HTMLTableElement" />
+<var name="vrows" type="int"/>
+<var name="doc" type="Document"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>4</member>
+<member>3</member>
+</var>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection1"/>
+<assertNotNull actual="vsection1" id="vsection1Id"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<append collection="result" item="vrows"/>
+<deleteTHead obj="testNode" interface="HTMLTableElement"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection2"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<append collection="result" item="vrows"/>
+<assertEquals actual="result" expected="expectedResult" id="rowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement22.xml b/test/testcases/tests/level1/html/HTMLTableElement22.xml
new file mode 100644
index 0000000..6649b0f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement22.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement22">
+<metadata>
+<title>HTMLTableElement22</title>
+<creator>NIST</creator>
+<description>
+ The createTFoot() method creates a table footer row or returns
+ an existing one.
+
+ Create a new TFOOT element on the first TABLE element. The first
+ TABLE element should return null to make sure one doesn't exist.
+ After creation of the TFOOT element the value is once again
+ checked and should not be null.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8453710"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection1" type="HTMLTableSectionElement" />
+<var name="vsection2" type="HTMLTableSectionElement" />
+<var name="newFoot" type="HTMLElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection1"/>
+<assertNull actual="vsection1" id="vsection1Id"/>
+<createTFoot interface="HTMLTableElement" obj="testNode" var="newFoot"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection2"/>
+<assertNotNull actual="vsection2" id="vsection2Id"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement23.xml b/test/testcases/tests/level1/html/HTMLTableElement23.xml
new file mode 100644
index 0000000..1f53f03
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement23.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement23">
+<metadata>
+<title>HTMLTableElement23</title>
+<creator>NIST</creator>
+<description>
+ The createTFoot() method creates a table footer row or returns
+ an existing one.
+
+ Try to create a new TFOOT element on the second TABLE element.
+ Since a TFOOT element already exists in the TABLE element a new
+ TFOOT element is not created and information from the already
+ existing TFOOT element is returned.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8453710"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="newFoot" type="HTMLElement" />
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<createTFoot interface="HTMLTableElement" obj="testNode" var="newFoot"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<align interface="HTMLTableSectionElement" obj="vsection" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement24.xml b/test/testcases/tests/level1/html/HTMLTableElement24.xml
new file mode 100644
index 0000000..d6f993c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement24.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement24">
+<metadata>
+<title>HTMLTableElement24</title>
+<creator>NIST</creator>
+<description>
+ The deleteTFoot() method deletes the footer from the table.
+
+ The deleteTFoot() method will delete the TFOOT Element from the
+ second TABLE element. First make sure that the TFOOT element exists
+ and then count the number of rows. After the TFOOT element is
+ deleted there should be one less row.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78363258"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vsection1" type="HTMLTableElement" />
+<var name="vsection2" type="HTMLTableElement" />
+<var name="vrows" type="int"/>
+<var name="doc" type="Document"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>4</member>
+<member>3</member>
+</var>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection1"/>
+<assertNotNull actual="vsection1" id="vsection1Id"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<append collection="result" item="vrows"/>
+<deleteTFoot obj="testNode" interface="HTMLTableElement"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection2"/>
+<rows interface="HTMLTableElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<append collection="result" item="vrows"/>
+<assertEquals actual="result" expected="expectedResult" id="rowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement25.xml b/test/testcases/tests/level1/html/HTMLTableElement25.xml
new file mode 100644
index 0000000..a28ae65
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement25.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement25">
+<metadata>
+<title>HTMLTableElement25</title>
+<creator>NIST</creator>
+<description>
+ The createCaption() method creates a new table caption object or returns
+ an existing one.
+
+ Create a new CAPTION element on the first TABLE element. Since
+ one does not currently exist the CAPTION element is created.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96920263"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection1" type="HTMLTableCaptionElement" />
+<var name="vsection2" type="HTMLTableCaptionElement" />
+<var name="newCaption" type="HTMLElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<caption interface="HTMLTableElement" obj="testNode" var="vsection1"/>
+<assertNull actual="vsection1" id="vsection1Id"/>
+<createCaption interface="HTMLTableElement" obj="testNode" var="newCaption"/>
+<caption interface="HTMLTableElement" obj="testNode" var="vsection2"/>
+<assertNotNull actual="vsection2" id="vsection2Id"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement26.xml b/test/testcases/tests/level1/html/HTMLTableElement26.xml
new file mode 100644
index 0000000..5517f2f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement26.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement26">
+<metadata>
+<title>HTMLTableElement26</title>
+<creator>NIST</creator>
+<description>
+ The createCaption() method creates a new table caption object or returns
+ an existing one.
+
+ Create a new CAPTION element on the first TABLE element. Since
+ one currently exists the CAPTION element is not created and you
+ can get the align attribute from the CAPTION element that exists.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96920263"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection1" type="HTMLTableSectionElement" />
+<var name="vcaption" type="HTMLTableCaptionElement" />
+<var name="newCaption" type="HTMLElement" />
+<var name="valign" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<caption interface="HTMLTableElement" obj="testNode" var="vsection1"/>
+<assertNotNull actual="vsection1" id="vsection1Id"/>
+<createCaption interface="HTMLTableElement" obj="testNode" var="newCaption"/>
+<caption interface="HTMLTableElement" obj="testNode" var="vcaption"/>
+<align interface="HTMLTableCaptionElement" obj="vcaption" var="valign"/>
+<assertEquals actual="valign" expected='"top"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement27.xml b/test/testcases/tests/level1/html/HTMLTableElement27.xml
new file mode 100644
index 0000000..c387d69
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement27.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement27">
+<metadata>
+<title>HTMLTableElement27</title>
+<creator>NIST</creator>
+<description>
+ The deleteCaption() method deletes the table caption.
+
+ Delete the CAPTION element on the second TABLE element.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22930071"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection1" type="HTMLTableSectionElement" />
+<var name="vsection2" type="HTMLTableSectionElement" />
+<var name="valign" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<caption interface="HTMLTableElement" obj="testNode" var="vsection1"/>
+<assertNotNull actual="vsection1" id="vsection1Id"/>
+<deleteCaption interface="HTMLTableElement" obj="testNode"/>
+<caption interface="HTMLTableElement" obj="testNode" var="vsection2"/>
+<assertNull actual="vsection2" id="vsection2Id"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement28.xml b/test/testcases/tests/level1/html/HTMLTableElement28.xml
new file mode 100644
index 0000000..95f300c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement28.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement28">
+<metadata>
+<title>HTMLTableElement28</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the second TABLE element and invoke the insertRow() method
+ with an index of 0. Currently the zero indexed row is in the THEAD
+ section of the TABLE. The number of rows in the THEAD section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the THEAD section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vsection1" type="HTMLTableSectionElement"/>
+<var name="vsection2" type="HTMLTableSectionElement"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection1"/>
+<rows interface="HTMLTableSectionElement" obj="vsection1" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1" ignoreCase="false"/>
+<insertRow interface="HTMLTableElement" obj="testNode" var="newRow" index="0"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection2"/>
+<rows interface="HTMLTableSectionElement" obj="vsection2" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement29.xml b/test/testcases/tests/level1/html/HTMLTableElement29.xml
new file mode 100644
index 0000000..ba62848
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement29.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement29">
+<metadata>
+<title>HTMLTableElement29</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the second TABLE element and invoke the insertRow() method
+ with an index of two. Currently the 2nd indexed row is in the TBODY
+ section of the TABLE. The number of rows in the TBODY section before
+ insertion of the new row is two. After the new row is inserted the number
+ of rows in the TBODY section is three.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="tbodiesnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="bodyNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vsection1" type="HTMLTableSectionElement"/>
+<var name="vsection2" type="HTMLTableSectionElement"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tBodies interface="HTMLTableElement" obj="testNode" var="tbodiesnodeList"/>
+<item interface="HTMLCollection" obj="tbodiesnodeList" var="bodyNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="bodyNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink1" ignoreCase="false"/>
+<insertRow interface="HTMLTableElement" obj="testNode" var="newRow" index="2"/>
+<tBodies interface="HTMLTableElement" obj="testNode" var="tbodiesnodeList"/>
+<item interface="HTMLCollection" obj="tbodiesnodeList" var="bodyNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="bodyNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement30.xml b/test/testcases/tests/level1/html/HTMLTableElement30.xml
new file mode 100644
index 0000000..e45cf68
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement30.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement30">
+<metadata>
+<title>HTMLTableElement30</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the second TABLE element and invoke the insertRow() method
+ with an index of four. After the new row is inserted the number of rows
+ in the table should be five.
+ Also the number of rows in the TFOOT section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the TFOOT section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="tbodiesnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vsection1" type="HTMLTableSectionElement"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="4" id="rowsLink1" ignoreCase="false"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection1"/>
+<rows interface="HTMLTableSectionElement" obj="vsection1" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink" ignoreCase="false"/>
+<insertRow interface="HTMLTableElement" obj="testNode" var="newRow" index="4"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="5" id="rowsLink2" ignoreCase="false"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection1"/>
+<rows interface="HTMLTableSectionElement" obj="vsection1" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink3" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement31.xml b/test/testcases/tests/level1/html/HTMLTableElement31.xml
new file mode 100644
index 0000000..e5eb32d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement31.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement31">
+<metadata>
+<title>HTMLTableElement31</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row. In addition, when
+ the table is empty the row is inserted into a TBODY which is created
+ and inserted into the table.
+
+ Load the table1 file which has a non-empty table element.
+ Create an empty TABLE element and append to the document.
+ Check to make sure that the empty TABLE element doesn't
+ have a TBODY element. Insert a new row into the empty
+ TABLE element. Check for existence of the a TBODY element
+ in the table.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903"/>
+<!-- comments on the commented out sections -->
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Aug/0019.html"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=502"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="tableNode" type="Node"/>
+<var name="tbodiesnodeList" type="HTMLCollection"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="doc" type="Document"/>
+<var name="table" type="Element"/>
+<var name="tbodiesLength" type="int"/>
+<load var="doc" href="table1" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"body"'/>
+<assertSize collection="nodeList" size="1" id="tableSize1"/>
+<item interface="NodeList" obj="nodeList" index="0" var="testNode"/>
+<createElement obj="doc" var="table" tagName='"table"'/>
+<appendChild obj="testNode" newChild="table" var="tableNode"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="tableSize2"/>
+<tBodies interface="HTMLTableElement" obj="tableNode" var="tbodiesnodeList"/>
+<length var="tbodiesLength" obj="tbodiesnodeList" interface="HTMLCollection"/>
+<assertEquals actual="tbodiesLength" expected="0" id="Asize3" ignoreCase="false"/>
+<insertRow interface="HTMLTableElement" obj="tableNode" var="newRow" index="0"/>
+<tBodies interface="HTMLTableElement" obj="tableNode" var="tbodiesnodeList"/>
+<length var="tbodiesLength" obj="tbodiesnodeList" interface="HTMLCollection"/>
+<assertEquals actual="tbodiesLength" expected="1" id="Asize4" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement32.xml b/test/testcases/tests/level1/html/HTMLTableElement32.xml
new file mode 100644
index 0000000..a6529b0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement32.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement32">
+<metadata>
+<title>HTMLTableElement32</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a table row.
+
+ Retrieve the second TABLE element and invoke the deleteRow() method
+ with an index of 0(first row). Currently there are four rows in the
+ table. After the deleteRow() method is called there should be
+ three rows in the table.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13114938"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="4" id="rowsLink1" ignoreCase="false"/>
+<deleteRow interface="HTMLTableElement" obj="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement33.xml b/test/testcases/tests/level1/html/HTMLTableElement33.xml
new file mode 100644
index 0000000..1ae507a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement33.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableElement33">
+<metadata>
+<title>HTMLTableElement33</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a table row.
+
+ Retrieve the second TABLE element and invoke the deleteRow() method
+ with an index of 3(last row). Currently there are four rows in the
+ table. The deleteRow() method is called and now there should be three.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13114938"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="4" id="rowsLink1" ignoreCase="false"/>
+<deleteRow interface="HTMLTableElement" obj="testNode" index="3"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement01.xml b/test/testcases/tests/level1/html/HTMLTableRowElement01.xml
new file mode 100644
index 0000000..0dbd008
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement01.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement01">
+<metadata>
+<title>HTMLTableRowElement01</title>
+<creator>NIST</creator>
+<description>
+ The rowIndex attribute specifies the index of the row, relative to the
+ entire table, starting from 0. This is in document tree order and
+ not display order. The rowIndex does not take into account sections
+ (THEAD, TFOOT, or TBODY) within the table.
+
+ Retrieve the third TR element within the document and examine
+ its rowIndex value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67347567"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<rowIndex interface="HTMLTableRowElement" obj="testNode" var="vrowindex"/>
+<assertEquals actual="vrowindex" expected="1" id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement02.xml b/test/testcases/tests/level1/html/HTMLTableRowElement02.xml
new file mode 100644
index 0000000..284bc84
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement02">
+<metadata>
+<title>HTMLTableRowElement02</title>
+<creator>NIST</creator>
+<description>
+ The sectionRowIndex attribute specifies the index of this row, relative
+ to the current section(THEAD, TFOOT, or TBODY),starting from 0.
+
+ Retrieve the second TR(1st In THEAD) element within the document and
+ examine its sectionRowIndex value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79105901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsectionrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<sectionRowIndex interface="HTMLTableRowElement" obj="testNode" var="vsectionrowindex"/>
+<assertEquals actual="vsectionrowindex" expected="0" id="sectionRowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement03.xml b/test/testcases/tests/level1/html/HTMLTableRowElement03.xml
new file mode 100644
index 0000000..341c2a5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement03.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement03">
+<metadata>
+<title>HTMLTableRowElement03</title>
+<creator>NIST</creator>
+<description>
+ The sectionRowIndex attribute specifies the index of this row, relative
+ to the current section(THEAD, TFOOT, or TBODY),starting from 0.
+
+ Retrieve the third TR(1st In TFOOT) element within the document and
+ examine its sectionRowIndex value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79105901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsectionrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="2"/>
+<sectionRowIndex interface="HTMLTableRowElement" obj="testNode" var="vsectionrowindex"/>
+<assertEquals actual="vsectionrowindex" expected="0" id="sectionRowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement04.xml b/test/testcases/tests/level1/html/HTMLTableRowElement04.xml
new file mode 100644
index 0000000..bca05d4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement04.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement04">
+<metadata>
+<title>HTMLTableRowElement04</title>
+<creator>NIST</creator>
+<description>
+ The sectionRowIndex attribute specifies the index of this row, relative
+ to the current section(THEAD, TFOOT, or TBODY),starting from 0.
+
+ Retrieve the fifth TR(2nd In TBODY) element within the document and
+ examine its sectionRowIndex value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79105901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsectionrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="4"/>
+<sectionRowIndex interface="HTMLTableRowElement" obj="testNode" var="vsectionrowindex"/>
+<assertEquals actual="vsectionrowindex" expected="1" id="sectionRowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement05.xml b/test/testcases/tests/level1/html/HTMLTableRowElement05.xml
new file mode 100644
index 0000000..638126b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement05.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement05">
+<metadata>
+<title>HTMLTableRowElement05</title>
+<creator>NIST</creator>
+<description>
+ The cells attribute specifies the collection of cells in this row.
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67349879"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vcells" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="6" id="cellsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement06.xml b/test/testcases/tests/level1/html/HTMLTableRowElement06.xml
new file mode 100644
index 0000000..55fc2ac
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement06.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement06">
+<metadata>
+<title>HTMLTableRowElement06</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal alignment of data within
+ cells of this row.
+
+ Retrieve the align attribute of the second TR element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74098257"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<align interface="HTMLTableRowElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement07.xml b/test/testcases/tests/level1/html/HTMLTableRowElement07.xml
new file mode 100644
index 0000000..c586f6a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement07.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement07">
+<metadata>
+<title>HTMLTableRowElement07</title>
+<creator>NIST</creator>
+<description>
+ The bgColor attribute specifies the background color of rows.
+
+ Retrieve the bgColor attribute of the second TR element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18161327"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vbgcolor" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<bgColor interface="HTMLTableRowElement" obj="testNode" var="vbgcolor"/>
+<assertEquals actual="vbgcolor" expected='"#00FFFF"' id="bgColorLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement08.xml b/test/testcases/tests/level1/html/HTMLTableRowElement08.xml
new file mode 100644
index 0000000..751ef9e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement08.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement08">
+<metadata>
+<title>HTMLTableRowElement08</title>
+<creator>NIST</creator>
+<description>
+ The ch attribute specifies the alignment character for cells in a column.
+
+ Retrieve the char attribute of the second TR element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16230502"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vch" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<ch interface="HTMLTableRowElement" obj="testNode" var="vch"/>
+<assertEquals actual="vch" expected='"*"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement09.xml b/test/testcases/tests/level1/html/HTMLTableRowElement09.xml
new file mode 100644
index 0000000..eda033b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement09.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement09">
+<metadata>
+<title>HTMLTableRowElement09</title>
+<creator>NIST</creator>
+<description>
+ The chOff attribute specifies the offset of alignment character.
+
+ Retrieve the charoff attribute of the second TR element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68207461"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vchoff" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<chOff interface="HTMLTableRowElement" obj="testNode" var="vchoff"/>
+<assertEquals actual="vchoff" expected='"1"' id="charOffLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement10.xml b/test/testcases/tests/level1/html/HTMLTableRowElement10.xml
new file mode 100644
index 0000000..3554fb6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement10.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement10">
+<metadata>
+<title>HTMLTableRowElement10</title>
+<creator>NIST</creator>
+<description>
+ The vAlign attribute specifies the vertical alignment of data within
+ cells of this row.
+
+ Retrieve the vAlign attribute of the second TR element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90000058"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<vAlign interface="HTMLTableRowElement" obj="testNode" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement11.xml b/test/testcases/tests/level1/html/HTMLTableRowElement11.xml
new file mode 100644
index 0000000..f284090
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement11.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement11">
+<metadata>
+<title>HTMLTableRowElement11</title>
+<creator>NIST</creator>
+<description>
+ The insertCell() method inserts an empty TD cell into this row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the first TD element. Invoke the
+ insertCell() which will create an empty TD cell at the
+ zero index position. Check the value of the newly created
+ cell and make sure it is null and also the numbers of cells
+ should now be seven.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-06</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68927016"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="newCell" type="HTMLElement"/>
+<var name="vcells" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="6" id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="0"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"EMP0001"' id="value1Link" ignoreCase="false"/>
+<insertCell interface="HTMLTableRowElement" obj="testNode" var="newCell" index="0"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="7" id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="0"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<assertNull actual="cellNode" id="value2Link"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement12.xml b/test/testcases/tests/level1/html/HTMLTableRowElement12.xml
new file mode 100644
index 0000000..121954c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement12.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement12">
+<metadata>
+<title>HTMLTableRowElement12</title>
+<creator>NIST</creator>
+<description>
+ The insertCell() method inserts an empty TD cell into this row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the last TD element. Invoke the
+ insertCell() which will append the empty cell to the end of the list.
+ Check the value of the newly created cell and make sure it is null
+ and also the numbers of cells should now be seven.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-06</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68927016"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="newCell" type="HTMLElement"/>
+<var name="vcells" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="6" id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="5"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"1230 North Ave. Dallas, Texas 98551"' id="value1Link" ignoreCase="false"/>
+<insertCell interface="HTMLTableRowElement" obj="testNode" var="newCell" index="6"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="7" id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="6"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<assertNull actual="cellNode" id="value2Link"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement13.xml b/test/testcases/tests/level1/html/HTMLTableRowElement13.xml
new file mode 100644
index 0000000..a90f596
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement13.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement13">
+<metadata>
+<title>HTMLTableRowElement13</title>
+<creator>NIST</creator>
+<description>
+ The deleteCell() method deletes a cell from the current row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the first TD element. Invoke the
+ deleteCell() method which will delete a cell from the current row.
+ Check the value of the cell at the zero index and also check
+ the number of cells which should now be five.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-06</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11738598"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="vcells" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="6" id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="0"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"EMP0001"' id="value1Link" ignoreCase="false"/>
+<deleteCell interface="HTMLTableRowElement" obj="testNode" index="0"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="5" id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="0"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"Margaret Martin"' id="value2Link" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement14.xml b/test/testcases/tests/level1/html/HTMLTableRowElement14.xml
new file mode 100644
index 0000000..27af8e2
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement14.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableRowElement14">
+<metadata>
+<title>HTMLTableRowElement14</title>
+<creator>NIST</creator>
+<description>
+ The deleteCell() method deletes a cell from the current row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the third(index 2) TD element. Invoke the
+ deleteCell() method which will delete a cell from the current row.
+ Check the value of the third cell(index 2) and also check
+ the number of cells which should now be five.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-06</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11738598"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="vcells" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="6" id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="2"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"Accountant"' id="value1Link" ignoreCase="false"/>
+<deleteCell interface="HTMLTableRowElement" obj="testNode" index="2"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="5" id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="2"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"56,000"' id="value2Link" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement01.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement01.xml
new file mode 100644
index 0000000..238dcb2
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement01">
+<metadata>
+<title>HTMLTableSectionElement01</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal alignment of data within
+ cells.
+
+ Retrieve the align attribute of the first THEAD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40530119"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLTableSectionElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement02.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement02.xml
new file mode 100644
index 0000000..c4bdbf9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement02">
+<metadata>
+<title>HTMLTableSectionElement02</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal alignment of data within
+ cells.
+
+ Retrieve the align attribute of the first TFOOT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40530119"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLTableSectionElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement03.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement03.xml
new file mode 100644
index 0000000..2236435
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement03.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement03">
+<metadata>
+<title>HTMLTableSectionElement03</title>
+<creator>NIST</creator>
+<description>
+ The align attribute specifies the horizontal alignment of data within
+ cells.
+
+ Retrieve the align attribute of the first TBODY element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40530119"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<align interface="HTMLTableSectionElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement04.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement04.xml
new file mode 100644
index 0000000..2060f35
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement04.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement04">
+<metadata>
+<title>HTMLTableSectionElement04</title>
+<creator>NIST</creator>
+<description>
+ The ch attribute specifies the alignment character for cells in a
+ column.
+
+ Retrieve the char attribute of the first THEAD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83470012"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vch" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<ch interface="HTMLTableSectionElement" obj="testNode" var="vch"/>
+<assertEquals actual="vch" expected='"*"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement05.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement05.xml
new file mode 100644
index 0000000..32022bb
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement05.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement05">
+<metadata>
+<title>HTMLTableSectionElement05</title>
+<creator>NIST</creator>
+<description>
+ The ch attribute specifies the alignment character for cells in a
+ column.
+
+ Retrieve the char attribute of the first TFOOT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83470012"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vch" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<ch interface="HTMLTableSectionElement" obj="testNode" var="vch"/>
+<assertEquals actual="vch" expected='"+"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement06.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement06.xml
new file mode 100644
index 0000000..be665e4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement06.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement06">
+<metadata>
+<title>HTMLTableSectionElement06</title>
+<creator>NIST</creator>
+<description>
+ The ch attribute specifies the alignment character for cells in a
+ column.
+
+ Retrieve the char attribute of the first TBODY element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83470012"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vch" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<ch interface="HTMLTableSectionElement" obj="testNode" var="vch"/>
+<assertEquals actual="vch" expected='"$"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement07.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement07.xml
new file mode 100644
index 0000000..ecf38f3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement07.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement07">
+<metadata>
+<title>HTMLTableSectionElement07</title>
+<creator>NIST</creator>
+<description>
+ The chOff attribute specifies the offset of alignment character.
+
+ Retrieve the charoff attribute of the first THEAD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53459732"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcharoff" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<chOff interface="HTMLTableSectionElement" obj="testNode" var="vcharoff"/>
+<assertEquals actual="vcharoff" expected='"1"' id="chOffLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement08.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement08.xml
new file mode 100644
index 0000000..48440ca
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement08.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement08">
+<metadata>
+<title>HTMLTableSectionElement08</title>
+<creator>NIST</creator>
+<description>
+ The chOff attribute specifies the offset of alignment character.
+
+ Retrieve the charoff attribute of the first TFOOT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53459732"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcharoff" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<chOff interface="HTMLTableSectionElement" obj="testNode" var="vcharoff"/>
+<assertEquals actual="vcharoff" expected='"2"' id="chOffLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement09.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement09.xml
new file mode 100644
index 0000000..501446b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement09.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement09">
+<metadata>
+<title>HTMLTableSectionElement09</title>
+<creator>NIST</creator>
+<description>
+ The chOff attribute specifies the offset of alignment character.
+
+ Retrieve the charoff attribute of the first TBODY element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53459732"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcharoff" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<chOff interface="HTMLTableSectionElement" obj="testNode" var="vcharoff"/>
+<assertEquals actual="vcharoff" expected='"3"' id="chOffLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement10.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement10.xml
new file mode 100644
index 0000000..3e011c1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement10.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement10">
+<metadata>
+<title>HTMLTableSectionElement10</title>
+<creator>NIST</creator>
+<description>
+ The vAlign attribute specifies the vertical alignment of cell data in
+ column.
+
+ Retrieve the vAlign attribute of the first THEAD element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-4379116"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vAlign interface="HTMLTableSectionElement" obj="testNode" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement11.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement11.xml
new file mode 100644
index 0000000..ba5ae68
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement11.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement11">
+<metadata>
+<title>HTMLTableSectionElement11</title>
+<creator>NIST</creator>
+<description>
+ The vAlign attribute specifies the vertical alignment of cell data in
+ column.
+
+ Retrieve the vAlign attribute of the first TFOOT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-4379116"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vAlign interface="HTMLTableSectionElement" obj="testNode" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement12.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement12.xml
new file mode 100644
index 0000000..e649489
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement12.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement12">
+<metadata>
+<title>HTMLTableSectionElement12</title>
+<creator>NIST</creator>
+<description>
+ The vAlign attribute specifies the vertical alignment of cell data in
+ column.
+
+ Retrieve the vAlign attribute of the first TBODY element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-4379116"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<vAlign interface="HTMLTableSectionElement" obj="testNode" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement13.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement13.xml
new file mode 100644
index 0000000..1110c65
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement13.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement13">
+<metadata>
+<title>HTMLTableSectionElement13</title>
+<creator>NIST</creator>
+<description>
+ The rows attribute specifies the collection of rows in this table section.
+
+ Retrieve the first THEAD element and examine the value of
+ the rows length attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52092650"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement14.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement14.xml
new file mode 100644
index 0000000..83c90c0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement14.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement14">
+<metadata>
+<title>HTMLTableSectionElement14</title>
+<creator>NIST</creator>
+<description>
+ The rows attribute specifies the collection of rows in this table section.
+
+ Retrieve the first TFOOT element and examine the value of
+ the rows length attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52092650"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement15.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement15.xml
new file mode 100644
index 0000000..6c8f0dd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement15.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement15">
+<metadata>
+<title>HTMLTableSectionElement15</title>
+<creator>NIST</creator>
+<description>
+ The rows attribute specifies the collection of rows in this table section.
+
+ Retrieve the first TBODY element and examine the value of
+ the rows length attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52092650"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement16.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement16.xml
new file mode 100644
index 0000000..567d86b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement16.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement16">
+<metadata>
+<title>HTMLTableSectionElement16</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first THEAD element and invoke the insertRow() method
+ with an index of 0. The nuber of rows in the THEAD section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the THEAD section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1" ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode" var="newRow" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement17.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement17.xml
new file mode 100644
index 0000000..4a3e283
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement17.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement17">
+<metadata>
+<title>HTMLTableSectionElement17</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TFOOT element and invoke the insertRow() method
+ with an index of 0. The nuber of rows in the TFOOT section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the TFOOT section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1" ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode" var="newRow" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement18.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement18.xml
new file mode 100644
index 0000000..e8073be
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement18.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement18">
+<metadata>
+<title>HTMLTableSectionElement18</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TBODY element and invoke the insertRow() method
+ with an index of 0. The nuber of rows in the TBODY section before
+ insertion of the new row is two. After the new row is inserted the number
+ of rows in the TBODY section is three.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink1" ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode" var="newRow" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement19.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement19.xml
new file mode 100644
index 0000000..f8d7933
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement19.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement19">
+<metadata>
+<title>HTMLTableSectionElement19</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first THEAD element and invoke the insertRow() method
+ with an index of 1. The nuber of rows in the THEAD section before
+ insertion of the new row is one therefore the new row is appended.
+ After the new row is inserted the number of rows in the THEAD
+ section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1" ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode" var="newRow" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement20.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement20.xml
new file mode 100644
index 0000000..99452e7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement20.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement20">
+<metadata>
+<title>HTMLTableSectionElement20</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TFOOT element and invoke the insertRow() method
+ with an index of one. The nuber of rows in the TFOOT section before
+ insertion of the new row is one therefore the new row is appended.
+ After the new row is inserted the number of rows in the TFOOT section
+ is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1" ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode" var="newRow" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement21.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement21.xml
new file mode 100644
index 0000000..05d7ef8
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement21.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement21">
+<metadata>
+<title>HTMLTableSectionElement21</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TBODY element and invoke the insertRow() method
+ with an index of two. The number of rows in the TBODY section before
+ insertion of the new row is two therefore the row is appended.
+ After the new row is inserted the number of rows in the TBODY section is
+ three.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=502"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink1" ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode" var="newRow" index="2"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement22.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement22.xml
new file mode 100644
index 0000000..5d8bef4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement22.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement22">
+<metadata>
+<title>HTMLTableSectionElement22</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a row from this section.
+
+ Retrieve the first THEAD element and invoke the deleteRow() method
+ with an index of 0. The nuber of rows in the THEAD section before
+ the deletion of the row is one. After the row is deleted the number
+ of rows in the THEAD section is zero.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5625626"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1" ignoreCase="false"/>
+<deleteRow interface="HTMLTableSectionElement" obj="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="0" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement23.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement23.xml
new file mode 100644
index 0000000..eb3f972
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement23.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement23">
+<metadata>
+<title>HTMLTableSectionElement23</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a row from this section.
+
+ Retrieve the first TFOOT element and invoke the deleteRow() method
+ with an index of 0. The nuber of rows in the TFOOT section before
+ the deletion of the row is one. After the row is deleted the number
+ of rows in the TFOOT section is zero.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5625626"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1" ignoreCase="false"/>
+<deleteRow interface="HTMLTableSectionElement" obj="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="0" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement24.xml b/test/testcases/tests/level1/html/HTMLTableSectionElement24.xml
new file mode 100644
index 0000000..39896e1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement24.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTableSectionElement24">
+<metadata>
+<title>HTMLTableSectionElement24</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a row from this section.
+
+ Retrieve the first TBODY element and invoke the deleteRow() method
+ with an index of 0. The nuber of rows in the TBODY section before
+ the deletion of the row is two. After the row is deleted the number
+ of rows in the TBODY section is one.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5625626"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink1" ignoreCase="false"/>
+<deleteRow interface="HTMLTableSectionElement" obj="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement01.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement01.xml
new file mode 100644
index 0000000..dec8a4e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement01">
+<metadata>
+<title>HTMLTextAreaElement01</title>
+<creator>NIST</creator>
+<description>
+ The defaultValue attribute represents the HTML value of the attribute
+ when the type attribute has the value of "Text", "File" or "Password".
+
+ Retrieve the defaultValue attribute of the 2nd TEXTAREA element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36152213"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdefaultvalue" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<defaultValue interface="HTMLTextAreaElement" obj="testNode" var="vdefaultvalue"/>
+<assertEquals actual="vdefaultvalue" expected='"TEXTAREA2"' id="defaultValueLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement02.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement02.xml
new file mode 100644
index 0000000..557d7a5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement02.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement02">
+<metadata>
+<title>HTMLTextAreaElement02</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute from the first TEXTAREA element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18911464"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="DOMString" />
+<var name="fNode" type="HTMLFormElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLTextAreaElement" obj="testNode" var="fNode"/>
+<id obj="fNode" var="vform"/>
+<assertEquals actual="vform" expected='"form1"' id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement03.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement03.xml
new file mode 100644
index 0000000..5d9528e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement03.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement03">
+<metadata>
+<title>HTMLTextAreaElement03</title>
+<creator>NIST</creator>
+<description>
+ The form attribute returns null if control in not within the context of
+ a form.
+
+ Retrieve the second TEXTAREA element and
+ examine its form element.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18911464"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="HTMLFormElement" />
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<form interface="HTMLTextAreaElement" obj="testNode" var="vform"/>
+<assertNull actual="vform" id="formNullLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement04.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement04.xml
new file mode 100644
index 0000000..2b6b8b2
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement04.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement04">
+<metadata>
+<title>HTMLTextAreaElement04</title>
+<creator>NIST</creator>
+<description>
+ The accessKey attribute specifies a single character access key to
+ give access to the form control.
+
+ Retrieve the accessKey attribute of the 1st TEXTAREA element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93102991"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaccesskey" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<accessKey interface="HTMLTextAreaElement" obj="testNode" var="vaccesskey"/>
+<assertEquals actual="vaccesskey" expected='"c"' id="accessKeyLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement05.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement05.xml
new file mode 100644
index 0000000..e51bcab
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement05">
+<metadata>
+<title>HTMLTextAreaElement05</title>
+<creator>NIST</creator>
+<description>
+ The cols attribute specifies the width of control(in characters).
+
+ Retrieve the cols attribute of the 1st TEXTAREA element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-51387225"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcols" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<cols interface="HTMLTextAreaElement" obj="testNode" var="vcols"/>
+<assertEquals actual="vcols" expected="20" id="colsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement06.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement06.xml
new file mode 100644
index 0000000..8ce1913
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement06.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement06">
+<metadata>
+<title>HTMLTextAreaElement06</title>
+<creator>NIST</creator>
+<description>
+ The disabled attribute specifies the control is unavailable in this
+ context.
+
+ Retrieve the disabled attribute from the 2nd TEXTAREA element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98725443"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdisabled" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<disabled interface="HTMLTextAreaElement" obj="testNode" var="vdisabled"/>
+<assertTrue actual="vdisabled" id="disabledLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement07.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement07.xml
new file mode 100644
index 0000000..eb71a3e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement07">
+<metadata>
+<title>HTMLTextAreaElement07</title>
+<creator>NIST</creator>
+<description>
+ The name attribute specifies the form control or object name when
+ submitted with a form.
+
+ Retrieve the name attribute of the 1st TEXTAREA element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70715578"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<name interface="HTMLTextAreaElement" obj="testNode" var="vname"/>
+<assertEquals actual="vname" expected='"text1"' id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement08.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement08.xml
new file mode 100644
index 0000000..5ba7c88
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement08.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement08">
+<metadata>
+<title>HTMLTextAreaElement08</title>
+<creator>NIST</creator>
+<description>
+ The readOnly attribute specifies this control is read-only.
+
+ Retrieve the readOnly attribute from the 3rd TEXTAREA element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39131423"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vreadonly" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="2"/>
+<readOnly interface="HTMLTextAreaElement" obj="testNode" var="vreadonly"/>
+<assertTrue actual="vreadonly" id="readOnlyLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement09.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement09.xml
new file mode 100644
index 0000000..4fc40dd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement09.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement09">
+<metadata>
+<title>HTMLTextAreaElement09</title>
+<creator>NIST</creator>
+<description>
+ The rows attribute specifies the number of text rowns.
+
+ Retrieve the rows attribute of the 1st TEXTAREA element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46975887"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTextAreaElement" obj="testNode" var="vrows"/>
+<assertEquals actual="vrows" expected="7" id="rowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement10.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement10.xml
new file mode 100644
index 0000000..1cedcb0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement10.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement10">
+<metadata>
+<title>HTMLTextAreaElement10</title>
+<creator>NIST</creator>
+<description>
+ The tabIndex attribute is an index that represents the element's position
+ in the tabbing order.
+
+ Retrieve the tabIndex attribute of the 1st TEXTAREA element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-60363303"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtabindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tabIndex interface="HTMLTextAreaElement" obj="testNode" var="vtabindex"/>
+<assertEquals actual="vtabindex" expected="5" id="tabIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement11.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement11.xml
new file mode 100644
index 0000000..a97ed10
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement11.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement11">
+<metadata>
+<title>HTMLTextAreaElement11</title>
+<creator>NIST</creator>
+<description>
+ The type attribute specifies the type of this form control.
+
+ Retrieve the type attribute of the 1st TEXTAREA element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<!-- L1 HTML doesn't have an ID for the type attribute -->
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-24874179"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTML-HTMLTextAreaElement-type"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLTextAreaElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"textarea"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement12.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement12.xml
new file mode 100644
index 0000000..5c03799
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement12.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement12">
+<metadata>
+<title>HTMLTextAreaElement12</title>
+<creator>NIST</creator>
+<description>
+ The value attribute represents the current contents of the corresponding
+ form control, in an interactive user agent.
+
+ Retrieve the value attribute of the 1st TEXTAREA element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70715579"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalue" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<value interface="HTMLTextAreaElement" obj="testNode" var="vvalue"/>
+<assertEquals actual="vvalue" expected='"TEXTAREA1"' id="valueLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement13.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement13.xml
new file mode 100644
index 0000000..20cf230
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement13.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement13">
+<metadata>
+<title>HTMLTextAreaElement13</title>
+<creator>Curt Arnold</creator>
+<description>
+Calling HTMLTextAreaElement.blur should surrender input focus.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6750689"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<blur interface="HTMLTextAreaElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement14.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement14.xml
new file mode 100644
index 0000000..ddc72a6
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement14.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement14">
+<metadata>
+<title>HTMLTextAreaElement14</title>
+<creator>Curt Arnold</creator>
+<description>
+Calling HTMLTextAreaElement.focus should capture input focus.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39055426"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<focus interface="HTMLTextAreaElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTextAreaElement15.xml b/test/testcases/tests/level1/html/HTMLTextAreaElement15.xml
new file mode 100644
index 0000000..b192786
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTextAreaElement15.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTextAreaElement15">
+<metadata>
+<title>HTMLTextAreaElement15</title>
+<creator>Curt Arnold</creator>
+<description>
+Calling HTMLTextAreaElement.select should select the text area.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48880622"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="textarea" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"textarea"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<select interface="HTMLTextAreaElement" obj="testNode"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTitleElement01.xml b/test/testcases/tests/level1/html/HTMLTitleElement01.xml
new file mode 100644
index 0000000..9b95d95
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTitleElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLTitleElement01">
+<metadata>
+<title>HTMLTitleElement01</title>
+<creator>NIST</creator>
+<description>
+ The text attribute is the specified title as a string.
+
+ Retrieve the text attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77500413"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtext" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="title" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"title"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<text interface="HTMLTitleElement" obj="testNode" var="vtext"/>
+<assertEquals actual="vtext" expected='"NIST DOM HTML Test - TITLE"' id="textLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLUListElement01.xml b/test/testcases/tests/level1/html/HTMLUListElement01.xml
new file mode 100644
index 0000000..75695aa
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLUListElement01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLUListElement01">
+<metadata>
+<title>HTMLUListElement01</title>
+<creator>NIST</creator>
+<description>
+ The compact attribute specifies whether to reduce spacing between list
+ items.
+
+ Retrieve the compact attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39864178"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcompact" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="ulist" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"ul"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<compact interface="HTMLUListElement" obj="testNode" var="vcompact"/>
+<assertTrue actual="vcompact" id="compactLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLUListElement02.xml b/test/testcases/tests/level1/html/HTMLUListElement02.xml
new file mode 100644
index 0000000..e525d5b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLUListElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="HTMLUListElement02">
+<metadata>
+<title>HTMLUListElement02</title>
+<creator>NIST</creator>
+<description>
+ The type attribute specifies the bullet style.
+
+ Retrieve the type attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96874670"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="ulist" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"ul"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLUListElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"disc"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/alltests.xml b/test/testcases/tests/level1/html/alltests.xml
new file mode 100644
index 0000000..b90c242
--- /dev/null
+++ b/test/testcases/tests/level1/html/alltests.xml
@@ -0,0 +1,659 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 suite SYSTEM "dom1.dtd">
+
+<suite xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="alltests">
+<metadata>
+<title>DOM Level 1 HTML Test Suite</title>
+<creator>DOM Test Suite Project</creator>
+</metadata>
+ <suite.member href="HTMLAnchorElement01.xml"/>
+ <suite.member href="HTMLAnchorElement02.xml"/>
+ <suite.member href="HTMLAnchorElement03.xml"/>
+ <suite.member href="HTMLAnchorElement04.xml"/>
+ <suite.member href="HTMLAnchorElement05.xml"/>
+ <suite.member href="HTMLAnchorElement06.xml"/>
+ <suite.member href="HTMLAnchorElement07.xml"/>
+ <suite.member href="HTMLAnchorElement08.xml"/>
+ <suite.member href="HTMLAnchorElement09.xml"/>
+ <suite.member href="HTMLAnchorElement10.xml"/>
+ <suite.member href="HTMLAnchorElement11.xml"/>
+ <suite.member href="HTMLAnchorElement12.xml"/>
+ <suite.member href="HTMLAnchorElement13.xml"/>
+ <suite.member href="HTMLAnchorElement14.xml"/>
+ <suite.member href="HTMLAppletElement01.xml"/>
+ <suite.member href="HTMLAppletElement02.xml"/>
+ <suite.member href="HTMLAppletElement03.xml"/>
+ <suite.member href="HTMLAppletElement04.xml"/>
+ <suite.member href="HTMLAppletElement05.xml"/>
+ <suite.member href="HTMLAppletElement06.xml"/>
+ <suite.member href="HTMLAppletElement07.xml"/>
+ <suite.member href="HTMLAppletElement08.xml"/>
+ <suite.member href="HTMLAppletElement09.xml"/>
+ <suite.member href="HTMLAppletElement10.xml"/>
+ <suite.member href="HTMLAppletElement11.xml"/>
+ <suite.member href="HTMLAreaElement01.xml"/>
+ <suite.member href="HTMLAreaElement02.xml"/>
+ <suite.member href="HTMLAreaElement03.xml"/>
+ <suite.member href="HTMLAreaElement04.xml"/>
+ <suite.member href="HTMLAreaElement05.xml"/>
+ <suite.member href="HTMLAreaElement06.xml"/>
+ <suite.member href="HTMLAreaElement07.xml"/>
+ <suite.member href="HTMLAreaElement08.xml"/>
+ <suite.member href="HTMLBaseElement01.xml"/>
+ <suite.member href="HTMLBaseElement02.xml"/>
+ <suite.member href="HTMLBaseFontElement01.xml"/>
+ <suite.member href="HTMLBaseFontElement02.xml"/>
+ <suite.member href="HTMLBaseFontElement03.xml"/>
+ <suite.member href="HTMLBodyElement01.xml"/>
+ <suite.member href="HTMLBodyElement02.xml"/>
+ <suite.member href="HTMLBodyElement03.xml"/>
+ <suite.member href="HTMLBodyElement04.xml"/>
+ <suite.member href="HTMLBodyElement05.xml"/>
+ <suite.member href="HTMLBodyElement06.xml"/>
+ <suite.member href="HTMLBRElement01.xml"/>
+ <suite.member href="HTMLButtonElement01.xml"/>
+ <suite.member href="HTMLButtonElement02.xml"/>
+ <suite.member href="HTMLButtonElement03.xml"/>
+ <suite.member href="HTMLButtonElement04.xml"/>
+ <suite.member href="HTMLButtonElement05.xml"/>
+ <suite.member href="HTMLButtonElement06.xml"/>
+ <suite.member href="HTMLButtonElement07.xml"/>
+ <suite.member href="HTMLButtonElement08.xml"/>
+ <suite.member href="HTMLCollection01.xml"/>
+ <suite.member href="HTMLCollection02.xml"/>
+ <suite.member href="HTMLCollection03.xml"/>
+ <suite.member href="HTMLCollection04.xml"/>
+ <suite.member href="HTMLCollection05.xml"/>
+ <suite.member href="HTMLCollection06.xml"/>
+ <suite.member href="HTMLCollection07.xml"/>
+ <suite.member href="HTMLCollection08.xml"/>
+ <suite.member href="HTMLCollection09.xml"/>
+ <suite.member href="HTMLCollection10.xml"/>
+ <suite.member href="HTMLCollection11.xml"/>
+ <suite.member href="HTMLCollection12.xml"/>
+ <suite.member href="HTMLDirectoryElement01.xml"/>
+ <suite.member href="HTMLDivElement01.xml"/>
+ <suite.member href="HTMLDlistElement01.xml"/>
+ <suite.member href="HTMLDocument01.xml"/>
+ <suite.member href="HTMLDocument02.xml"/>
+ <suite.member href="HTMLDocument03.xml"/>
+ <suite.member href="HTMLDocument04.xml"/>
+ <suite.member href="HTMLDocument05.xml"/>
+ <suite.member href="HTMLDocument07.xml"/>
+ <suite.member href="HTMLDocument08.xml"/>
+ <suite.member href="HTMLDocument09.xml"/>
+ <suite.member href="HTMLDocument10.xml"/>
+ <suite.member href="HTMLDocument11.xml"/>
+ <suite.member href="HTMLDocument12.xml"/>
+ <suite.member href="HTMLDocument13.xml"/>
+ <suite.member href="HTMLDocument14.xml"/>
+ <suite.member href="HTMLDocument15.xml"/>
+ <suite.member href="HTMLDocument16.xml"/>
+ <suite.member href="HTMLDocument17.xml"/>
+ <suite.member href="HTMLDocument18.xml"/>
+ <suite.member href="HTMLDocument19.xml"/>
+ <suite.member href="HTMLDocument20.xml"/>
+ <suite.member href="HTMLDocument21.xml"/>
+ <suite.member href="HTMLElement01.xml"/>
+ <suite.member href="HTMLElement02.xml"/>
+ <suite.member href="HTMLElement03.xml"/>
+ <suite.member href="HTMLElement04.xml"/>
+ <suite.member href="HTMLElement05.xml"/>
+ <suite.member href="HTMLElement06.xml"/>
+ <suite.member href="HTMLElement07.xml"/>
+ <suite.member href="HTMLElement08.xml"/>
+ <suite.member href="HTMLElement09.xml"/>
+ <suite.member href="HTMLElement10.xml"/>
+ <suite.member href="HTMLElement11.xml"/>
+ <suite.member href="HTMLElement12.xml"/>
+ <suite.member href="HTMLElement13.xml"/>
+ <suite.member href="HTMLElement14.xml"/>
+ <suite.member href="HTMLElement15.xml"/>
+ <suite.member href="HTMLElement16.xml"/>
+ <suite.member href="HTMLElement17.xml"/>
+ <suite.member href="HTMLElement18.xml"/>
+ <suite.member href="HTMLElement19.xml"/>
+ <suite.member href="HTMLElement20.xml"/>
+ <suite.member href="HTMLElement21.xml"/>
+ <suite.member href="HTMLElement22.xml"/>
+ <suite.member href="HTMLElement23.xml"/>
+ <suite.member href="HTMLElement24.xml"/>
+ <suite.member href="HTMLElement25.xml"/>
+ <suite.member href="HTMLElement26.xml"/>
+ <suite.member href="HTMLElement27.xml"/>
+ <suite.member href="HTMLElement28.xml"/>
+ <suite.member href="HTMLElement29.xml"/>
+ <suite.member href="HTMLElement30.xml"/>
+ <suite.member href="HTMLElement31.xml"/>
+ <suite.member href="HTMLElement32.xml"/>
+ <suite.member href="HTMLElement33.xml"/>
+ <suite.member href="HTMLElement34.xml"/>
+ <suite.member href="HTMLElement35.xml"/>
+ <suite.member href="HTMLElement36.xml"/>
+ <suite.member href="HTMLElement37.xml"/>
+ <suite.member href="HTMLElement38.xml"/>
+ <suite.member href="HTMLElement39.xml"/>
+ <suite.member href="HTMLElement40.xml"/>
+ <suite.member href="HTMLElement41.xml"/>
+ <suite.member href="HTMLElement42.xml"/>
+ <suite.member href="HTMLElement43.xml"/>
+ <suite.member href="HTMLElement44.xml"/>
+ <suite.member href="HTMLElement45.xml"/>
+ <suite.member href="HTMLElement46.xml"/>
+ <suite.member href="HTMLElement47.xml"/>
+ <suite.member href="HTMLElement48.xml"/>
+ <suite.member href="HTMLElement49.xml"/>
+ <suite.member href="HTMLElement50.xml"/>
+ <suite.member href="HTMLElement51.xml"/>
+ <suite.member href="HTMLElement52.xml"/>
+ <suite.member href="HTMLElement53.xml"/>
+ <suite.member href="HTMLElement54.xml"/>
+ <suite.member href="HTMLElement55.xml"/>
+ <suite.member href="HTMLElement56.xml"/>
+ <suite.member href="HTMLElement57.xml"/>
+ <suite.member href="HTMLElement58.xml"/>
+ <suite.member href="HTMLElement59.xml"/>
+ <suite.member href="HTMLElement60.xml"/>
+ <suite.member href="HTMLElement61.xml"/>
+ <suite.member href="HTMLElement62.xml"/>
+ <suite.member href="HTMLElement63.xml"/>
+ <suite.member href="HTMLElement64.xml"/>
+ <suite.member href="HTMLElement65.xml"/>
+ <suite.member href="HTMLElement66.xml"/>
+ <suite.member href="HTMLElement67.xml"/>
+ <suite.member href="HTMLElement68.xml"/>
+ <suite.member href="HTMLElement69.xml"/>
+ <suite.member href="HTMLElement70.xml"/>
+ <suite.member href="HTMLElement71.xml"/>
+ <suite.member href="HTMLElement72.xml"/>
+ <suite.member href="HTMLElement73.xml"/>
+ <suite.member href="HTMLElement74.xml"/>
+ <suite.member href="HTMLElement75.xml"/>
+ <suite.member href="HTMLElement76.xml"/>
+ <suite.member href="HTMLElement77.xml"/>
+ <suite.member href="HTMLElement78.xml"/>
+ <suite.member href="HTMLElement79.xml"/>
+ <suite.member href="HTMLElement80.xml"/>
+ <suite.member href="HTMLElement81.xml"/>
+ <suite.member href="HTMLElement82.xml"/>
+ <suite.member href="HTMLElement83.xml"/>
+ <suite.member href="HTMLElement84.xml"/>
+ <suite.member href="HTMLElement85.xml"/>
+ <suite.member href="HTMLElement86.xml"/>
+ <suite.member href="HTMLElement87.xml"/>
+ <suite.member href="HTMLElement88.xml"/>
+ <suite.member href="HTMLElement89.xml"/>
+ <suite.member href="HTMLElement90.xml"/>
+ <suite.member href="HTMLElement91.xml"/>
+ <suite.member href="HTMLElement92.xml"/>
+ <suite.member href="HTMLElement93.xml"/>
+ <suite.member href="HTMLElement94.xml"/>
+ <suite.member href="HTMLElement95.xml"/>
+ <suite.member href="HTMLElement96.xml"/>
+ <suite.member href="HTMLElement97.xml"/>
+ <suite.member href="HTMLElement98.xml"/>
+ <suite.member href="HTMLElement99.xml"/>
+ <suite.member href="HTMLElement100.xml"/>
+ <suite.member href="HTMLElement101.xml"/>
+ <suite.member href="HTMLElement102.xml"/>
+ <suite.member href="HTMLElement103.xml"/>
+ <suite.member href="HTMLElement104.xml"/>
+ <suite.member href="HTMLElement105.xml"/>
+ <suite.member href="HTMLElement106.xml"/>
+ <suite.member href="HTMLElement107.xml"/>
+ <suite.member href="HTMLElement108.xml"/>
+ <suite.member href="HTMLElement109.xml"/>
+ <suite.member href="HTMLElement110.xml"/>
+ <suite.member href="HTMLElement111.xml"/>
+ <suite.member href="HTMLElement112.xml"/>
+ <suite.member href="HTMLElement113.xml"/>
+ <suite.member href="HTMLElement114.xml"/>
+ <suite.member href="HTMLElement115.xml"/>
+ <suite.member href="HTMLElement116.xml"/>
+ <suite.member href="HTMLElement117.xml"/>
+ <suite.member href="HTMLElement118.xml"/>
+ <suite.member href="HTMLElement119.xml"/>
+ <suite.member href="HTMLElement120.xml"/>
+ <suite.member href="HTMLElement121.xml"/>
+ <suite.member href="HTMLElement122.xml"/>
+ <suite.member href="HTMLElement123.xml"/>
+ <suite.member href="HTMLElement124.xml"/>
+ <suite.member href="HTMLElement125.xml"/>
+ <suite.member href="HTMLElement126.xml"/>
+ <suite.member href="HTMLElement127.xml"/>
+ <suite.member href="HTMLElement128.xml"/>
+ <suite.member href="HTMLElement129.xml"/>
+ <suite.member href="HTMLElement130.xml"/>
+ <suite.member href="HTMLElement131.xml"/>
+ <suite.member href="HTMLElement132.xml"/>
+ <suite.member href="HTMLElement133.xml"/>
+ <suite.member href="HTMLElement134.xml"/>
+ <suite.member href="HTMLElement135.xml"/>
+ <suite.member href="HTMLElement136.xml"/>
+ <suite.member href="HTMLElement137.xml"/>
+ <suite.member href="HTMLElement138.xml"/>
+ <suite.member href="HTMLElement139.xml"/>
+ <suite.member href="HTMLElement140.xml"/>
+ <suite.member href="HTMLElement141.xml"/>
+ <suite.member href="HTMLElement142.xml"/>
+ <suite.member href="HTMLElement143.xml"/>
+ <suite.member href="HTMLElement144.xml"/>
+ <suite.member href="HTMLElement145.xml"/>
+ <suite.member href="HTMLFieldSetElement01.xml"/>
+ <suite.member href="HTMLFieldSetElement02.xml"/>
+ <suite.member href="HTMLFontElement01.xml"/>
+ <suite.member href="HTMLFontElement02.xml"/>
+ <suite.member href="HTMLFontElement03.xml"/>
+ <suite.member href="HTMLFormElement01.xml"/>
+ <suite.member href="HTMLFormElement02.xml"/>
+ <suite.member href="HTMLFormElement03.xml"/>
+ <suite.member href="HTMLFormElement04.xml"/>
+ <suite.member href="HTMLFormElement05.xml"/>
+ <suite.member href="HTMLFormElement06.xml"/>
+ <suite.member href="HTMLFormElement07.xml"/>
+ <suite.member href="HTMLFormElement08.xml"/>
+ <suite.member href="HTMLFormElement09.xml"/>
+ <suite.member href="HTMLFormElement10.xml"/>
+ <suite.member href="HTMLFrameElement01.xml"/>
+ <suite.member href="HTMLFrameElement02.xml"/>
+ <suite.member href="HTMLFrameElement03.xml"/>
+ <suite.member href="HTMLFrameElement04.xml"/>
+ <suite.member href="HTMLFrameElement05.xml"/>
+ <suite.member href="HTMLFrameElement06.xml"/>
+ <suite.member href="HTMLFrameElement07.xml"/>
+ <suite.member href="HTMLFrameElement08.xml"/>
+ <suite.member href="HTMLFrameSetElement01.xml"/>
+ <suite.member href="HTMLFrameSetElement02.xml"/>
+ <suite.member href="HTMLHeadElement01.xml"/>
+ <suite.member href="HTMLHeadingElement01.xml"/>
+ <suite.member href="HTMLHeadingElement02.xml"/>
+ <suite.member href="HTMLHeadingElement03.xml"/>
+ <suite.member href="HTMLHeadingElement04.xml"/>
+ <suite.member href="HTMLHeadingElement05.xml"/>
+ <suite.member href="HTMLHeadingElement06.xml"/>
+ <suite.member href="HTMLHRElement01.xml"/>
+ <suite.member href="HTMLHRElement02.xml"/>
+ <suite.member href="HTMLHRElement03.xml"/>
+ <suite.member href="HTMLHRElement04.xml"/>
+ <suite.member href="HTMLHtmlElement01.xml"/>
+ <suite.member href="HTMLIFrameElement01.xml"/>
+ <suite.member href="HTMLIFrameElement02.xml"/>
+ <suite.member href="HTMLIFrameElement03.xml"/>
+ <suite.member href="HTMLIFrameElement04.xml"/>
+ <suite.member href="HTMLIFrameElement05.xml"/>
+ <suite.member href="HTMLIFrameElement06.xml"/>
+ <suite.member href="HTMLIFrameElement07.xml"/>
+ <suite.member href="HTMLIFrameElement08.xml"/>
+ <suite.member href="HTMLIFrameElement09.xml"/>
+ <suite.member href="HTMLIFrameElement10.xml"/>
+ <suite.member href="HTMLImageElement01.xml"/>
+ <suite.member href="HTMLImageElement02.xml"/>
+ <suite.member href="HTMLImageElement03.xml"/>
+ <suite.member href="HTMLImageElement04.xml"/>
+ <suite.member href="HTMLImageElement05.xml"/>
+ <suite.member href="HTMLImageElement06.xml"/>
+ <suite.member href="HTMLImageElement07.xml"/>
+ <suite.member href="HTMLImageElement08.xml"/>
+ <suite.member href="HTMLImageElement09.xml"/>
+ <suite.member href="HTMLImageElement10.xml"/>
+ <suite.member href="HTMLImageElement11.xml"/>
+ <suite.member href="HTMLImageElement12.xml"/>
+ <suite.member href="HTMLImageElement14.xml"/>
+ <suite.member href="HTMLInputElement01.xml"/>
+ <suite.member href="HTMLInputElement02.xml"/>
+ <suite.member href="HTMLInputElement03.xml"/>
+ <suite.member href="HTMLInputElement04.xml"/>
+ <suite.member href="HTMLInputElement05.xml"/>
+ <suite.member href="HTMLInputElement06.xml"/>
+ <suite.member href="HTMLInputElement07.xml"/>
+ <suite.member href="HTMLInputElement08.xml"/>
+ <suite.member href="HTMLInputElement09.xml"/>
+ <suite.member href="HTMLInputElement10.xml"/>
+ <suite.member href="HTMLInputElement11.xml"/>
+ <suite.member href="HTMLInputElement12.xml"/>
+ <suite.member href="HTMLInputElement13.xml"/>
+ <suite.member href="HTMLInputElement14.xml"/>
+ <suite.member href="HTMLInputElement15.xml"/>
+ <suite.member href="HTMLInputElement16.xml"/>
+ <suite.member href="HTMLInputElement17.xml"/>
+ <suite.member href="HTMLInputElement18.xml"/>
+ <suite.member href="HTMLInputElement19.xml"/>
+ <suite.member href="HTMLInputElement20.xml"/>
+ <suite.member href="HTMLInputElement21.xml"/>
+ <suite.member href="HTMLInputElement22.xml"/>
+ <suite.member href="HTMLIsIndexElement01.xml"/>
+ <suite.member href="HTMLIsIndexElement02.xml"/>
+ <suite.member href="HTMLIsIndexElement03.xml"/>
+ <suite.member href="HTMLLabelElement01.xml"/>
+ <suite.member href="HTMLLabelElement02.xml"/>
+ <suite.member href="HTMLLabelElement03.xml"/>
+ <suite.member href="HTMLLabelElement04.xml"/>
+ <suite.member href="HTMLLegendElement01.xml"/>
+ <suite.member href="HTMLLegendElement02.xml"/>
+ <suite.member href="HTMLLegendElement03.xml"/>
+ <suite.member href="HTMLLegendElement04.xml"/>
+ <suite.member href="HTMLLIElement01.xml"/>
+ <suite.member href="HTMLLIElement02.xml"/>
+ <suite.member href="HTMLLinkElement01.xml"/>
+ <suite.member href="HTMLLinkElement02.xml"/>
+ <suite.member href="HTMLLinkElement03.xml"/>
+ <suite.member href="HTMLLinkElement04.xml"/>
+ <suite.member href="HTMLLinkElement05.xml"/>
+ <suite.member href="HTMLLinkElement06.xml"/>
+ <suite.member href="HTMLLinkElement07.xml"/>
+ <suite.member href="HTMLLinkElement08.xml"/>
+ <suite.member href="HTMLLinkElement09.xml"/>
+ <suite.member href="HTMLMapElement01.xml"/>
+ <suite.member href="HTMLMapElement02.xml"/>
+ <suite.member href="HTMLMenuElement01.xml"/>
+ <suite.member href="HTMLMetaElement01.xml"/>
+ <suite.member href="HTMLMetaElement02.xml"/>
+ <suite.member href="HTMLMetaElement03.xml"/>
+ <suite.member href="HTMLMetaElement04.xml"/>
+ <suite.member href="HTMLModElement01.xml"/>
+ <suite.member href="HTMLModElement02.xml"/>
+ <suite.member href="HTMLModElement03.xml"/>
+ <suite.member href="HTMLModElement04.xml"/>
+ <suite.member href="HTMLObjectElement01.xml"/>
+ <suite.member href="HTMLObjectElement02.xml"/>
+ <suite.member href="HTMLObjectElement03.xml"/>
+ <suite.member href="HTMLObjectElement04.xml"/>
+ <suite.member href="HTMLObjectElement05.xml"/>
+ <suite.member href="HTMLObjectElement06.xml"/>
+ <suite.member href="HTMLObjectElement07.xml"/>
+ <suite.member href="HTMLObjectElement08.xml"/>
+ <suite.member href="HTMLObjectElement09.xml"/>
+ <suite.member href="HTMLObjectElement10.xml"/>
+ <suite.member href="HTMLObjectElement11.xml"/>
+ <suite.member href="HTMLObjectElement12.xml"/>
+ <suite.member href="HTMLObjectElement13.xml"/>
+ <suite.member href="HTMLObjectElement14.xml"/>
+ <suite.member href="HTMLObjectElement15.xml"/>
+ <suite.member href="HTMLObjectElement16.xml"/>
+ <suite.member href="HTMLObjectElement17.xml"/>
+ <suite.member href="HTMLObjectElement18.xml"/>
+ <suite.member href="HTMLObjectElement19.xml"/>
+ <suite.member href="HTMLOListElement01.xml"/>
+ <suite.member href="HTMLOListElement02.xml"/>
+ <suite.member href="HTMLOListElement03.xml"/>
+ <suite.member href="HTMLOptGroupElement01.xml"/>
+ <suite.member href="HTMLOptGroupElement02.xml"/>
+ <suite.member href="HTMLOptionElement01.xml"/>
+ <suite.member href="HTMLOptionElement02.xml"/>
+ <suite.member href="HTMLOptionElement03.xml"/>
+ <suite.member href="HTMLOptionElement04.xml"/>
+ <suite.member href="HTMLOptionElement05.xml"/>
+ <suite.member href="HTMLOptionElement06.xml"/>
+ <suite.member href="HTMLOptionElement07.xml"/>
+ <suite.member href="HTMLOptionElement08.xml"/>
+ <suite.member href="HTMLOptionElement09.xml"/>
+ <suite.member href="HTMLParagraphElement01.xml"/>
+ <suite.member href="HTMLParamElement01.xml"/>
+ <suite.member href="HTMLParamElement02.xml"/>
+ <suite.member href="HTMLParamElement03.xml"/>
+ <suite.member href="HTMLParamElement04.xml"/>
+ <suite.member href="HTMLPreElement01.xml"/>
+ <suite.member href="HTMLQuoteElement01.xml"/>
+ <suite.member href="HTMLQuoteElement02.xml"/>
+ <suite.member href="HTMLScriptElement01.xml"/>
+ <suite.member href="HTMLScriptElement02.xml"/>
+ <suite.member href="HTMLScriptElement03.xml"/>
+ <suite.member href="HTMLScriptElement04.xml"/>
+ <suite.member href="HTMLScriptElement05.xml"/>
+ <suite.member href="HTMLScriptElement06.xml"/>
+ <suite.member href="HTMLScriptElement07.xml"/>
+ <suite.member href="HTMLSelectElement01.xml"/>
+ <suite.member href="HTMLSelectElement02.xml"/>
+ <suite.member href="HTMLSelectElement03.xml"/>
+ <suite.member href="HTMLSelectElement04.xml"/>
+ <suite.member href="HTMLSelectElement05.xml"/>
+ <suite.member href="HTMLSelectElement06.xml"/>
+ <suite.member href="HTMLSelectElement07.xml"/>
+ <suite.member href="HTMLSelectElement08.xml"/>
+ <suite.member href="HTMLSelectElement09.xml"/>
+ <suite.member href="HTMLSelectElement10.xml"/>
+ <suite.member href="HTMLSelectElement11.xml"/>
+ <suite.member href="HTMLSelectElement12.xml"/>
+ <suite.member href="HTMLSelectElement13.xml"/>
+ <suite.member href="HTMLSelectElement14.xml"/>
+ <suite.member href="HTMLSelectElement15.xml"/>
+ <suite.member href="HTMLSelectElement16.xml"/>
+ <suite.member href="HTMLSelectElement17.xml"/>
+ <suite.member href="HTMLSelectElement18.xml"/>
+ <suite.member href="HTMLSelectElement19.xml"/>
+ <suite.member href="HTMLStyleElement01.xml"/>
+ <suite.member href="HTMLStyleElement02.xml"/>
+ <suite.member href="HTMLStyleElement03.xml"/>
+ <suite.member href="HTMLTableCaptionElement01.xml"/>
+ <suite.member href="HTMLTableCellElement01.xml"/>
+ <suite.member href="HTMLTableCellElement02.xml"/>
+ <suite.member href="HTMLTableCellElement03.xml"/>
+ <suite.member href="HTMLTableCellElement04.xml"/>
+ <suite.member href="HTMLTableCellElement05.xml"/>
+ <suite.member href="HTMLTableCellElement06.xml"/>
+ <suite.member href="HTMLTableCellElement07.xml"/>
+ <suite.member href="HTMLTableCellElement08.xml"/>
+ <suite.member href="HTMLTableCellElement09.xml"/>
+ <suite.member href="HTMLTableCellElement10.xml"/>
+ <suite.member href="HTMLTableCellElement11.xml"/>
+ <suite.member href="HTMLTableCellElement12.xml"/>
+ <suite.member href="HTMLTableCellElement13.xml"/>
+ <suite.member href="HTMLTableCellElement14.xml"/>
+ <suite.member href="HTMLTableCellElement15.xml"/>
+ <suite.member href="HTMLTableCellElement16.xml"/>
+ <suite.member href="HTMLTableCellElement17.xml"/>
+ <suite.member href="HTMLTableCellElement18.xml"/>
+ <suite.member href="HTMLTableCellElement19.xml"/>
+ <suite.member href="HTMLTableCellElement20.xml"/>
+ <suite.member href="HTMLTableCellElement21.xml"/>
+ <suite.member href="HTMLTableCellElement22.xml"/>
+ <suite.member href="HTMLTableCellElement23.xml"/>
+ <suite.member href="HTMLTableCellElement24.xml"/>
+ <suite.member href="HTMLTableCellElement25.xml"/>
+ <suite.member href="HTMLTableCellElement26.xml"/>
+ <suite.member href="HTMLTableCellElement27.xml"/>
+ <suite.member href="HTMLTableCellElement28.xml"/>
+ <suite.member href="HTMLTableCellElement29.xml"/>
+ <suite.member href="HTMLTableCellElement30.xml"/>
+ <suite.member href="HTMLTableColElement01.xml"/>
+ <suite.member href="HTMLTableColElement02.xml"/>
+ <suite.member href="HTMLTableColElement03.xml"/>
+ <suite.member href="HTMLTableColElement04.xml"/>
+ <suite.member href="HTMLTableColElement05.xml"/>
+ <suite.member href="HTMLTableColElement06.xml"/>
+ <suite.member href="HTMLTableColElement07.xml"/>
+ <suite.member href="HTMLTableColElement08.xml"/>
+ <suite.member href="HTMLTableColElement09.xml"/>
+ <suite.member href="HTMLTableColElement10.xml"/>
+ <suite.member href="HTMLTableColElement11.xml"/>
+ <suite.member href="HTMLTableColElement12.xml"/>
+ <suite.member href="HTMLTableElement01.xml"/>
+ <suite.member href="HTMLTableElement02.xml"/>
+ <suite.member href="HTMLTableElement03.xml"/>
+ <suite.member href="HTMLTableElement04.xml"/>
+ <suite.member href="HTMLTableElement05.xml"/>
+ <suite.member href="HTMLTableElement06.xml"/>
+ <suite.member href="HTMLTableElement07.xml"/>
+ <suite.member href="HTMLTableElement08.xml"/>
+ <suite.member href="HTMLTableElement09.xml"/>
+ <suite.member href="HTMLTableElement10.xml"/>
+ <suite.member href="HTMLTableElement11.xml"/>
+ <suite.member href="HTMLTableElement12.xml"/>
+ <suite.member href="HTMLTableElement13.xml"/>
+ <suite.member href="HTMLTableElement14.xml"/>
+ <suite.member href="HTMLTableElement15.xml"/>
+ <suite.member href="HTMLTableElement16.xml"/>
+ <suite.member href="HTMLTableElement17.xml"/>
+ <suite.member href="HTMLTableElement18.xml"/>
+ <suite.member href="HTMLTableElement19.xml"/>
+ <suite.member href="HTMLTableElement20.xml"/>
+ <suite.member href="HTMLTableElement21.xml"/>
+ <suite.member href="HTMLTableElement22.xml"/>
+ <suite.member href="HTMLTableElement23.xml"/>
+ <suite.member href="HTMLTableElement24.xml"/>
+ <suite.member href="HTMLTableElement25.xml"/>
+ <suite.member href="HTMLTableElement26.xml"/>
+ <suite.member href="HTMLTableElement27.xml"/>
+ <suite.member href="HTMLTableElement28.xml"/>
+ <suite.member href="HTMLTableElement29.xml"/>
+ <suite.member href="HTMLTableElement30.xml"/>
+ <suite.member href="HTMLTableElement31.xml"/>
+ <suite.member href="HTMLTableElement32.xml"/>
+ <suite.member href="HTMLTableElement33.xml"/>
+ <suite.member href="HTMLTableRowElement01.xml"/>
+ <suite.member href="HTMLTableRowElement02.xml"/>
+ <suite.member href="HTMLTableRowElement03.xml"/>
+ <suite.member href="HTMLTableRowElement04.xml"/>
+ <suite.member href="HTMLTableRowElement05.xml"/>
+ <suite.member href="HTMLTableRowElement06.xml"/>
+ <suite.member href="HTMLTableRowElement07.xml"/>
+ <suite.member href="HTMLTableRowElement08.xml"/>
+ <suite.member href="HTMLTableRowElement09.xml"/>
+ <suite.member href="HTMLTableRowElement10.xml"/>
+ <suite.member href="HTMLTableRowElement11.xml"/>
+ <suite.member href="HTMLTableRowElement12.xml"/>
+ <suite.member href="HTMLTableRowElement13.xml"/>
+ <suite.member href="HTMLTableRowElement14.xml"/>
+ <suite.member href="HTMLTableSectionElement01.xml"/>
+ <suite.member href="HTMLTableSectionElement02.xml"/>
+ <suite.member href="HTMLTableSectionElement03.xml"/>
+ <suite.member href="HTMLTableSectionElement04.xml"/>
+ <suite.member href="HTMLTableSectionElement05.xml"/>
+ <suite.member href="HTMLTableSectionElement06.xml"/>
+ <suite.member href="HTMLTableSectionElement07.xml"/>
+ <suite.member href="HTMLTableSectionElement08.xml"/>
+ <suite.member href="HTMLTableSectionElement09.xml"/>
+ <suite.member href="HTMLTableSectionElement10.xml"/>
+ <suite.member href="HTMLTableSectionElement11.xml"/>
+ <suite.member href="HTMLTableSectionElement12.xml"/>
+ <suite.member href="HTMLTableSectionElement13.xml"/>
+ <suite.member href="HTMLTableSectionElement14.xml"/>
+ <suite.member href="HTMLTableSectionElement15.xml"/>
+ <suite.member href="HTMLTableSectionElement16.xml"/>
+ <suite.member href="HTMLTableSectionElement17.xml"/>
+ <suite.member href="HTMLTableSectionElement18.xml"/>
+ <suite.member href="HTMLTableSectionElement19.xml"/>
+ <suite.member href="HTMLTableSectionElement20.xml"/>
+ <suite.member href="HTMLTableSectionElement21.xml"/>
+ <suite.member href="HTMLTableSectionElement22.xml"/>
+ <suite.member href="HTMLTableSectionElement23.xml"/>
+ <suite.member href="HTMLTableSectionElement24.xml"/>
+ <suite.member href="HTMLTextAreaElement01.xml"/>
+ <suite.member href="HTMLTextAreaElement02.xml"/>
+ <suite.member href="HTMLTextAreaElement03.xml"/>
+ <suite.member href="HTMLTextAreaElement04.xml"/>
+ <suite.member href="HTMLTextAreaElement05.xml"/>
+ <suite.member href="HTMLTextAreaElement06.xml"/>
+ <suite.member href="HTMLTextAreaElement07.xml"/>
+ <suite.member href="HTMLTextAreaElement08.xml"/>
+ <suite.member href="HTMLTextAreaElement09.xml"/>
+ <suite.member href="HTMLTextAreaElement10.xml"/>
+ <suite.member href="HTMLTextAreaElement11.xml"/>
+ <suite.member href="HTMLTextAreaElement12.xml"/>
+ <suite.member href="HTMLTextAreaElement13.xml"/>
+ <suite.member href="HTMLTextAreaElement14.xml"/>
+ <suite.member href="HTMLTextAreaElement15.xml"/>
+ <suite.member href="HTMLTitleElement01.xml"/>
+ <suite.member href="HTMLUListElement01.xml"/>
+ <suite.member href="HTMLUListElement02.xml"/>
+
+ <!-- netscape tests -->
+ <suite.member href="anchor01.xml"/>
+ <suite.member href="anchor02.xml"/>
+ <suite.member href="anchor03.xml"/>
+ <suite.member href="anchor04.xml"/>
+ <suite.member href="anchor05.xml"/>
+ <suite.member href="anchor06.xml"/>
+ <suite.member href="area01.xml"/>
+ <suite.member href="area02.xml"/>
+ <suite.member href="area03.xml"/>
+ <suite.member href="area04.xml"/>
+ <suite.member href="basefont01.xml"/>
+ <suite.member href="body01.xml"/>
+ <suite.member href="button01.xml"/>
+ <suite.member href="button02.xml"/>
+ <suite.member href="button03.xml"/>
+ <suite.member href="button04.xml"/>
+ <suite.member href="button05.xml"/>
+ <suite.member href="button06.xml"/>
+ <suite.member href="button07.xml"/>
+ <suite.member href="button08.xml"/>
+ <suite.member href="button09.xml"/>
+ <suite.member href="dlist01.xml"/>
+ <suite.member href="doc01.xml"/>
+ <suite.member href="hasFeature01.xml"/>
+ <suite.member href="object01.xml"/>
+ <suite.member href="object02.xml"/>
+ <suite.member href="object03.xml"/>
+ <suite.member href="object04.xml"/>
+ <suite.member href="object05.xml"/>
+ <suite.member href="object06.xml"/>
+ <suite.member href="object07.xml"/>
+ <suite.member href="object08.xml"/>
+ <suite.member href="object09.xml"/>
+ <suite.member href="object10.xml"/>
+ <suite.member href="object11.xml"/>
+ <suite.member href="object12.xml"/>
+ <suite.member href="object13.xml"/>
+ <suite.member href="object14.xml"/>
+ <suite.member href="object15.xml"/>
+ <suite.member href="table01.xml"/>
+ <suite.member href="table02.xml"/>
+ <suite.member href="table03.xml"/>
+ <suite.member href="table04.xml"/>
+ <suite.member href="table06.xml"/>
+ <suite.member href="table07.xml"/>
+ <suite.member href="table08.xml"/>
+ <suite.member href="table09.xml"/>
+ <suite.member href="table10.xml"/>
+ <suite.member href="table12.xml"/>
+ <suite.member href="table15.xml"/>
+ <suite.member href="table17.xml"/>
+ <suite.member href="table18.xml"/>
+ <suite.member href="table19.xml"/>
+ <suite.member href="table20.xml"/>
+ <suite.member href="table21.xml"/>
+ <suite.member href="table22.xml"/>
+ <suite.member href="table23.xml"/>
+ <suite.member href="table24.xml"/>
+ <suite.member href="table25.xml"/>
+ <suite.member href="table26.xml"/>
+ <suite.member href="table27.xml"/>
+ <suite.member href="table28.xml"/>
+ <suite.member href="table29.xml"/>
+ <suite.member href="table30.xml"/>
+ <suite.member href="table31.xml"/>
+ <suite.member href="table32.xml"/>
+ <suite.member href="table33.xml"/>
+ <suite.member href="table34.xml"/>
+ <suite.member href="table35.xml"/>
+ <suite.member href="table36.xml"/>
+ <suite.member href="table37.xml"/>
+ <suite.member href="table38.xml"/>
+ <suite.member href="table39.xml"/>
+ <suite.member href="table40.xml"/>
+ <suite.member href="table41.xml"/>
+ <suite.member href="table42.xml"/>
+ <suite.member href="table43.xml"/>
+ <suite.member href="table44.xml"/>
+ <suite.member href="table45.xml"/>
+ <suite.member href="table46.xml"/>
+ <suite.member href="table47.xml"/>
+ <suite.member href="table48.xml"/>
+ <suite.member href="table49.xml"/>
+ <suite.member href="table50.xml"/>
+ <suite.member href="table51.xml"/>
+ <suite.member href="table52.xml"/>
+ <suite.member href="table53.xml"/>
+
+</suite>
diff --git a/test/testcases/tests/level1/html/anchor01.xml b/test/testcases/tests/level1/html/anchor01.xml
new file mode 100644
index 0000000..19a2711
--- /dev/null
+++ b/test/testcases/tests/level1/html/anchor01.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="anchor01">
+<metadata>
+<title>anchor01</title>
+<creator>Netscape</creator>
+<description>
+A single character access key to give access to the form control.
+The value of attribute accessKey of the anchor element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89647724"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaccesskey" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<accessKey interface="HTMLAnchorElement" obj="testNode" var="vaccesskey"/>
+<assertEquals actual="vaccesskey" expected='"g"' id="accessKeyLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/anchor02.xml b/test/testcases/tests/level1/html/anchor02.xml
new file mode 100644
index 0000000..61486a7
--- /dev/null
+++ b/test/testcases/tests/level1/html/anchor02.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="anchor02">
+<metadata>
+<title>anchor02</title>
+<creator>Netscape</creator>
+<description>
+The character encoding of the linked resource.
+The value of attribute charset of the anchor element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67619266"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcharset" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<charset interface="HTMLAnchorElement" obj="testNode" var="vcharset"/>
+<assertEquals actual="vcharset" expected='"US-ASCII"' id="charsetLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/anchor03.xml b/test/testcases/tests/level1/html/anchor03.xml
new file mode 100644
index 0000000..e6bd32e
--- /dev/null
+++ b/test/testcases/tests/level1/html/anchor03.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="anchor03">
+<metadata>
+<title>anchor03</title>
+<creator>Netscape</creator>
+<description>
+Comma-separated list of lengths, defining an active region geometry.
+The value of attribute coords of the anchor element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92079539"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcoords" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<coords interface="HTMLAnchorElement" obj="testNode" var="vcoords"/>
+<assertEquals actual="vcoords" expected='"0,0,100,100"' id="coordsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/anchor04.xml b/test/testcases/tests/level1/html/anchor04.xml
new file mode 100644
index 0000000..b5ce201
--- /dev/null
+++ b/test/testcases/tests/level1/html/anchor04.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="anchor04">
+<metadata>
+<title>anchor04</title>
+<creator>Netscape</creator>
+<description>
+The URI of the linked resource.
+The value of attribute href of the anchor element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88517319"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhref" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<href interface="HTMLAnchorElement" obj="testNode" var="vhref"/>
+<assertURIEquals actual="vhref" isAbsolute="true" file='"submit.gif"' id="hrefLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/anchor05.xml b/test/testcases/tests/level1/html/anchor05.xml
new file mode 100644
index 0000000..27b34ac
--- /dev/null
+++ b/test/testcases/tests/level1/html/anchor05.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="anchor05">
+<metadata>
+<title>anchor05</title>
+<creator>Netscape</creator>
+<description>
+Advisory content type.
+The value of attribute type of the anchor element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63938221"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLAnchorElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"image/gif"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/anchor06.xml b/test/testcases/tests/level1/html/anchor06.xml
new file mode 100644
index 0000000..31190be
--- /dev/null
+++ b/test/testcases/tests/level1/html/anchor06.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="anchor06">
+<metadata>
+<title>anchor06</title>
+<creator>Netscape</creator>
+<description>
+The shape of the active area. The coordinates are given by coords
+The value of attribute shape of the anchor element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-02</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-49899808"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vshape" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"a"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<shape interface="HTMLAnchorElement" obj="testNode" var="vshape"/>
+<assertEquals actual="vshape" expected='"rect"' id="shapeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/area01.xml b/test/testcases/tests/level1/html/area01.xml
new file mode 100644
index 0000000..34ebdb2
--- /dev/null
+++ b/test/testcases/tests/level1/html/area01.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="area01">
+<metadata>
+<title>area01</title>
+<creator>Netscape</creator>
+<description>
+
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66021476"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcoords" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<coords interface="HTMLAreaElement" obj="testNode" var="vcoords"/>
+<assertEquals actual="vcoords" expected='"0,2,45,45"' id="coordsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/area02.xml b/test/testcases/tests/level1/html/area02.xml
new file mode 100644
index 0000000..8f85598
--- /dev/null
+++ b/test/testcases/tests/level1/html/area02.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="area02">
+<metadata>
+<title>area02</title>
+<creator>Netscape</creator>
+<description>
+
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-61826871"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vnohref" type="boolean" />
+<var name="doc" type="Node"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<noHref interface="HTMLAreaElement" obj="testNode" var="vnohref"/>
+<assertFalse actual="vnohref" id="noHrefLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/area03.xml b/test/testcases/tests/level1/html/area03.xml
new file mode 100644
index 0000000..577e711
--- /dev/null
+++ b/test/testcases/tests/level1/html/area03.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="area03">
+<metadata>
+<title>area03</title>
+<creator>Netscape</creator>
+<description>
+
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8722121"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtabindex" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tabIndex interface="HTMLAreaElement" obj="testNode" var="vtabindex"/>
+<assertEquals actual="vtabindex" expected="10" id="tabIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/area04.xml b/test/testcases/tests/level1/html/area04.xml
new file mode 100644
index 0000000..f964a57
--- /dev/null
+++ b/test/testcases/tests/level1/html/area04.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="area04">
+<metadata>
+<title>area04</title>
+<creator>Netscape</creator>
+<description>
+
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57944457"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaccesskey" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<accessKey interface="HTMLAreaElement" obj="testNode" var="vaccesskey"/>
+<assertEquals actual="vaccesskey" expected='"a"' id="accessKeyLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/basefont01.xml b/test/testcases/tests/level1/html/basefont01.xml
new file mode 100644
index 0000000..eadfca4
--- /dev/null
+++ b/test/testcases/tests/level1/html/basefont01.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="basefont01">
+<metadata>
+<title>basefont01</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute color of the basefont element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87502302"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcolor" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="basefont" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"basefont"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<color interface="HTMLBaseFontElement" obj="testNode" var="vcolor"/>
+<assertEquals actual="vcolor" expected='"#000000"' id="colorLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/body01.xml b/test/testcases/tests/level1/html/body01.xml
new file mode 100644
index 0000000..3ab179d
--- /dev/null
+++ b/test/testcases/tests/level1/html/body01.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="body01">
+<metadata>
+<title>body01</title>
+<creator>Netscape</creator>
+<description>
+Color of active links (after mouse-button down, but before mouse-button up).
+The value of attribute alink of the body element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59424581"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valink" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="body" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"body"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<aLink interface="HTMLBodyElement" obj="testNode" var="valink"/>
+<assertEquals actual="valink" expected='"#0000ff"' id="aLinkLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button01.xml b/test/testcases/tests/level1/html/button01.xml
new file mode 100644
index 0000000..f128ea8
--- /dev/null
+++ b/test/testcases/tests/level1/html/button01.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="button01">
+<metadata>
+<title>button01</title>
+<creator>Netscape</creator>
+<description>
+Returns the FORM element containing this control. Returns null if this control is not within the context of a form.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="Node"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<form interface="HTMLButtonElement" obj="testNode" var="vform"/>
+<assertNull actual="vform" id="formLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button02.xml b/test/testcases/tests/level1/html/button02.xml
new file mode 100644
index 0000000..bd072ef
--- /dev/null
+++ b/test/testcases/tests/level1/html/button02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="button02">
+<metadata>
+<title>button02</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute name of the form element which contains this button is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="vfname" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLButtonElement" obj="testNode" var="formNode"/>
+<id interface="HTMLElement" obj="formNode" var="vfname"/>
+<assertEquals actual="vfname" expected='"form2"' id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button03.xml b/test/testcases/tests/level1/html/button03.xml
new file mode 100644
index 0000000..4074059
--- /dev/null
+++ b/test/testcases/tests/level1/html/button03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="button03">
+<metadata>
+<title>button03</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute action of the form element which contains this button is read and checked against the expected value
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74049184"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="vfaction" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLButtonElement" obj="testNode" var="formNode"/>
+<action interface="HTMLFormElement" obj="formNode" var="vfaction"/>
+<assertEquals actual="vfaction" expected='"..."' id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button04.xml b/test/testcases/tests/level1/html/button04.xml
new file mode 100644
index 0000000..737ddaa
--- /dev/null
+++ b/test/testcases/tests/level1/html/button04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="button04">
+<metadata>
+<title>button04</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute method of the form element which contains this button is read and checked against the expected value
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82545539"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="vfmethod" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLButtonElement" obj="testNode" var="formNode"/>
+<method interface="HTMLFormElement" obj="formNode" var="vfmethod"/>
+<assertEquals actual="vfmethod" expected='"POST"' id="formLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button05.xml b/test/testcases/tests/level1/html/button05.xml
new file mode 100644
index 0000000..ecff6b5
--- /dev/null
+++ b/test/testcases/tests/level1/html/button05.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="button05">
+<metadata>
+<title>button05</title>
+<creator>Netscape</creator>
+<description>
+A single character access key to give access to the form control.
+The value of attribute accessKey of the button element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73169431"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vakey" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<accessKey interface="HTMLButtonElement" obj="testNode" var="vakey"/>
+<assertEquals actual="vakey" expected='"f"' id="accessKeyLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button06.xml b/test/testcases/tests/level1/html/button06.xml
new file mode 100644
index 0000000..7a5e558
--- /dev/null
+++ b/test/testcases/tests/level1/html/button06.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="button06">
+<metadata>
+<title>button06</title>
+<creator>Netscape</creator>
+<description>
+Index that represents the element's position in the tabbing order.
+The value of attribute tabIndex of the button element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39190908"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtabIndex" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tabIndex interface="HTMLButtonElement" obj="testNode" var="vtabIndex"/>
+<assertEquals actual="vtabIndex" expected="20" id="tabIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button07.xml b/test/testcases/tests/level1/html/button07.xml
new file mode 100644
index 0000000..daddf76
--- /dev/null
+++ b/test/testcases/tests/level1/html/button07.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="button07">
+<metadata>
+<title>button07</title>
+<creator>Netscape</creator>
+<description>
+The type of button
+The value of attribute type of the button element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27430092"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLButtonElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"reset"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button08.xml b/test/testcases/tests/level1/html/button08.xml
new file mode 100644
index 0000000..a4dbb0b
--- /dev/null
+++ b/test/testcases/tests/level1/html/button08.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="button08">
+<metadata>
+<title>button08</title>
+<creator>Netscape</creator>
+<description>
+The control is unavailable in this context.
+The boolean value of attribute disabled of the button element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92757155"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdisabled" type="boolean" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<disabled interface="HTMLButtonElement" obj="testNode" var="vdisabled"/>
+<assertTrue actual="vdisabled" id="disabledLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button09.xml b/test/testcases/tests/level1/html/button09.xml
new file mode 100644
index 0000000..d0efa94
--- /dev/null
+++ b/test/testcases/tests/level1/html/button09.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="button09">
+<metadata>
+<title>button09</title>
+<creator>Netscape</creator>
+<description>
+The current form control value.
+The value of attribute value of the button element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72856782"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalue" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<value interface="HTMLButtonElement" obj="testNode" var="vvalue"/>
+<assertEquals actual="vvalue" expected='"Reset Disabled Button"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/dlist01.xml b/test/testcases/tests/level1/html/dlist01.xml
new file mode 100644
index 0000000..35cbe2c
--- /dev/null
+++ b/test/testcases/tests/level1/html/dlist01.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="dlist01">
+<metadata>
+<title>dlist01</title>
+<creator>Netscape</creator>
+<description>
+
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21738539"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcompact" type="boolean" />
+<var name="doc" type="Node"/>
+<load var="doc" href="dl" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"dl"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<compact interface="HTMLDListElement" obj="testNode" var="vcompact"/>
+<assertTrue actual="vcompact" id="compactLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/doc01.xml b/test/testcases/tests/level1/html/doc01.xml
new file mode 100644
index 0000000..cb0c897
--- /dev/null
+++ b/test/testcases/tests/level1/html/doc01.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="doc01">
+<metadata>
+<title>doc01</title>
+<creator>Netscape</creator>
+<description>
+Retrieve the title attribute of HTMLDocument and examine it's value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18446827"/>
+</metadata>
+<var name="vtitle" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="anchor" willBeModified="false"/>
+<title interface="HTMLDocument" obj="doc" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"NIST DOM HTML Test - Anchor"' id="titleLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/files/.cvsignore b/test/testcases/tests/level1/html/files/.cvsignore
new file mode 100644
index 0000000..30d6772
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/.cvsignore
@@ -0,0 +1,6 @@
+xhtml1-frameset.dtd
+xhtml1-strict.dtd
+xhtml1-transitional.dtd
+xhtml-lat1.ent
+xhtml-special.ent
+xhtml-symbol.ent
diff --git a/test/testcases/tests/level1/html/files/CVS/Entries b/test/testcases/tests/level1/html/files/CVS/Entries
new file mode 100644
index 0000000..ceb0a2b
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/CVS/Entries
@@ -0,0 +1,196 @@
+/.cvsignore/1.1/Fri Apr 3 02:48:01 2009//
+/anchor.html/1.3/Fri Apr 3 02:48:01 2009//
+/anchor.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/anchor.xml/1.3/Fri Apr 3 02:48:01 2009//
+/anchor2.html/1.2/Fri Apr 3 02:48:01 2009//
+/anchor2.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/anchor2.xml/1.3/Fri Apr 3 02:48:01 2009//
+/applet.html/1.5/Fri Apr 3 02:48:01 2009//
+/applet.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/applet.xml/1.6/Fri Apr 3 02:48:01 2009//
+/applet2.html/1.3/Fri Apr 3 02:48:01 2009//
+/applet2.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/applet2.xml/1.3/Fri Apr 3 02:48:01 2009//
+/area.html/1.3/Fri Apr 3 02:48:01 2009//
+/area.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/area.xml/1.4/Fri Apr 3 02:48:01 2009//
+/area2.html/1.3/Fri Apr 3 02:48:01 2009//
+/area2.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/area2.xml/1.4/Fri Apr 3 02:48:01 2009//
+/base.html/1.4/Fri Apr 3 02:48:01 2009//
+/base.xhtml/1.3/Fri Apr 3 02:48:01 2009/-kb/
+/base.xml/1.4/Fri Apr 3 02:48:01 2009//
+/base2.html/1.4/Fri Apr 3 02:48:01 2009//
+/base2.xhtml/1.4/Fri Apr 3 02:48:01 2009/-kb/
+/base2.xml/1.4/Fri Apr 3 02:48:01 2009//
+/basefont.html/1.3/Fri Apr 3 02:48:01 2009//
+/basefont.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/basefont.xml/1.3/Fri Apr 3 02:48:01 2009//
+/body.html/1.3/Fri Apr 3 02:48:01 2009//
+/body.xhtml/1.3/Fri Apr 3 02:48:01 2009/-kb/
+/body.xml/1.3/Fri Apr 3 02:48:01 2009//
+/br.html/1.3/Fri Apr 3 02:48:01 2009//
+/br.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/br.xml/1.3/Fri Apr 3 02:48:01 2009//
+/button.html/1.4/Fri Apr 3 02:48:01 2009//
+/button.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/button.xml/1.3/Fri Apr 3 02:48:01 2009//
+/collection.html/1.3/Fri Apr 3 02:48:01 2009//
+/collection.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/collection.xml/1.3/Fri Apr 3 02:48:01 2009//
+/directory.html/1.3/Fri Apr 3 02:48:01 2009//
+/directory.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/directory.xml/1.3/Fri Apr 3 02:48:01 2009//
+/div.html/1.3/Fri Apr 3 02:48:01 2009//
+/div.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/div.xml/1.3/Fri Apr 3 02:48:01 2009//
+/dl.html/1.3/Fri Apr 3 02:48:01 2009//
+/dl.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/dl.xml/1.3/Fri Apr 3 02:48:01 2009//
+/document.html/1.5/Fri Apr 3 02:48:01 2009//
+/document.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/document.xml/1.6/Fri Apr 3 02:48:01 2009//
+/element.html/1.3/Fri Apr 3 02:48:01 2009//
+/element.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/element.xml/1.3/Fri Apr 3 02:48:01 2009//
+/fieldset.html/1.4/Fri Apr 3 02:48:01 2009//
+/fieldset.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/fieldset.xml/1.3/Fri Apr 3 02:48:01 2009//
+/font.html/1.3/Fri Apr 3 02:48:01 2009//
+/font.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/font.xml/1.3/Fri Apr 3 02:48:01 2009//
+/form.html/1.3/Fri Apr 3 02:48:01 2009//
+/form.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/form.xml/1.3/Fri Apr 3 02:48:01 2009//
+/form2.html/1.2/Fri Apr 3 02:48:01 2009//
+/form2.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/form2.xml/1.3/Fri Apr 3 02:48:01 2009//
+/form3.html/1.1/Fri Apr 3 02:48:01 2009//
+/form3.xhtml/1.1/Fri Apr 3 02:48:01 2009/-kb/
+/form3.xml/1.1/Fri Apr 3 02:48:01 2009//
+/frame.html/1.3/Fri Apr 3 02:48:01 2009//
+/frame.xhtml/1.3/Fri Apr 3 02:48:01 2009/-kb/
+/frame.xml/1.5/Fri Apr 3 02:48:01 2009//
+/frameset.html/1.2/Fri Apr 3 02:48:01 2009//
+/frameset.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/frameset.xml/1.3/Fri Apr 3 02:48:01 2009//
+/head.html/1.4/Fri Apr 3 02:48:01 2009//
+/head.xhtml/1.3/Fri Apr 3 02:48:01 2009/-kb/
+/head.xml/1.3/Fri Apr 3 02:48:01 2009//
+/heading.html/1.3/Fri Apr 3 02:48:01 2009//
+/heading.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/heading.xml/1.3/Fri Apr 3 02:48:01 2009//
+/hr.html/1.3/Fri Apr 3 02:48:01 2009//
+/hr.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/hr.xml/1.3/Fri Apr 3 02:48:01 2009//
+/html.html/1.4/Fri Apr 3 02:48:01 2009//
+/html.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/html.xml/1.3/Fri Apr 3 02:48:01 2009//
+/iframe.html/1.4/Fri Apr 3 02:48:01 2009//
+/iframe.xhtml/1.3/Fri Apr 3 02:48:01 2009/-kb/
+/iframe.xml/1.4/Fri Apr 3 02:48:01 2009//
+/img.html/1.3/Fri Apr 3 02:48:01 2009//
+/img.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/img.xml/1.3/Fri Apr 3 02:48:01 2009//
+/input.html/1.5/Fri Apr 3 02:48:01 2009//
+/input.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/input.xml/1.5/Fri Apr 3 02:48:01 2009//
+/isindex.html/1.4/Fri Apr 3 02:48:01 2009//
+/isindex.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/isindex.xml/1.4/Fri Apr 3 02:48:01 2009//
+/label.html/1.3/Fri Apr 3 02:48:01 2009//
+/label.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/label.xml/1.4/Fri Apr 3 02:48:01 2009//
+/legend.html/1.4/Fri Apr 3 02:48:01 2009//
+/legend.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/legend.xml/1.4/Fri Apr 3 02:48:01 2009//
+/li.html/1.3/Fri Apr 3 02:48:01 2009//
+/li.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/li.xml/1.3/Fri Apr 3 02:48:01 2009//
+/link.html/1.4/Fri Apr 3 02:48:01 2009//
+/link.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/link.xml/1.3/Fri Apr 3 02:48:01 2009//
+/link2.html/1.2/Fri Apr 3 02:48:01 2009//
+/link2.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/link2.xml/1.3/Fri Apr 3 02:48:01 2009//
+/map.html/1.3/Fri Apr 3 02:48:01 2009//
+/map.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/map.xml/1.3/Fri Apr 3 02:48:01 2009//
+/menu.html/1.3/Fri Apr 3 02:48:01 2009//
+/menu.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/menu.xml/1.3/Fri Apr 3 02:48:01 2009//
+/meta.html/1.2/Fri Apr 3 02:48:01 2009//
+/meta.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/meta.xml/1.3/Fri Apr 3 02:48:01 2009//
+/mod.html/1.2/Fri Apr 3 02:48:01 2009//
+/mod.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/mod.xml/1.3/Fri Apr 3 02:48:01 2009//
+/object.html/1.5/Fri Apr 3 02:48:01 2009//
+/object.xhtml/1.3/Fri Apr 3 02:48:01 2009/-kb/
+/object.xml/1.3/Fri Apr 3 02:48:01 2009//
+/object2.html/1.3/Fri Apr 3 02:48:01 2009//
+/object2.xhtml/1.3/Fri Apr 3 02:48:01 2009/-kb/
+/object2.xml/1.2/Fri Apr 3 02:48:01 2009//
+/olist.html/1.3/Fri Apr 3 02:48:01 2009//
+/olist.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/olist.xml/1.3/Fri Apr 3 02:48:01 2009//
+/optgroup.html/1.2/Fri Apr 3 02:48:01 2009//
+/optgroup.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/optgroup.xml/1.3/Fri Apr 3 02:48:01 2009//
+/option.html/1.3/Fri Apr 3 02:48:01 2009//
+/option.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/option.xml/1.4/Fri Apr 3 02:48:01 2009//
+/paragraph.html/1.3/Fri Apr 3 02:48:01 2009//
+/paragraph.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/paragraph.xml/1.3/Fri Apr 3 02:48:01 2009//
+/param.html/1.2/Fri Apr 3 02:48:01 2009//
+/param.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/param.xml/1.4/Fri Apr 3 02:48:01 2009//
+/pre.html/1.3/Fri Apr 3 02:48:01 2009//
+/pre.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/pre.xml/1.3/Fri Apr 3 02:48:01 2009//
+/quote.html/1.2/Fri Apr 3 02:48:01 2009//
+/quote.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/quote.xml/1.3/Fri Apr 3 02:48:01 2009//
+/right.png/1.1/Fri Apr 3 02:48:01 2009/-kb/
+/script.html/1.3/Fri Apr 3 02:48:01 2009//
+/script.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/script.xml/1.3/Fri Apr 3 02:48:01 2009//
+/select.html/1.4/Fri Apr 3 02:48:01 2009//
+/select.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/select.xml/1.4/Fri Apr 3 02:48:01 2009//
+/style.html/1.3/Fri Apr 3 02:48:01 2009//
+/style.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/style.xml/1.3/Fri Apr 3 02:48:01 2009//
+/table.html/1.3/Fri Apr 3 02:48:01 2009//
+/table.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/table.xml/1.3/Fri Apr 3 02:48:01 2009//
+/table1.html/1.4/Fri Apr 3 02:48:01 2009//
+/table1.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/table1.xml/1.3/Fri Apr 3 02:48:01 2009//
+/tablecaption.html/1.3/Fri Apr 3 02:48:01 2009//
+/tablecaption.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/tablecaption.xml/1.3/Fri Apr 3 02:48:01 2009//
+/tablecell.html/1.3/Fri Apr 3 02:48:01 2009//
+/tablecell.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/tablecell.xml/1.4/Fri Apr 3 02:48:01 2009//
+/tablecol.html/1.3/Fri Apr 3 02:48:01 2009//
+/tablecol.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/tablecol.xml/1.3/Fri Apr 3 02:48:01 2009//
+/tablerow.html/1.3/Fri Apr 3 02:48:01 2009//
+/tablerow.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/tablerow.xml/1.3/Fri Apr 3 02:48:01 2009//
+/tablesection.html/1.4/Fri Apr 3 02:48:01 2009//
+/tablesection.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/tablesection.xml/1.4/Fri Apr 3 02:48:01 2009//
+/textarea.html/1.4/Fri Apr 3 02:48:01 2009//
+/textarea.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/textarea.xml/1.4/Fri Apr 3 02:48:01 2009//
+/title.html/1.3/Fri Apr 3 02:48:01 2009//
+/title.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/title.xml/1.3/Fri Apr 3 02:48:01 2009//
+/ulist.html/1.3/Fri Apr 3 02:48:01 2009//
+/ulist.xhtml/1.2/Fri Apr 3 02:48:01 2009/-kb/
+/ulist.xml/1.3/Fri Apr 3 02:48:01 2009//
+/w3c_main.png/1.1/Fri Apr 3 02:48:01 2009/-kb/
+D
diff --git a/test/testcases/tests/level1/html/files/CVS/Repository b/test/testcases/tests/level1/html/files/CVS/Repository
new file mode 100644
index 0000000..82d4385
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level1/html/files
diff --git a/test/testcases/tests/level1/html/files/CVS/Root b/test/testcases/tests/level1/html/files/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level1/html/files/CVS/Template b/test/testcases/tests/level1/html/files/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/CVS/Template
diff --git a/test/testcases/tests/level1/html/files/anchor.html b/test/testcases/tests/level1/html/files/anchor.html
new file mode 100644
index 0000000..952e8d9
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/anchor.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/anchor.xhtml b/test/testcases/tests/level1/html/files/anchor.xhtml
new file mode 100644
index 0000000..1be5755
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/anchor.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Anchor</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<a id="Anchor" dir="ltr" href="./pix/submit.gif" accesskey="g" type="image/gif" coords="0,0,100,100" shape="rect" rel="GLOSSARY" rev="STYLESHEET" hreflang="en" charset="US-ASCII" tabindex="22" name="Anchor">View Submit Button</a>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/anchor.xml b/test/testcases/tests/level1/html/files/anchor.xml
new file mode 100644
index 0000000..1be5755
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/anchor.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Anchor</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<a id="Anchor" dir="ltr" href="./pix/submit.gif" accesskey="g" type="image/gif" coords="0,0,100,100" shape="rect" rel="GLOSSARY" rev="STYLESHEET" hreflang="en" charset="US-ASCII" tabindex="22" name="Anchor">View Submit Button</a>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/anchor2.html b/test/testcases/tests/level1/html/files/anchor2.html
new file mode 100644
index 0000000..1b04fb9
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/anchor2.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<A HREF="./pix/submit.gif" TARGET="dynamic">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/anchor2.xhtml b/test/testcases/tests/level1/html/files/anchor2.xhtml
new file mode 100644
index 0000000..096eb60
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/anchor2.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Anchor</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<a href="./pix/submit.gif" target="dynamic">View Submit Button</a>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/anchor2.xml b/test/testcases/tests/level1/html/files/anchor2.xml
new file mode 100644
index 0000000..096eb60
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/anchor2.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Anchor</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<a href="./pix/submit.gif" target="dynamic">View Submit Button</a>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/applet.html b/test/testcases/tests/level1/html/files/applet.html
new file mode 100644
index 0000000..d721cf1
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/applet.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" CODE="org/w3c/domts/DOMTSApplet.class" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/applet.xhtml b/test/testcases/tests/level1/html/files/applet.xhtml
new file mode 100644
index 0000000..cf2070c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/applet.xhtml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Applet</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<applet align="bottom" alt="Applet Number 1" archive="" code="org/w3c/domts/DOMTSApplet.class" codebase="applets" height="306" hspace="0" name="applet1" vspace="0" width="301"></applet>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/applet.xml b/test/testcases/tests/level1/html/files/applet.xml
new file mode 100644
index 0000000..cf2070c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/applet.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Applet</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<applet align="bottom" alt="Applet Number 1" archive="" code="org/w3c/domts/DOMTSApplet.class" codebase="applets" height="306" hspace="0" name="applet1" vspace="0" width="301"></applet>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/applet2.html b/test/testcases/tests/level1/html/files/applet2.html
new file mode 100644
index 0000000..0379ed1
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/applet2.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" OBJECT="DOMTSApplet.dat" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/applet2.xhtml b/test/testcases/tests/level1/html/files/applet2.xhtml
new file mode 100644
index 0000000..43b27da
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/applet2.xhtml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Applet</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<applet align="bottom" alt="Applet Number 1" archive="" object="DOMTSApplet.dat" codebase="applets" height="306" hspace="0" name="applet1" vspace="0" width="301"></applet>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/applet2.xml b/test/testcases/tests/level1/html/files/applet2.xml
new file mode 100644
index 0000000..43b27da
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/applet2.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Applet</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<applet align="bottom" alt="Applet Number 1" archive="" object="DOMTSApplet.dat" codebase="applets" height="306" hspace="0" name="applet1" vspace="0" width="301"></applet>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/area.html b/test/testcases/tests/level1/html/files/area.html
new file mode 100644
index 0000000..dddff68
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/area.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/area.xhtml b/test/testcases/tests/level1/html/files/area.xhtml
new file mode 100644
index 0000000..1e497f3
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/area.xhtml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Area</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<map name="mapid" id="mapid">
+<area tabindex="10" accesskey="a" shape="rect" alt="Domain" coords="0,2,45,45" href="./files/dletter.html" title="Domain"/>
+</map>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/area.xml b/test/testcases/tests/level1/html/files/area.xml
new file mode 100644
index 0000000..1e497f3
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/area.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Area</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<map name="mapid" id="mapid">
+<area tabindex="10" accesskey="a" shape="rect" alt="Domain" coords="0,2,45,45" href="./files/dletter.html" title="Domain"/>
+</map>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/area2.html b/test/testcases/tests/level1/html/files/area2.html
new file mode 100644
index 0000000..f1ae081
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/area2.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA HREF="./files/dletter.html" ALT="Domain" TARGET="dynamic">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/area2.xhtml b/test/testcases/tests/level1/html/files/area2.xhtml
new file mode 100644
index 0000000..5476bee
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/area2.xhtml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Area</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<map name="mapid" id="mapid">
+<area href="./files/dletter.html" alt="Domain" target="dynamic"/>
+</map>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/area2.xml b/test/testcases/tests/level1/html/files/area2.xml
new file mode 100644
index 0000000..5476bee
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/area2.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Area</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<map name="mapid" id="mapid">
+<area href="./files/dletter.html" alt="Domain" target="dynamic"/>
+</map>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/base.html b/test/testcases/tests/level1/html/files/base.html
new file mode 100644
index 0000000..53d151d
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/base.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<BASE HREF="about:blank">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Base</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>Some Text</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/base.xhtml b/test/testcases/tests/level1/html/files/base.xhtml
new file mode 100644
index 0000000..bc41a1d
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/base.xhtml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<base href="about:blank"/>
+<title>NIST DOM HTML Test - Base</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>Some Text</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/base.xml b/test/testcases/tests/level1/html/files/base.xml
new file mode 100644
index 0000000..bc41a1d
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/base.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<base href="about:blank"/>
+<title>NIST DOM HTML Test - Base</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>Some Text</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/base2.html b/test/testcases/tests/level1/html/files/base2.html
new file mode 100644
index 0000000..c9e0d1a
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/base2.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<BASE HREF="about:blank" TARGET="Frame1">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Base2</TITLE>
+</HEAD>
+<FRAMESET COLS="20, 80" onload="parent.loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes">
+</FRAMESET>
+<FRAME>
+</FRAMESET>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/base2.xhtml b/test/testcases/tests/level1/html/files/base2.xhtml
new file mode 100644
index 0000000..a29dcd9
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/base2.xhtml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
+ "xhtml1-frameset.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<base href="about:blank" target="Frame1"/>
+<title>NIST DOM HTML Test - Base2</title>
+</head>
+<frameset cols="20, 80" onload="parent.loadComplete()">
+<frameset rows="100, 200">
+<frame marginheight="10" marginwidth="5" noresize="noresize" name="Frame1" frameborder="1" scrolling="yes" />
+</frameset>
+<frame />
+</frameset>
+</html>
diff --git a/test/testcases/tests/level1/html/files/base2.xml b/test/testcases/tests/level1/html/files/base2.xml
new file mode 100644
index 0000000..a29dcd9
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/base2.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
+ "xhtml1-frameset.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<base href="about:blank" target="Frame1"/>
+<title>NIST DOM HTML Test - Base2</title>
+</head>
+<frameset cols="20, 80" onload="parent.loadComplete()">
+<frameset rows="100, 200">
+<frame marginheight="10" marginwidth="5" noresize="noresize" name="Frame1" frameborder="1" scrolling="yes" />
+</frameset>
+<frame />
+</frameset>
+</html>
diff --git a/test/testcases/tests/level1/html/files/basefont.html b/test/testcases/tests/level1/html/files/basefont.html
new file mode 100644
index 0000000..e3753f7
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/basefont.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - BaseFont</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<BASEFONT COLOR="#000000" FACE="arial,helvitica" SIZE="4">
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/basefont.xhtml b/test/testcases/tests/level1/html/files/basefont.xhtml
new file mode 100644
index 0000000..c5fc9b5
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/basefont.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - BaseFont</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<basefont color="#000000" face="arial,helvitica" size="4"/>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/basefont.xml b/test/testcases/tests/level1/html/files/basefont.xml
new file mode 100644
index 0000000..c5fc9b5
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/basefont.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - BaseFont</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<basefont color="#000000" face="arial,helvitica" size="4"/>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/body.html b/test/testcases/tests/level1/html/files/body.html
new file mode 100644
index 0000000..6468cd0
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/body.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Body</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()" ALINK="#0000ff" BACKGROUND="./pix/back1.gif" BGCOLOR="#ffff00" LINK="#ff0000" TEXT="#000000" VLINK="#00ffff">
+<P>Hello, World</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/body.xhtml b/test/testcases/tests/level1/html/files/body.xhtml
new file mode 100644
index 0000000..f2ac2a0
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/body.xhtml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Body</title>
+</head>
+<body onload="parent.loadComplete()" alink="#0000ff" background="./pix/back1.gif" bgcolor="#ffff00" link="#ff0000" text="#000000" vlink="#00ffff">
+<p>Hello, World.</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/body.xml b/test/testcases/tests/level1/html/files/body.xml
new file mode 100644
index 0000000..fa6d1b7
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/body.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<base href="http://xw2k.sdct.itl.nist.gov/brady/dom/"/>
+<title>NIST DOM HTML Test - Body</title>
+</head>
+<body onload="parent.loadComplete()" alink="#0000ff" background="./pix/back1.gif" bgcolor="#ffff00" link="#ff0000" text="#000000" vlink="#00ffff">
+<p>Hello, World.</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/br.html b/test/testcases/tests/level1/html/files/br.html
new file mode 100644
index 0000000..0a3a3d4
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/br.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - BR</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<BR CLEAR="none">
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/br.xhtml b/test/testcases/tests/level1/html/files/br.xhtml
new file mode 100644
index 0000000..99c9c1e
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/br.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - BR</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<br clear="none"/>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/br.xml b/test/testcases/tests/level1/html/files/br.xml
new file mode 100644
index 0000000..99c9c1e
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/br.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - BR</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<br clear="none"/>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/button.html b/test/testcases/tests/level1/html/files/button.html
new file mode 100644
index 0000000..c891ba4
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/button.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/button.xhtml b/test/testcases/tests/level1/html/files/button.xhtml
new file mode 100644
index 0000000..3136988
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/button.xhtml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Button</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form2" action="..." method="post">
+<p>
+ <button accesskey="f" name="disabledButton" tabindex="20" type="reset" value="Reset Disabled Button" disabled="disabled">Reset</button>
+</p>
+</form>
+<table summary="Extra Button Table">
+<tr>
+<td>
+<button>Extra Button</button>
+</td>
+</tr>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/button.xml b/test/testcases/tests/level1/html/files/button.xml
new file mode 100644
index 0000000..3136988
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/button.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Button</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form2" action="..." method="post">
+<p>
+ <button accesskey="f" name="disabledButton" tabindex="20" type="reset" value="Reset Disabled Button" disabled="disabled">Reset</button>
+</p>
+</form>
+<table summary="Extra Button Table">
+<tr>
+<td>
+<button>Extra Button</button>
+</td>
+</tr>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/collection.html b/test/testcases/tests/level1/html/files/collection.html
new file mode 100644
index 0000000..885202d
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/collection.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/collection.xhtml b/test/testcases/tests/level1/html/files/collection.xhtml
new file mode 100644
index 0000000..9da52c1
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/collection.xhtml
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - BR</title>
+</head>
+<body onload="parent.loadComplete()">
+<table id="table-1" border="4" frame="border" cellpadding="2" cellspacing="2" summary="HTML Control Table" rules="all">
+<caption>Table Caption</caption>
+<thead align="center" valign="middle">
+<tr align="center" valign="middle" char="*" charoff="1">
+<th id="header-1">Employee Id</th>
+<th id="header-2" abbr="maiden" axis="center" align="center" colspan="1" rowspan="1" scope="col" headers="header-1" valign="middle">Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+<th>Gender</th>
+<th>Address</th>
+</tr>
+</thead>
+<tfoot align="center" valign="middle">
+<tr>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+</tr>
+</tfoot>
+<tbody align="center" valign="middle">
+<tr>
+<td axis="center" id="Table-3" abbr="maiden2" colspan="1" rowspan="1" scope="col" headers="header-2" valign="middle">EMP0001</td>
+<td headers="header-2">Margaret Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+<td>Female</td>
+<td>1230 North Ave. Dallas, Texas 98551</td>
+</tr>
+<tr>
+<td>EMP0002</td>
+<td>Martha Raynolds</td>
+<td>Secretary</td>
+<td>35,000</td>
+<td>Female</td>
+<td>1900 Dallas Road Dallas, Texas 98554</td>
+</tr>
+</tbody>
+</table>
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<select id="selectId" dir="ltr" tabindex="7" name="select1" multiple="multiple" size="1">
+<option selected="selected" value="EMP1">EMP10001</option>
+<option>EMP10002</option>
+<option>EMP10003</option>
+<option>EMP10004</option>
+<option>EMP10005</option>
+</select>
+</p>
+</form>
+<p>
+<select name="select2">
+<option>EMP20001</option>
+<option>EMP20002</option>
+<option>EMP20003</option>
+<option>EMP20004</option>
+<option>EMP20005</option>
+</select>
+</p>
+<p>
+<select name="select3" disabled="disabled" tabindex="1">
+<option>EMP30001</option>
+<option>EMP30002</option>
+<option>EMP30003</option>
+<option>EMP30004</option>
+<option>EMP30005</option>
+</select>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/collection.xml b/test/testcases/tests/level1/html/files/collection.xml
new file mode 100644
index 0000000..9da52c1
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/collection.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - BR</title>
+</head>
+<body onload="parent.loadComplete()">
+<table id="table-1" border="4" frame="border" cellpadding="2" cellspacing="2" summary="HTML Control Table" rules="all">
+<caption>Table Caption</caption>
+<thead align="center" valign="middle">
+<tr align="center" valign="middle" char="*" charoff="1">
+<th id="header-1">Employee Id</th>
+<th id="header-2" abbr="maiden" axis="center" align="center" colspan="1" rowspan="1" scope="col" headers="header-1" valign="middle">Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+<th>Gender</th>
+<th>Address</th>
+</tr>
+</thead>
+<tfoot align="center" valign="middle">
+<tr>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+</tr>
+</tfoot>
+<tbody align="center" valign="middle">
+<tr>
+<td axis="center" id="Table-3" abbr="maiden2" colspan="1" rowspan="1" scope="col" headers="header-2" valign="middle">EMP0001</td>
+<td headers="header-2">Margaret Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+<td>Female</td>
+<td>1230 North Ave. Dallas, Texas 98551</td>
+</tr>
+<tr>
+<td>EMP0002</td>
+<td>Martha Raynolds</td>
+<td>Secretary</td>
+<td>35,000</td>
+<td>Female</td>
+<td>1900 Dallas Road Dallas, Texas 98554</td>
+</tr>
+</tbody>
+</table>
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<select id="selectId" dir="ltr" tabindex="7" name="select1" multiple="multiple" size="1">
+<option selected="selected" value="EMP1">EMP10001</option>
+<option>EMP10002</option>
+<option>EMP10003</option>
+<option>EMP10004</option>
+<option>EMP10005</option>
+</select>
+</p>
+</form>
+<p>
+<select name="select2">
+<option>EMP20001</option>
+<option>EMP20002</option>
+<option>EMP20003</option>
+<option>EMP20004</option>
+<option>EMP20005</option>
+</select>
+</p>
+<p>
+<select name="select3" disabled="disabled" tabindex="1">
+<option>EMP30001</option>
+<option>EMP30002</option>
+<option>EMP30003</option>
+<option>EMP30004</option>
+<option>EMP30005</option>
+</select>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/directory.html b/test/testcases/tests/level1/html/files/directory.html
new file mode 100644
index 0000000..0e2f460
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/directory.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Directory</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<DIR COMPACT="compact">
+<LI>DIR item number 1.</LI>
+<LI>DIR item number 2.</LI>
+<LI>DIR item number 3.</LI>
+</DIR>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/directory.xhtml b/test/testcases/tests/level1/html/files/directory.xhtml
new file mode 100644
index 0000000..bf70ef8
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/directory.xhtml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Directory</title>
+</head>
+<body onload="parent.loadComplete()">
+<dir compact="compact">
+<li>DIR item number 1.</li>
+<li>DIR item number 2.</li>
+<li>DIR item number 3.</li>
+</dir>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/directory.xml b/test/testcases/tests/level1/html/files/directory.xml
new file mode 100644
index 0000000..bf70ef8
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/directory.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Directory</title>
+</head>
+<body onload="parent.loadComplete()">
+<dir compact="compact">
+<li>DIR item number 1.</li>
+<li>DIR item number 2.</li>
+<li>DIR item number 3.</li>
+</dir>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/div.html b/test/testcases/tests/level1/html/files/div.html
new file mode 100644
index 0000000..6b83646
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/div.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DIV</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<DIV ALIGN="center">The DIV element is a generic block container. This text should be centered.</DIV>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/div.xhtml b/test/testcases/tests/level1/html/files/div.xhtml
new file mode 100644
index 0000000..7a1059a
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/div.xhtml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - DIV</title>
+</head>
+<body onload="parent.loadComplete()">
+<div align="center">The DIV element is a generic block container. This text should be centered.</div>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/div.xml b/test/testcases/tests/level1/html/files/div.xml
new file mode 100644
index 0000000..7a1059a
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/div.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - DIV</title>
+</head>
+<body onload="parent.loadComplete()">
+<div align="center">The DIV element is a generic block container. This text should be centered.</div>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/dl.html b/test/testcases/tests/level1/html/files/dl.html
new file mode 100644
index 0000000..5dec3af
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/dl.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DL</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<DL COMPACT="COMPACT">
+<DD>Accountant</DD>
+<DD>56,000</DD>
+<DD>Female</DD>
+<DD>1230 North Ave. Dallas, Texas 98551</DD>
+</DL>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/dl.xhtml b/test/testcases/tests/level1/html/files/dl.xhtml
new file mode 100644
index 0000000..72c6475
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/dl.xhtml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - DL</title>
+</head>
+<body onload="parent.loadComplete()">
+<dl compact="compact">
+<dd>Accountant</dd>
+<dd>56,000</dd>
+<dd>Female</dd>
+<dd>1230 North Ave. Dallas, Texas 98551</dd>
+</dl>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/dl.xml b/test/testcases/tests/level1/html/files/dl.xml
new file mode 100644
index 0000000..72c6475
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/dl.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - DL</title>
+</head>
+<body onload="parent.loadComplete()">
+<dl compact="compact">
+<dd>Accountant</dd>
+<dd>56,000</dd>
+<dd>Female</dd>
+<dd>1230 North Ave. Dallas, Texas 98551</dd>
+</dl>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/document.html b/test/testcases/tests/level1/html/files/document.html
new file mode 100644
index 0000000..9cd9c8a
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/document.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/document.xhtml b/test/testcases/tests/level1/html/files/document.xhtml
new file mode 100644
index 0000000..3cc6ccf
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/document.xhtml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - DOCUMENT</title>
+</head>
+<body onload="parent.loadComplete()" id="TEST-BODY">
+<form id="form1" accept-charset="US-ASCII" action="./files/getData.pl" enctype="application/x-www-form-urlencoded" method="post">
+<p>
+<textarea name="text1" cols="20" rows="7"></textarea>
+<input type="submit" name="submit1" value="Submit" />
+<input type="reset" name="submit2" value="Reset" />
+</p>
+</form>
+<p>
+<map name="mapid" id="mapid">
+<area tabindex="10" accesskey="a" shape="rect" alt="Domain" coords="0,2,45,45" href="./files/dletter.html" title="Domain1" />
+<area tabindex="10" accesskey="a" shape="rect" alt="Domain" coords="0,2,45,45" href="./files/dletter.html" title="Domain2" />
+</map>
+</p>
+<p>
+<img id="IMAGE-1" src="./pix/dts.gif" alt="DTS IMAGE LOGO" longdesc="./files/desc.html" usemap="#DTS-MAP" width="115"/>
+</p>
+<p>
+<object data="./pix/line.gif" codetype="image/gif" height="10">
+<applet alt="Applet Number 1" code="applet1.class" width="10" height="10"></applet>
+</object>
+<object data="./pix/logo.gif" type="image/gif">
+<applet alt="Applet Number 2" code="applet2.class" width="10" height="10"></applet>
+</object>
+</p>
+<p>
+<a id="Anchor" dir="ltr" href="./pix/submit.gif" accesskey="g" type="image/gif" coords="0,0,100,100" shape="rect" rel="GLOSSARY" rev="STYLESHEET" hreflang="en" charset="US-ASCII" tabindex="22" name="Anchor">View Submit Button</a>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/document.xml b/test/testcases/tests/level1/html/files/document.xml
new file mode 100644
index 0000000..3cc6ccf
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/document.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - DOCUMENT</title>
+</head>
+<body onload="parent.loadComplete()" id="TEST-BODY">
+<form id="form1" accept-charset="US-ASCII" action="./files/getData.pl" enctype="application/x-www-form-urlencoded" method="post">
+<p>
+<textarea name="text1" cols="20" rows="7"></textarea>
+<input type="submit" name="submit1" value="Submit" />
+<input type="reset" name="submit2" value="Reset" />
+</p>
+</form>
+<p>
+<map name="mapid" id="mapid">
+<area tabindex="10" accesskey="a" shape="rect" alt="Domain" coords="0,2,45,45" href="./files/dletter.html" title="Domain1" />
+<area tabindex="10" accesskey="a" shape="rect" alt="Domain" coords="0,2,45,45" href="./files/dletter.html" title="Domain2" />
+</map>
+</p>
+<p>
+<img id="IMAGE-1" src="./pix/dts.gif" alt="DTS IMAGE LOGO" longdesc="./files/desc.html" usemap="#DTS-MAP" width="115"/>
+</p>
+<p>
+<object data="./pix/line.gif" codetype="image/gif" height="10">
+<applet alt="Applet Number 1" code="applet1.class" width="10" height="10"></applet>
+</object>
+<object data="./pix/logo.gif" type="image/gif">
+<applet alt="Applet Number 2" code="applet2.class" width="10" height="10"></applet>
+</object>
+</p>
+<p>
+<a id="Anchor" dir="ltr" href="./pix/submit.gif" accesskey="g" type="image/gif" coords="0,0,100,100" shape="rect" rel="GLOSSARY" rev="STYLESHEET" hreflang="en" charset="US-ASCII" tabindex="22" name="Anchor">View Submit Button</a>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/element.html b/test/testcases/tests/level1/html/files/element.html
new file mode 100644
index 0000000..a0c198e
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/element.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/element.xhtml b/test/testcases/tests/level1/html/files/element.xhtml
new file mode 100644
index 0000000..ee99601
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/element.xhtml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html lang="en" dir="ltr" xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Element</title>
+</head>
+<body onload="parent.loadComplete()">
+<center id="Test-CENTER" title="CENTER Element" lang="en" dir="ltr" class="CENTER-class">
+<object align="middle"></object>
+</center>
+<center>
+<p align="center">Test Lists</p>
+</center>
+<br />
+<ol compact="compact" start="1" type="1">
+ <li type="square" value="2">EMP0001
+ <ul compact="compact" type="disc">
+ <li>Margaret Martin
+ <dl>
+ <dd id="Test-DD" title="DD Element" lang="en" dir="ltr" class="DD-class">Accountant</dd>
+ <dd>56,000</dd>
+ <dd>Female</dd>
+ <dd>1230 North Ave. Dallas, Texas 98551</dd>
+ </dl>
+ </li>
+ </ul>
+ </li>
+</ol>
+<br />
+<b id="Test-B" title="B Element" lang="en" dir="ltr" class="B-class">Bold</b>
+<br />
+<dl>
+ <dt id="Test-DT" title="DT Element" lang="en" dir="ltr" class="DT-class">DT element</dt>
+</dl>
+<br />
+<bdo id="Test-BDO" title="BDO Element" lang="en" dir="ltr" class="BDO-class">Bidirectional algorithm overide
+</bdo>
+<br />
+<i id="Test-I" title="I Element" lang="en" dir="ltr" class="I-class">Italicized</i>
+<br />
+<span id="Test-SPAN" title="SPAN Element" lang="en" dir="ltr" class="SPAN-class"></span>
+<br />
+<tt id="Test-TT" title="TT Element" lang="en" dir="ltr" class="TT-class">Teletype</tt>
+<br />
+<sub id="Test-SUB" title="SUB Element" lang="en" dir="ltr" class="SUB-class">Subscript</sub>
+<br />
+<sup id="Test-SUP" title="SUP Element" lang="en" dir="ltr" class="SUP-class">SuperScript</sup>
+<br />
+<s id="Test-S" title="S Element" lang="en" dir="ltr" class="S-class">Strike Through (S)</s>
+<br />
+<strike id="Test-STRIKE" title="STRIKE Element" lang="en" dir="ltr" class="STRIKE-class">Strike Through (STRIKE)</strike>
+<br />
+<small id="Test-SMALL" title="SMALL Element" lang="en" dir="ltr" class="SMALL-class">Small</small>
+<br />
+<big id="Test-BIG" title="BIG Element" lang="en" dir="ltr" class="BIG-class">Big</big>
+<br />
+<em id="Test-EM" title="EM Element" lang="en" dir="ltr" class="EM-class">Emphasis</em>
+<br />
+<strong id="Test-STRONG" title="STRONG Element" lang="en" dir="ltr" class="STRONG-class">Strong</strong>
+<br />
+<dfn id="Test-DFN" title="DFN Element" lang="en" dir="ltr" class="DFN-class">
+ <code id="Test-CODE" title="CODE Element" lang="en" dir="ltr" class="CODE-class">10 Computer Code Fragment 20 Temp = 10</code>
+ <samp id="Test-SAMP" title="SAMP Element" lang="en" dir="ltr" class="SAMP-class">Temp = 20</samp>
+ <kbd id="Test-KBD" title="KBD Element" lang="en" dir="ltr" class="KBD-class">*2</kbd>
+ <var id="Test-VAR" title="VAR Element" lang="en" dir="ltr" class="VAR-class">Temp</var>
+ <cite id="Test-CITE" title="CITE Element" lang="en" dir="ltr" class="CITE-class">Citation</cite>
+</dfn>
+<br />
+<abbr id="Test-ABBR" title="ABBR Element" lang="en" dir="ltr" class="ABBR-class">Temp</abbr>
+<br />
+<acronym id="Test-ACRONYM" title="ACRONYM Element" lang="en" dir="ltr" class="ACRONYM-class">NIST</acronym>
+<br />
+<address id="Test-ADDRESS" title="ADDRESS Element" lang="en" dir="ltr" class="ADDRESS-class">Gaithersburg, MD 20899</address>
+<br />
+<noframes id="Test-NOFRAMES" title="NOFRAMES Element" lang="en" dir="ltr" class="NOFRAMES-class">Not</noframes>
+<br />
+<noscript id="Test-NOSCRIPT" title="NOSCRIPT Element" lang="en" dir="ltr" class="NOSCRIPT-class">Not</noscript>
+<br />
+<u id="Test-U" title="U Element" lang="en" dir="ltr" class="U-class">Underlined</u>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/element.xml b/test/testcases/tests/level1/html/files/element.xml
new file mode 100644
index 0000000..ee99601
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/element.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html lang="en" dir="ltr" xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Element</title>
+</head>
+<body onload="parent.loadComplete()">
+<center id="Test-CENTER" title="CENTER Element" lang="en" dir="ltr" class="CENTER-class">
+<object align="middle"></object>
+</center>
+<center>
+<p align="center">Test Lists</p>
+</center>
+<br />
+<ol compact="compact" start="1" type="1">
+ <li type="square" value="2">EMP0001
+ <ul compact="compact" type="disc">
+ <li>Margaret Martin
+ <dl>
+ <dd id="Test-DD" title="DD Element" lang="en" dir="ltr" class="DD-class">Accountant</dd>
+ <dd>56,000</dd>
+ <dd>Female</dd>
+ <dd>1230 North Ave. Dallas, Texas 98551</dd>
+ </dl>
+ </li>
+ </ul>
+ </li>
+</ol>
+<br />
+<b id="Test-B" title="B Element" lang="en" dir="ltr" class="B-class">Bold</b>
+<br />
+<dl>
+ <dt id="Test-DT" title="DT Element" lang="en" dir="ltr" class="DT-class">DT element</dt>
+</dl>
+<br />
+<bdo id="Test-BDO" title="BDO Element" lang="en" dir="ltr" class="BDO-class">Bidirectional algorithm overide
+</bdo>
+<br />
+<i id="Test-I" title="I Element" lang="en" dir="ltr" class="I-class">Italicized</i>
+<br />
+<span id="Test-SPAN" title="SPAN Element" lang="en" dir="ltr" class="SPAN-class"></span>
+<br />
+<tt id="Test-TT" title="TT Element" lang="en" dir="ltr" class="TT-class">Teletype</tt>
+<br />
+<sub id="Test-SUB" title="SUB Element" lang="en" dir="ltr" class="SUB-class">Subscript</sub>
+<br />
+<sup id="Test-SUP" title="SUP Element" lang="en" dir="ltr" class="SUP-class">SuperScript</sup>
+<br />
+<s id="Test-S" title="S Element" lang="en" dir="ltr" class="S-class">Strike Through (S)</s>
+<br />
+<strike id="Test-STRIKE" title="STRIKE Element" lang="en" dir="ltr" class="STRIKE-class">Strike Through (STRIKE)</strike>
+<br />
+<small id="Test-SMALL" title="SMALL Element" lang="en" dir="ltr" class="SMALL-class">Small</small>
+<br />
+<big id="Test-BIG" title="BIG Element" lang="en" dir="ltr" class="BIG-class">Big</big>
+<br />
+<em id="Test-EM" title="EM Element" lang="en" dir="ltr" class="EM-class">Emphasis</em>
+<br />
+<strong id="Test-STRONG" title="STRONG Element" lang="en" dir="ltr" class="STRONG-class">Strong</strong>
+<br />
+<dfn id="Test-DFN" title="DFN Element" lang="en" dir="ltr" class="DFN-class">
+ <code id="Test-CODE" title="CODE Element" lang="en" dir="ltr" class="CODE-class">10 Computer Code Fragment 20 Temp = 10</code>
+ <samp id="Test-SAMP" title="SAMP Element" lang="en" dir="ltr" class="SAMP-class">Temp = 20</samp>
+ <kbd id="Test-KBD" title="KBD Element" lang="en" dir="ltr" class="KBD-class">*2</kbd>
+ <var id="Test-VAR" title="VAR Element" lang="en" dir="ltr" class="VAR-class">Temp</var>
+ <cite id="Test-CITE" title="CITE Element" lang="en" dir="ltr" class="CITE-class">Citation</cite>
+</dfn>
+<br />
+<abbr id="Test-ABBR" title="ABBR Element" lang="en" dir="ltr" class="ABBR-class">Temp</abbr>
+<br />
+<acronym id="Test-ACRONYM" title="ACRONYM Element" lang="en" dir="ltr" class="ACRONYM-class">NIST</acronym>
+<br />
+<address id="Test-ADDRESS" title="ADDRESS Element" lang="en" dir="ltr" class="ADDRESS-class">Gaithersburg, MD 20899</address>
+<br />
+<noframes id="Test-NOFRAMES" title="NOFRAMES Element" lang="en" dir="ltr" class="NOFRAMES-class">Not</noframes>
+<br />
+<noscript id="Test-NOSCRIPT" title="NOSCRIPT Element" lang="en" dir="ltr" class="NOSCRIPT-class">Not</noscript>
+<br />
+<u id="Test-U" title="U Element" lang="en" dir="ltr" class="U-class">Underlined</u>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/fieldset.html b/test/testcases/tests/level1/html/files/fieldset.html
new file mode 100644
index 0000000..312ea44
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/fieldset.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FieldSet</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<FIELDSET>
+<LEGEND>All data entered must be valid</LEGEND>
+</FIELDSET>
+</FORM>
+<TABLE SUMMARY="Table 1">
+<TR>
+<TD>
+<FIELDSET>
+<LEGEND>All data entered must be valid</LEGEND>
+</FIELDSET>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/fieldset.xhtml b/test/testcases/tests/level1/html/files/fieldset.xhtml
new file mode 100644
index 0000000..dcfeba1
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/fieldset.xhtml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FieldSet</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form2" action="..." method="post">
+<fieldset>
+<legend>All data entered must be valid</legend>
+</fieldset>
+</form>
+<table summary="Table 1">
+<tr>
+<td>
+<fieldset>
+<legend>All data entered must be valid</legend>
+</fieldset>
+</td>
+</tr>
+</table>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/fieldset.xml b/test/testcases/tests/level1/html/files/fieldset.xml
new file mode 100644
index 0000000..dcfeba1
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/fieldset.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FieldSet</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form2" action="..." method="post">
+<fieldset>
+<legend>All data entered must be valid</legend>
+</fieldset>
+</form>
+<table summary="Table 1">
+<tr>
+<td>
+<fieldset>
+<legend>All data entered must be valid</legend>
+</fieldset>
+</td>
+</tr>
+</table>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/font.html b/test/testcases/tests/level1/html/files/font.html
new file mode 100644
index 0000000..894e442
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/font.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Font</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FONT COLOR="#000000" FACE="arial,helvetica" SIZE="4">Test Tables</FONT>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/font.xhtml b/test/testcases/tests/level1/html/files/font.xhtml
new file mode 100644
index 0000000..818db76
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/font.xhtml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - BaseFont</title>
+</head>
+<body onload="parent.loadComplete()">
+<font color="#000000" face="arial,helvitica" size="4">Test Tables</font>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/font.xml b/test/testcases/tests/level1/html/files/font.xml
new file mode 100644
index 0000000..818db76
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/font.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - BaseFont</title>
+</head>
+<body onload="parent.loadComplete()">
+<font color="#000000" face="arial,helvitica" size="4">Test Tables</font>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/form.html b/test/testcases/tests/level1/html/files/form.html
new file mode 100644
index 0000000..d8bf024
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/form.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FORM</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/form.xhtml b/test/testcases/tests/level1/html/files/form.xhtml
new file mode 100644
index 0000000..40d6bf0
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/form.xhtml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FORM</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" accept-charset="US-ASCII" action="./files/getData.pl" enctype="application/x-www-form-urlencoded" method="post">
+<p>
+<textarea id="text1" cols="20" rows="7"></textarea>
+<input type="submit" name="submit1" value="Submit" />
+<input type="reset" name="submit2" value="Reset" />
+</p>
+</form>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/form.xml b/test/testcases/tests/level1/html/files/form.xml
new file mode 100644
index 0000000..40d6bf0
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/form.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FORM</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" accept-charset="US-ASCII" action="./files/getData.pl" enctype="application/x-www-form-urlencoded" method="post">
+<p>
+<textarea id="text1" cols="20" rows="7"></textarea>
+<input type="submit" name="submit1" value="Submit" />
+<input type="reset" name="submit2" value="Reset" />
+</p>
+</form>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/form2.html b/test/testcases/tests/level1/html/files/form2.html
new file mode 100644
index 0000000..c44b672
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/form2.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FORM</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form1" TARGET="dynamic" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/form2.xhtml b/test/testcases/tests/level1/html/files/form2.xhtml
new file mode 100644
index 0000000..e639432
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/form2.xhtml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FORM</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" target="dynamic" accept-charset="US-ASCII" action="./files/getData.pl" enctype="application/x-www-form-urlencoded" method="post">
+<p>
+<textarea id="text1" cols="20" rows="7"></textarea>
+<input type="submit" name="submit1" value="Submit" />
+<input type="reset" name="submit2" value="Reset" />
+</p>
+</form>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/form2.xml b/test/testcases/tests/level1/html/files/form2.xml
new file mode 100644
index 0000000..e639432
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/form2.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FORM</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" target="dynamic" accept-charset="US-ASCII" action="./files/getData.pl" enctype="application/x-www-form-urlencoded" method="post">
+<p>
+<textarea id="text1" cols="20" rows="7"></textarea>
+<input type="submit" name="submit1" value="Submit" />
+<input type="reset" name="submit2" value="Reset" />
+</p>
+</form>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/form3.html b/test/testcases/tests/level1/html/files/form3.html
new file mode 100644
index 0000000..543d09e
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/form3.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>FORM3</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form1" ACTION="about:blank">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/form3.xhtml b/test/testcases/tests/level1/html/files/form3.xhtml
new file mode 100644
index 0000000..48f5019
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/form3.xhtml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>FORM3</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="about:blank">
+<p>
+<textarea id="text1" cols="20" rows="7"></textarea>
+<input type="submit" name="submit1" value="Submit" />
+<input type="reset" name="submit2" value="Reset" />
+</p>
+</form>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/form3.xml b/test/testcases/tests/level1/html/files/form3.xml
new file mode 100644
index 0000000..bbed66f
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/form3.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>FORM3</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="about:blank">
+<p>
+<textarea id="text1" cols="20" rows="7"></textarea>
+<input type="submit" name="submit1" value="Submit" />
+<input type="reset" name="submit2" value="Reset" />
+</p>
+</form>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/frame.html b/test/testcases/tests/level1/html/files/frame.html
new file mode 100644
index 0000000..41182c9
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/frame.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAME</TITLE>
+</HEAD>
+<FRAMESET COLS="20, 80" onload="parent.loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/frame.xhtml b/test/testcases/tests/level1/html/files/frame.xhtml
new file mode 100644
index 0000000..bbe00fa
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/frame.xhtml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
+ "xhtml1-frameset.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FRAME</title>
+</head>
+<frameset cols="20, 80" onload="parent.loadComplete()">
+<frameset rows="100, 200">
+<frame longdesc="about:blank" marginheight="10" marginwidth="5" noresize="noresize" name="Frame1" frameborder="1" scrolling="yes" src="right.png" />
+</frameset>
+<frame src="w3c_main.png" />
+</frameset>
+</html>
diff --git a/test/testcases/tests/level1/html/files/frame.xml b/test/testcases/tests/level1/html/files/frame.xml
new file mode 100644
index 0000000..bbe00fa
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/frame.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
+ "xhtml1-frameset.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FRAME</title>
+</head>
+<frameset cols="20, 80" onload="parent.loadComplete()">
+<frameset rows="100, 200">
+<frame longdesc="about:blank" marginheight="10" marginwidth="5" noresize="noresize" name="Frame1" frameborder="1" scrolling="yes" src="right.png" />
+</frameset>
+<frame src="w3c_main.png" />
+</frameset>
+</html>
diff --git a/test/testcases/tests/level1/html/files/frameset.html b/test/testcases/tests/level1/html/files/frameset.html
new file mode 100644
index 0000000..f208fe0
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/frameset.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAMESET</TITLE>
+</HEAD>
+<FRAMESET COLS="20, 80" onload="parent.loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/frameset.xhtml b/test/testcases/tests/level1/html/files/frameset.xhtml
new file mode 100644
index 0000000..2035bd9
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/frameset.xhtml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
+ "xhtml1-frameset.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FRAMESET</title>
+</head>
+<frameset cols="20, 80" onload="parent.loadComplete()">
+<frameset rows="100, 200">
+<frame src="right.png" />
+</frameset>
+<frame src="w3c_main.png" />
+</frameset>
+</html>
diff --git a/test/testcases/tests/level1/html/files/frameset.xml b/test/testcases/tests/level1/html/files/frameset.xml
new file mode 100644
index 0000000..2035bd9
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/frameset.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
+ "xhtml1-frameset.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FRAMESET</title>
+</head>
+<frameset cols="20, 80" onload="parent.loadComplete()">
+<frameset rows="100, 200">
+<frame src="right.png" />
+</frameset>
+<frame src="w3c_main.png" />
+</frameset>
+</html>
diff --git a/test/testcases/tests/level1/html/files/head.html b/test/testcases/tests/level1/html/files/head.html
new file mode 100644
index 0000000..5bbb8c0
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/head.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD PROFILE="http://www.w3.org/2004/07/profile">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HEAD</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>Hello, World.</P>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/head.xhtml b/test/testcases/tests/level1/html/files/head.xhtml
new file mode 100644
index 0000000..eb60ea2
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/head.xhtml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head profile="http://www.w3.org/2004/07/profile">
+<title>NIST DOM HTML Test - HEAD</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>Hello, World.</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/head.xml b/test/testcases/tests/level1/html/files/head.xml
new file mode 100644
index 0000000..eb3678c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/head.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head profile="http://xw2k.sdct.itl.nist.gov/brady/dom/files/profile">
+<title>NIST DOM HTML Test - HEAD</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>Hello, World.</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/heading.html b/test/testcases/tests/level1/html/files/heading.html
new file mode 100644
index 0000000..90d388c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/heading.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HEADING</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<H1 ALIGN="center">Head Element 1</H1>
+<H2 ALIGN="left">Head Element 2</H2>
+<H3 ALIGN="right">Head Element 3</H3>
+<H4 ALIGN="justify">Head Element 4</H4>
+<H5 ALIGN="center">Head Element 5</H5>
+<H6 ALIGN="left">Head Element 6</H6>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/heading.xhtml b/test/testcases/tests/level1/html/files/heading.xhtml
new file mode 100644
index 0000000..3fda259
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/heading.xhtml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - HEADING</title>
+</head>
+<body onload="parent.loadComplete()">
+<h1 align="center">Head Element 1</h1>
+<h2 align="left">Head Element 2</h2>
+<h3 align="right">Head Element 3</h3>
+<h4 align="right">Head Element 4</h4>
+<h5 align="center">Head Element 5</h5>
+<h6 align="left">Head Element 6</h6>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/heading.xml b/test/testcases/tests/level1/html/files/heading.xml
new file mode 100644
index 0000000..3fda259
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/heading.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - HEADING</title>
+</head>
+<body onload="parent.loadComplete()">
+<h1 align="center">Head Element 1</h1>
+<h2 align="left">Head Element 2</h2>
+<h3 align="right">Head Element 3</h3>
+<h4 align="right">Head Element 4</h4>
+<h5 align="center">Head Element 5</h5>
+<h6 align="left">Head Element 6</h6>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/hr.html b/test/testcases/tests/level1/html/files/hr.html
new file mode 100644
index 0000000..9c4facc
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/hr.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HR</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<HR ALIGN="center" NOSHADE="noShade" SIZE="5" WIDTH="400" />
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/hr.xhtml b/test/testcases/tests/level1/html/files/hr.xhtml
new file mode 100644
index 0000000..685de35
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/hr.xhtml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - HR</title>
+</head>
+<body onload="parent.loadComplete()">
+<hr align="center" noshade="noshade" size="5" width="400"/>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/hr.xml b/test/testcases/tests/level1/html/files/hr.xml
new file mode 100644
index 0000000..685de35
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/hr.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - HR</title>
+</head>
+<body onload="parent.loadComplete()">
+<hr align="center" noshade="noshade" size="5" width="400"/>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/html.html b/test/testcases/tests/level1/html/files/html.html
new file mode 100644
index 0000000..2c91731
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/html.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML VERSION="-//W3C//DTD HTML 4.01 Transitional//EN">
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Html</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>Hello, World.</P>
+</BODY>
+</HTML>
+
+
diff --git a/test/testcases/tests/level1/html/files/html.xhtml b/test/testcases/tests/level1/html/files/html.xhtml
new file mode 100644
index 0000000..f07d2c1
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/html.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Html</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>Hello, World.</p>
+</body>
+</html>
+
+
diff --git a/test/testcases/tests/level1/html/files/html.xml b/test/testcases/tests/level1/html/files/html.xml
new file mode 100644
index 0000000..f07d2c1
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/html.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - Html</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>Hello, World.</p>
+</body>
+</html>
+
+
diff --git a/test/testcases/tests/level1/html/files/iframe.html b/test/testcases/tests/level1/html/files/iframe.html
new file mode 100644
index 0000000..0a44fc3
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/iframe.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/iframe.xhtml b/test/testcases/tests/level1/html/files/iframe.xhtml
new file mode 100644
index 0000000..93326c8
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/iframe.xhtml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - IFRAME</title>
+</head>
+<body onload="parent.loadComplete()">
+<iframe longdesc="about:blank" marginheight="10" marginwidth="5" width="60" height="50" name="Iframe1" frameborder="1" scrolling="yes" src="right.png" align="top">IFRAME1</iframe>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/iframe.xml b/test/testcases/tests/level1/html/files/iframe.xml
new file mode 100644
index 0000000..93326c8
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/iframe.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - IFRAME</title>
+</head>
+<body onload="parent.loadComplete()">
+<iframe longdesc="about:blank" marginheight="10" marginwidth="5" width="60" height="50" name="Iframe1" frameborder="1" scrolling="yes" src="right.png" align="top">IFRAME1</iframe>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/img.html b/test/testcases/tests/level1/html/files/img.html
new file mode 100644
index 0000000..b4e8b27
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/img.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/img.xhtml b/test/testcases/tests/level1/html/files/img.xhtml
new file mode 100644
index 0000000..40e3695
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/img.xhtml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - IMG</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<img id="IMAGE-1" name="IMAGE-1" src="./pix/dts.gif" align="middle" alt="DTS IMAGE LOGO" border="0" height="47" hspace="4" longdesc="./files/desc.html" usemap="#DTS-MAP" vspace="10" width="115"/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/img.xml b/test/testcases/tests/level1/html/files/img.xml
new file mode 100644
index 0000000..40e3695
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/img.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - IMG</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<img id="IMAGE-1" name="IMAGE-1" src="./pix/dts.gif" align="middle" alt="DTS IMAGE LOGO" border="0" height="47" hspace="4" longdesc="./files/desc.html" usemap="#DTS-MAP" vspace="10" width="115"/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/input.html b/test/testcases/tests/level1/html/files/input.html
new file mode 100644
index 0000000..c36e87d
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/input.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/input.xhtml b/test/testcases/tests/level1/html/files/input.xhtml
new file mode 100644
index 0000000..b7704ad
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/input.xhtml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - INPUT</title>
+</head>
+<body onload="parent.loadComplete()">
+<table cellpadding="15" border="border" summary="Table 1">
+<tr align="center">
+<td valign="top">Under a FORM control
+<form id="form1" action="./files/getData.pl" method="post">
+<table border="15" summary="Table 2">
+<tr>
+<td>
+<label accesskey="b" for="input1">Enter Your Password:</label>
+</td>
+<td>
+<input dir="ltr" id="input1" tabindex="8" value="Password" type="password" name="Password" size="25" maxlength="5" alt="Password entry" readonly="readonly"/>
+</td>
+</tr>
+<tr>
+<td>
+<input type="radio" name="Radio1" accesskey="c" value="ReHire"/>
+</td>
+</tr>
+<tr>
+<td>
+<input type="radio" name="Radio2" value="NewHire" tabindex="9" checked="checked"/>
+</td>
+</tr>
+<tr>
+<td>Hours available to work</td>
+<td>
+<input type="checkbox" name="Check1" align="bottom" tabindex="10" value="EarlyMornings" checked="checked"/>
+<br/>
+<input id="input5" type="checkbox" name="Check2" tabindex="11" value="AfterNoon" onclick="newId(this)"/>
+<br/>
+<input type="checkbox" name="Check3" tabindex="12" value="Evenings"/>
+<br/>
+<input type="checkbox" name="Check4" tabindex="13" value="Closing" disabled="disabled"/>
+<br/>
+</td>
+</tr>
+<tr>
+<td colspan="2">
+<input type="image" tabindex="14" name="SubmitImage" usemap="#submit-map" src="./pix/submit.gif"/>
+</td>
+</tr>
+<tr>
+<td colspan="2">
+<input title="old_title" type="file" name="FileControl" tabindex="15" accept="GIF,JPEG" onselect="newTitle(this)"/>
+</td>
+</tr>
+</table>
+</form>
+</td>
+</tr>
+</table>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/input.xml b/test/testcases/tests/level1/html/files/input.xml
new file mode 100644
index 0000000..b7704ad
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/input.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - INPUT</title>
+</head>
+<body onload="parent.loadComplete()">
+<table cellpadding="15" border="border" summary="Table 1">
+<tr align="center">
+<td valign="top">Under a FORM control
+<form id="form1" action="./files/getData.pl" method="post">
+<table border="15" summary="Table 2">
+<tr>
+<td>
+<label accesskey="b" for="input1">Enter Your Password:</label>
+</td>
+<td>
+<input dir="ltr" id="input1" tabindex="8" value="Password" type="password" name="Password" size="25" maxlength="5" alt="Password entry" readonly="readonly"/>
+</td>
+</tr>
+<tr>
+<td>
+<input type="radio" name="Radio1" accesskey="c" value="ReHire"/>
+</td>
+</tr>
+<tr>
+<td>
+<input type="radio" name="Radio2" value="NewHire" tabindex="9" checked="checked"/>
+</td>
+</tr>
+<tr>
+<td>Hours available to work</td>
+<td>
+<input type="checkbox" name="Check1" align="bottom" tabindex="10" value="EarlyMornings" checked="checked"/>
+<br/>
+<input id="input5" type="checkbox" name="Check2" tabindex="11" value="AfterNoon" onclick="newId(this)"/>
+<br/>
+<input type="checkbox" name="Check3" tabindex="12" value="Evenings"/>
+<br/>
+<input type="checkbox" name="Check4" tabindex="13" value="Closing" disabled="disabled"/>
+<br/>
+</td>
+</tr>
+<tr>
+<td colspan="2">
+<input type="image" tabindex="14" name="SubmitImage" usemap="#submit-map" src="./pix/submit.gif"/>
+</td>
+</tr>
+<tr>
+<td colspan="2">
+<input title="old_title" type="file" name="FileControl" tabindex="15" accept="GIF,JPEG" onselect="newTitle(this)"/>
+</td>
+</tr>
+</table>
+</form>
+</td>
+</tr>
+</table>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/isindex.html b/test/testcases/tests/level1/html/files/isindex.html
new file mode 100644
index 0000000..0fd50ce
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/isindex.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - ISINDEX</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<ISINDEX PROMPT="New Employee: ">
+</FORM>
+<ISINDEX PROMPT="Old Employee: ">
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/isindex.xhtml b/test/testcases/tests/level1/html/files/isindex.xhtml
new file mode 100644
index 0000000..a48d9a5
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/isindex.xhtml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - ISINDEX</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<isindex prompt="New Employee: "/>
+</form>
+<isindex prompt="Old Employee: "/>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/isindex.xml b/test/testcases/tests/level1/html/files/isindex.xml
new file mode 100644
index 0000000..a48d9a5
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/isindex.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - ISINDEX</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<isindex prompt="New Employee: "/>
+</form>
+<isindex prompt="Old Employee: "/>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/label.html b/test/testcases/tests/level1/html/files/label.html
new file mode 100644
index 0000000..d0abc04
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/label.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LABEL</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your First Password:</LABEL>
+<INPUT ID="input1" TYPE="password" NAME="Password1"/>
+</P>
+</FORM>
+<P>
+<LABEL ACCESSKEY="c" FOR="input2">Enter Your Second Password:</LABEL>
+<INPUT ID="input2" TYPE="password" NAME="Password2"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/test/testcases/tests/level1/html/files/label.xhtml b/test/testcases/tests/level1/html/files/label.xhtml
new file mode 100644
index 0000000..902584f
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/label.xhtml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - LABEL</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<label accesskey="b" for="input1">Enter Your First Password:</label>
+<input id="input1" type="password" name="Password1"/>
+</p>
+</form>
+<p>
+<label accesskey="c" for="input2">Enter Your Second Password:</label>
+<input id="input2" type="password" name="Password2"/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/label.xml b/test/testcases/tests/level1/html/files/label.xml
new file mode 100644
index 0000000..902584f
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/label.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - LABEL</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<label accesskey="b" for="input1">Enter Your First Password:</label>
+<input id="input1" type="password" name="Password1"/>
+</p>
+</form>
+<p>
+<label accesskey="c" for="input2">Enter Your Second Password:</label>
+<input id="input2" type="password" name="Password2"/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/legend.html b/test/testcases/tests/level1/html/files/legend.html
new file mode 100644
index 0000000..53160ee
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/legend.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LEGEND</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<FIELDSET>
+<LEGEND ACCESSKEY="b" ALIGN="top">Enter Password1:</LEGEND>
+<INPUT ID="input1" TYPE="password" NAME="Password1"/>
+</FIELDSET>
+</FORM>
+<FIELDSET>
+<LEGEND ACCESSKEY="c" ALIGN="bottom">Enter Password2:</LEGEND>
+<INPUT ID="input2" TYPE="password" NAME="Password2"/>
+</FIELDSET>
+</BODY>
+</HTML>
+
+
+
diff --git a/test/testcases/tests/level1/html/files/legend.xhtml b/test/testcases/tests/level1/html/files/legend.xhtml
new file mode 100644
index 0000000..c95e685
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/legend.xhtml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - LEGEND</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<fieldset>
+<legend accesskey="b" align="top">Enter Password1:</legend>
+<input id="input1" type="password" name="Password1"/>
+</fieldset>
+</form>
+<fieldset>
+<legend accesskey="c" align="bottom">Enter Password2:</legend>
+<input id="input2" type="password" name="Password2"/>
+</fieldset>
+</body>
+</html>
+
+
diff --git a/test/testcases/tests/level1/html/files/legend.xml b/test/testcases/tests/level1/html/files/legend.xml
new file mode 100644
index 0000000..c95e685
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/legend.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - LEGEND</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<fieldset>
+<legend accesskey="b" align="top">Enter Password1:</legend>
+<input id="input1" type="password" name="Password1"/>
+</fieldset>
+</form>
+<fieldset>
+<legend accesskey="c" align="bottom">Enter Password2:</legend>
+<input id="input2" type="password" name="Password2"/>
+</fieldset>
+</body>
+</html>
+
+
diff --git a/test/testcases/tests/level1/html/files/li.html b/test/testcases/tests/level1/html/files/li.html
new file mode 100644
index 0000000..0c97b4c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/li.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LI</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<OL>
+<LI TYPE="square" VALUE="2">EMP0001
+<UL>
+<LI>Margaret Martin
+<DL>
+<DD>Accountant</DD>
+<DD>56,000</DD>
+<DD>Female</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+</OL>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/li.xhtml b/test/testcases/tests/level1/html/files/li.xhtml
new file mode 100644
index 0000000..79af811
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/li.xhtml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - LI</title>
+</head>
+<body onload="parent.loadComplete()">
+<ol>
+<li type="square" value="2">EMP0001
+<ul>
+<li>Margaret Martin
+<dl>
+<dd>Accountant</dd>
+<dd>56,000</dd>
+<dd>Female</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ol>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/li.xml b/test/testcases/tests/level1/html/files/li.xml
new file mode 100644
index 0000000..79af811
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/li.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - LI</title>
+</head>
+<body onload="parent.loadComplete()">
+<ol>
+<li type="square" value="2">EMP0001
+<ul>
+<li>Margaret Martin
+<dl>
+<dd>Accountant</dd>
+<dd>56,000</dd>
+<dd>Female</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ol>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/link.html b/test/testcases/tests/level1/html/files/link.html
new file mode 100644
index 0000000..2d4c082
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/link.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LINK</TITLE>
+<LINK CHARSET="Latin-1" HREF="./files/glossary.html" HREFLANG="en" MEDIA="screen" REL="Glossary" TYPE="text/html">
+<LINK CHARSET="Latin-1" HREF="./files/style1.css" HREFLANG="en" MEDIA="screen" REV="stylesheet" TYPE="text/css">
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<BR>
+</P>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/link.xhtml b/test/testcases/tests/level1/html/files/link.xhtml
new file mode 100644
index 0000000..5a0f18c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/link.xhtml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - LINK</title>
+<link charset="Latin-1" href="./files/glossary.html" hreflang="en" media="screen" rel="Glossary" type="text/html"/>
+<link charset="Latin-1" href="./files/style1.css" hreflang="en" media="screen" rev="stylesheet" type="text/css"/>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<br/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/link.xml b/test/testcases/tests/level1/html/files/link.xml
new file mode 100644
index 0000000..5a0f18c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/link.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - LINK</title>
+<link charset="Latin-1" href="./files/glossary.html" hreflang="en" media="screen" rel="Glossary" type="text/html"/>
+<link charset="Latin-1" href="./files/style1.css" hreflang="en" media="screen" rev="stylesheet" type="text/css"/>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<br/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/link2.html b/test/testcases/tests/level1/html/files/link2.html
new file mode 100644
index 0000000..12fac9d
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/link2.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LINK</TITLE>
+<LINK CHARSET="Latin-1" TARGET="dynamic" HREF="./files/glossary.html" HREFLANG="en" MEDIA="screen" REL="Glossary" TYPE="text/html">
+<LINK CHARSET="Latin-1" HREF="./files/style1.css" HREFLANG="en" MEDIA="screen" REV="stylesheet" TYPE="text/css">
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<BR>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/link2.xhtml b/test/testcases/tests/level1/html/files/link2.xhtml
new file mode 100644
index 0000000..95c8004
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/link2.xhtml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - LINK</title>
+<link charset="Latin-1" target="dynamic" href="./files/glossary.html" hreflang="en" media="screen" rel="Glossary" type="text/html"/>
+<link charset="Latin-1" href="./files/style1.css" hreflang="en" media="screen" rev="stylesheet" type="text/css"/>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<br/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/link2.xml b/test/testcases/tests/level1/html/files/link2.xml
new file mode 100644
index 0000000..95c8004
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/link2.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - LINK</title>
+<link charset="Latin-1" target="dynamic" href="./files/glossary.html" hreflang="en" media="screen" rel="Glossary" type="text/html"/>
+<link charset="Latin-1" href="./files/style1.css" hreflang="en" media="screen" rev="stylesheet" type="text/css"/>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<br/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/map.html b/test/testcases/tests/level1/html/files/map.html
new file mode 100644
index 0000000..a636fa5
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/map.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - MAP</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA HREF="./files/dletter1.html" TITLE="Domain1" ALT="Domain1">
+<AREA HREF="./files/dletter2.html" TITLE="Domain2" ALT="Domain2">
+<AREA HREF="./files/dletter3.html" TITLE="Domain3" ALT="Domain3">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/map.xhtml b/test/testcases/tests/level1/html/files/map.xhtml
new file mode 100644
index 0000000..f61a2ad
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/map.xhtml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - MAP</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<map name="mapid" id="mapid">
+<area href="./files/dletter1.html" title="Domain1" alt="Domain1"/>
+<area href="./files/dletter2.html" title="Domain2" alt="Domain2"/>
+<area href="./files/dletter3.html" title="Domain3" alt="Domain3"/>
+</map>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/map.xml b/test/testcases/tests/level1/html/files/map.xml
new file mode 100644
index 0000000..f61a2ad
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/map.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - MAP</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<map name="mapid" id="mapid">
+<area href="./files/dletter1.html" title="Domain1" alt="Domain1"/>
+<area href="./files/dletter2.html" title="Domain2" alt="Domain2"/>
+<area href="./files/dletter3.html" title="Domain3" alt="Domain3"/>
+</map>
+</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level1/html/files/menu.html b/test/testcases/tests/level1/html/files/menu.html
new file mode 100644
index 0000000..e07204f
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/menu.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - MENU</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<MENU COMPACT="COMPACT">
+<LI>Interview</LI>
+<LI>Paperwork</LI>
+<LI>Give start date</LI>
+</MENU>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/menu.xhtml b/test/testcases/tests/level1/html/files/menu.xhtml
new file mode 100644
index 0000000..9f020ff
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/menu.xhtml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - MENU</title>
+</head>
+<body onload="parent.loadComplete()">
+<menu compact="compact">
+<li>Interview</li>
+<li>Paperwork</li>
+<li>Give start date</li>
+</menu>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/menu.xml b/test/testcases/tests/level1/html/files/menu.xml
new file mode 100644
index 0000000..9f020ff
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/menu.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - MENU</title>
+</head>
+<body onload="parent.loadComplete()">
+<menu compact="compact">
+<li>Interview</li>
+<li>Paperwork</li>
+<li>Give start date</li>
+</menu>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/meta.html b/test/testcases/tests/level1/html/files/meta.html
new file mode 100644
index 0000000..e88fe8f
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/meta.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META NAME="Meta-Name" HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8" SCHEME="NIST">
+<TITLE>NIST DOM HTML Test - META</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<BR/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/meta.xhtml b/test/testcases/tests/level1/html/files/meta.xhtml
new file mode 100644
index 0000000..bf89bbe
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/meta.xhtml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<meta name="Meta-Name" http-equiv="Content-Type" content="text/html; CHARSET=utf-8" scheme="NIST"/>
+<title>NIST DOM HTML Test - META</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<br/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/meta.xml b/test/testcases/tests/level1/html/files/meta.xml
new file mode 100644
index 0000000..bf89bbe
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/meta.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<meta name="Meta-Name" http-equiv="Content-Type" content="text/html; CHARSET=utf-8" scheme="NIST"/>
+<title>NIST DOM HTML Test - META</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<br/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/mod.html b/test/testcases/tests/level1/html/files/mod.html
new file mode 100644
index 0000000..1ab7969
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/mod.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - MOD</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<INS CITE="./files/ins-reasons.html" DATETIME="January 1, 2002">The INS element is used to indicate that a section of a document had been inserted.</INS>
+<BR/>
+<DEL CITE="./files/del-reasons.html" DATETIME="January 2, 2002">The DEL element is used to indicate that a section of a document had been removed.</DEL>
+</P>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/mod.xhtml b/test/testcases/tests/level1/html/files/mod.xhtml
new file mode 100644
index 0000000..b81432d
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/mod.xhtml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - MOD</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<ins cite="./files/ins-reasons.html" datetime="January 1, 2002">The INS element is used to indicate that a section of a document had been inserted.</ins>
+<br/>
+<del cite="./files/del-reasons.html" datetime="January 2, 2002">The DEL element is used to indicate that a section of a document had been removed.</del>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/mod.xml b/test/testcases/tests/level1/html/files/mod.xml
new file mode 100644
index 0000000..b81432d
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/mod.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - MOD</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<ins cite="./files/ins-reasons.html" datetime="January 1, 2002">The INS element is used to indicate that a section of a document had been inserted.</ins>
+<br/>
+<del cite="./files/del-reasons.html" datetime="January 2, 2002">The DEL element is used to indicate that a section of a document had been removed.</del>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/object.html b/test/testcases/tests/level1/html/files/object.html
new file mode 100644
index 0000000..7960549
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/object.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://www.w3.org/DOM/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/object.xhtml b/test/testcases/tests/level1/html/files/object.xhtml
new file mode 100644
index 0000000..3399588
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/object.xhtml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OBJECT</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<object align="middle" archive="" border="0" codebase="http://www.w3.org/DOM/" data="./pix/logo.gif" height="60" hspace="0" standby="Loading Image ..." tabindex="0" type="image/gif" usemap="#DivLogo-map" vspace="0" width="550"></object>
+</p>
+<form name="OBJECT2" action="./files/getData.pl" method="post">
+<p>
+<object declare="declare" name="OBJECT2" codetype="image/gif"></object>
+</p>
+</form>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/object.xml b/test/testcases/tests/level1/html/files/object.xml
new file mode 100644
index 0000000..824f7fc
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/object.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OBJECT</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<object align="middle" archive="" border="0" codebase="http://xw2k.sdct.itl.nist.gov/brady/dom/" data="./pix/logo.gif" height="60" hspace="0" standby="Loading Image ..." tabindex="0" type="image/gif" usemap="#DivLogo-map" vspace="0" width="550"></object>
+</p>
+<form name="OBJECT2" action="./files/getData.pl" method="post">
+<p>
+<object declare="declare" name="OBJECT2" codetype="image/gif"></object>
+</p>
+</form>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/object2.html b/test/testcases/tests/level1/html/files/object2.html
new file mode 100644
index 0000000..0a39363
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/object2.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://www.w3.org/DOM/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM ID="object2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/object2.xhtml b/test/testcases/tests/level1/html/files/object2.xhtml
new file mode 100644
index 0000000..e318a3c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/object2.xhtml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OBJECT</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<object align="middle" archive="" border="0" codebase="http://www.w3.org/DOM/" data="./pix/logo.gif" height="60" hspace="0" standby="Loading Image ..." tabindex="0" type="image/gif" usemap="#DivLogo-map" vspace="0" width="550"></object>
+</p>
+<form id="object2" action="./files/getData.pl" method="post">
+<p>
+<object declare="declare" name="OBJECT2" codetype="image/gif"></object>
+</p>
+</form>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/object2.xml b/test/testcases/tests/level1/html/files/object2.xml
new file mode 100644
index 0000000..a41e03d
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/object2.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OBJECT</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<object align="middle" archive="" border="0" codebase="http://xw2k.sdct.itl.nist.gov/brady/dom/" data="./pix/logo.gif" height="60" hspace="0" standby="Loading Image ..." tabindex="0" type="image/gif" usemap="#DivLogo-map" vspace="0" width="550"></object>
+</p>
+<form id="object2" action="./files/getData.pl" method="post">
+<p>
+<object declare="declare" name="OBJECT2" codetype="image/gif"></object>
+</p>
+</form>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/olist.html b/test/testcases/tests/level1/html/files/olist.html
new file mode 100644
index 0000000..f69c9de
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/olist.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OLIST</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<OL COMPACT="compact" START="1" TYPE="1">
+<LI>EMP0001
+<UL>
+<LI>Margaret Martin
+<DL>
+<DD>Accountant</DD>
+<DD>56,000</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+<LI>EMP0002
+<UL>
+<LI>Martha Raynolds
+<DL>
+<DD>Secretary</DD>
+<DD>35,000</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+</OL>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/olist.xhtml b/test/testcases/tests/level1/html/files/olist.xhtml
new file mode 100644
index 0000000..cbe1ab6
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/olist.xhtml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OLIST</title>
+</head>
+<body onload="parent.loadComplete()">
+<ol compact="compact" start="1" type="1">
+<li>EMP0001
+<ul>
+<li>Margaret Martin
+<dl>
+<dd>Accountant</dd>
+<dd>56,000</dd>
+</dl>
+</li>
+</ul>
+</li>
+<li>EMP0002
+<ul>
+<li>Martha Raynolds
+<dl>
+<dd>Secretary</dd>
+<dd>35,000</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ol>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/olist.xml b/test/testcases/tests/level1/html/files/olist.xml
new file mode 100644
index 0000000..cbe1ab6
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/olist.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OLIST</title>
+</head>
+<body onload="parent.loadComplete()">
+<ol compact="compact" start="1" type="1">
+<li>EMP0001
+<ul>
+<li>Margaret Martin
+<dl>
+<dd>Accountant</dd>
+<dd>56,000</dd>
+</dl>
+</li>
+</ul>
+</li>
+<li>EMP0002
+<ul>
+<li>Martha Raynolds
+<dl>
+<dd>Secretary</dd>
+<dd>35,000</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ol>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/optgroup.html b/test/testcases/tests/level1/html/files/optgroup.html
new file mode 100644
index 0000000..a354af8
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/optgroup.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTGROUP</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="Form1" ACTION="test.pl" METHOD="post">
+<P>
+<SELECT NAME="select2">
+<OPTGROUP LABEL="Regular Employees">
+<OPTION>EMP0001</OPTION>
+<OPTION>EMP0002</OPTION>
+<OPTION>EMP0003A</OPTION>
+</OPTGROUP>
+<OPTGROUP DISABLED="disabled" LABEL="Temporary Employees">
+<OPTION>EMP0004</OPTION>
+<OPTION>EMP0005</OPTION>
+</OPTGROUP>
+</SELECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/optgroup.xhtml b/test/testcases/tests/level1/html/files/optgroup.xhtml
new file mode 100644
index 0000000..b421eca
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/optgroup.xhtml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OPTGROUP</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="Form1" action="test.pl" method="post">
+<p>
+<select name="select2">
+<optgroup label="Regular Employees">
+<option>EMP0001</option>
+<option>EMP0002</option>
+<option>EMP0003A</option>
+</optgroup>
+<optgroup disabled="disabled" label="Temporary Employees">
+<option>EMP0004</option>
+<option>EMP0005</option>
+</optgroup>
+</select>
+</p>
+</form>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/optgroup.xml b/test/testcases/tests/level1/html/files/optgroup.xml
new file mode 100644
index 0000000..b421eca
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/optgroup.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OPTGROUP</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="Form1" action="test.pl" method="post">
+<p>
+<select name="select2">
+<optgroup label="Regular Employees">
+<option>EMP0001</option>
+<option>EMP0002</option>
+<option>EMP0003A</option>
+</optgroup>
+<optgroup disabled="disabled" label="Temporary Employees">
+<option>EMP0004</option>
+<option>EMP0005</option>
+</optgroup>
+</select>
+</p>
+</form>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/option.html b/test/testcases/tests/level1/html/files/option.html
new file mode 100644
index 0000000..83707c3
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/option.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTION</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/test/testcases/tests/level1/html/files/option.xhtml b/test/testcases/tests/level1/html/files/option.xhtml
new file mode 100644
index 0000000..8cf88d8
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/option.xhtml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OPTION</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<select id="selectId" dir="ltr" tabindex="7" name="select1" multiple="multiple" size="1">
+<option selected="selected" value="10001">EMP10001</option>
+<option label="l1">EMP10002</option>
+<option>EMP10003</option>
+<option>EMP10004</option>
+<option>EMP10005</option>
+</select>
+</p>
+</form>
+<p>
+<select name="select2" disabled="disabled">
+<option>EMP20001</option>
+<option>EMP20002</option>
+<option>EMP20003</option>
+<option>EMP20004</option>
+<option disabled="disabled">EMP20005</option>
+</select>
+</p>
+</body>
+</html>
+
+
diff --git a/test/testcases/tests/level1/html/files/option.xml b/test/testcases/tests/level1/html/files/option.xml
new file mode 100644
index 0000000..8cf88d8
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/option.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OPTION</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<select id="selectId" dir="ltr" tabindex="7" name="select1" multiple="multiple" size="1">
+<option selected="selected" value="10001">EMP10001</option>
+<option label="l1">EMP10002</option>
+<option>EMP10003</option>
+<option>EMP10004</option>
+<option>EMP10005</option>
+</select>
+</p>
+</form>
+<p>
+<select name="select2" disabled="disabled">
+<option>EMP20001</option>
+<option>EMP20002</option>
+<option>EMP20003</option>
+<option>EMP20004</option>
+<option disabled="disabled">EMP20005</option>
+</select>
+</p>
+</body>
+</html>
+
+
diff --git a/test/testcases/tests/level1/html/files/paragraph.html b/test/testcases/tests/level1/html/files/paragraph.html
new file mode 100644
index 0000000..0da4836
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/paragraph.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - PARAGRAPH</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P ALIGN="center">
+TEXT
+</P>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/paragraph.xhtml b/test/testcases/tests/level1/html/files/paragraph.xhtml
new file mode 100644
index 0000000..2cdb1df
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/paragraph.xhtml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - PARAGRAPH</title>
+</head>
+<body onload="parent.loadComplete()">
+<p align="center">
+TEXT
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/paragraph.xml b/test/testcases/tests/level1/html/files/paragraph.xml
new file mode 100644
index 0000000..2cdb1df
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/paragraph.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - PARAGRAPH</title>
+</head>
+<body onload="parent.loadComplete()">
+<p align="center">
+TEXT
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/param.html b/test/testcases/tests/level1/html/files/param.html
new file mode 100644
index 0000000..290e626
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/param.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - PARAM</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<OBJECT>
+<PARAM NAME="image3" TYPE="image/gif" VALUE="image/file.gif" VALUETYPE="ref">
+</OBJECT>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/param.xhtml b/test/testcases/tests/level1/html/files/param.xhtml
new file mode 100644
index 0000000..3e916eb
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/param.xhtml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - PARAM</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<object>
+<param name="image3" type="image/gif" value="image/file.gif" valuetype="ref"/>
+</object>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/param.xml b/test/testcases/tests/level1/html/files/param.xml
new file mode 100644
index 0000000..3e916eb
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/param.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - PARAM</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<object>
+<param name="image3" type="image/gif" value="image/file.gif" valuetype="ref"/>
+</object>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/pre.html b/test/testcases/tests/level1/html/files/pre.html
new file mode 100644
index 0000000..2a40206
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/pre.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - PRE</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<PRE WIDTH="277">The PRE is used to indicate pre-formatted text. Visual agents may:
+
+ leave white space intact.
+ May render text with a fixed-pitch font.
+ May disable automatic word wrap.
+ Must not disable bidirectional processing.
+</PRE>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/pre.xhtml b/test/testcases/tests/level1/html/files/pre.xhtml
new file mode 100644
index 0000000..69f652b
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/pre.xhtml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - PRE</title>
+</head>
+<body onload="parent.loadComplete()">
+<pre>The PRE is used to indicate pre-formatted text. Visual agents may:
+
+ leave white space intact.
+ May render text with a fixed-pitch font.
+ May disable automatic word wrap.
+ Must not disable bidirectional processing.
+</pre>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/pre.xml b/test/testcases/tests/level1/html/files/pre.xml
new file mode 100644
index 0000000..69f652b
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/pre.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - PRE</title>
+</head>
+<body onload="parent.loadComplete()">
+<pre>The PRE is used to indicate pre-formatted text. Visual agents may:
+
+ leave white space intact.
+ May render text with a fixed-pitch font.
+ May disable automatic word wrap.
+ Must not disable bidirectional processing.
+</pre>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/quote.html b/test/testcases/tests/level1/html/files/quote.html
new file mode 100644
index 0000000..6bad2b8
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/quote.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - QUOTE</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<Q CITE="./files/Q.html">The Q element is intended for short quotations</Q>
+</P>
+<BLOCKQUOTE CITE="./files/BLOCKQUOTE.html">
+<P>The BLOCKQUOTE element is used for long quotations.</P>
+</BLOCKQUOTE>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/quote.xhtml b/test/testcases/tests/level1/html/files/quote.xhtml
new file mode 100644
index 0000000..93e6c42
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/quote.xhtml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - QUOTE</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<q cite="./files/Q.html">The Q element is intended for short quotations</q>
+</p>
+<blockquote cite="./files/BLOCKQUOTE.html">
+<p>The BLOCKQUOTE element is used for long quotations.</p>
+</blockquote>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/quote.xml b/test/testcases/tests/level1/html/files/quote.xml
new file mode 100644
index 0000000..93e6c42
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/quote.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - QUOTE</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<q cite="./files/Q.html">The Q element is intended for short quotations</q>
+</p>
+<blockquote cite="./files/BLOCKQUOTE.html">
+<p>The BLOCKQUOTE element is used for long quotations.</p>
+</blockquote>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/right.png b/test/testcases/tests/level1/html/files/right.png
new file mode 100644
index 0000000..41ad0bd
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/right.png
Binary files differ
diff --git a/test/testcases/tests/level1/html/files/script.html b/test/testcases/tests/level1/html/files/script.html
new file mode 100644
index 0000000..362860b
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/script.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SCRIPT</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<SCRIPT CHARSET="US-ASCII" TYPE="text/javaScript" DEFER="defer" SRC="./files/script1.js">var a=2;</SCRIPT>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/script.xhtml b/test/testcases/tests/level1/html/files/script.xhtml
new file mode 100644
index 0000000..ebdaa72
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/script.xhtml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - SCRIPT</title>
+</head>
+<body onload="parent.loadComplete()">
+<script charset="US-ASCII" type="text/javaScript" defer="defer" src="./files/script1.js">var a=2;</script>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/script.xml b/test/testcases/tests/level1/html/files/script.xml
new file mode 100644
index 0000000..ebdaa72
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/script.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - SCRIPT</title>
+</head>
+<body onload="parent.loadComplete()">
+<script charset="US-ASCII" type="text/javaScript" defer="defer" src="./files/script1.js">var a=2;</script>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/select.html b/test/testcases/tests/level1/html/files/select.html
new file mode 100644
index 0000000..7820624
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/select.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/test/testcases/tests/level1/html/files/select.xhtml b/test/testcases/tests/level1/html/files/select.xhtml
new file mode 100644
index 0000000..491a74c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/select.xhtml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - SELECT</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<select id="selectId" dir="ltr" tabindex="7" name="select1" multiple="multiple" size="1">
+<option selected="selected" value="EMP1">EMP10001</option>
+<option>EMP10002</option>
+<option>EMP10003</option>
+<option>EMP10004</option>
+<option>EMP10005</option>
+</select>
+</p>
+</form>
+<p>
+<select name="select2">
+<option>EMP20001</option>
+<option>EMP20002</option>
+<option>EMP20003</option>
+<option>EMP20004</option>
+<option>EMP20005</option>
+</select>
+</p>
+<p>
+<select name="select3" disabled="disabled" tabindex="1">
+<option>EMP30001</option>
+<option>EMP30002</option>
+<option>EMP30003</option>
+<option>EMP30004</option>
+<option>EMP30005</option>
+</select>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/select.xml b/test/testcases/tests/level1/html/files/select.xml
new file mode 100644
index 0000000..491a74c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/select.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - SELECT</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<select id="selectId" dir="ltr" tabindex="7" name="select1" multiple="multiple" size="1">
+<option selected="selected" value="EMP1">EMP10001</option>
+<option>EMP10002</option>
+<option>EMP10003</option>
+<option>EMP10004</option>
+<option>EMP10005</option>
+</select>
+</p>
+</form>
+<p>
+<select name="select2">
+<option>EMP20001</option>
+<option>EMP20002</option>
+<option>EMP20003</option>
+<option>EMP20004</option>
+<option>EMP20005</option>
+</select>
+</p>
+<p>
+<select name="select3" disabled="disabled" tabindex="1">
+<option>EMP30001</option>
+<option>EMP30002</option>
+<option>EMP30003</option>
+<option>EMP30004</option>
+<option>EMP30005</option>
+</select>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/style.html b/test/testcases/tests/level1/html/files/style.html
new file mode 100644
index 0000000..c3df424
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/style.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<STYLE MEDIA="screen" type="text/css"></STYLE>
+<TITLE>NIST DOM HTML Test - STYLE</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>Hello, World.</P>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/style.xhtml b/test/testcases/tests/level1/html/files/style.xhtml
new file mode 100644
index 0000000..b8477c1
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/style.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<style media="screen" type="text/css"></style>
+<title>NIST DOM HTML Test - BR</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>Hello, World.</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/style.xml b/test/testcases/tests/level1/html/files/style.xml
new file mode 100644
index 0000000..b8477c1
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/style.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<style media="screen" type="text/css"></style>
+<title>NIST DOM HTML Test - BR</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>Hello, World.</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/table.html b/test/testcases/tests/level1/html/files/table.html
new file mode 100644
index 0000000..b8f151e
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/table.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/table.xhtml b/test/testcases/tests/level1/html/files/table.xhtml
new file mode 100644
index 0000000..8300b90
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/table.xhtml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLE</title>
+</head>
+<body onload="parent.loadComplete()">
+<table align="center" summary="Table 1">
+<tr>
+<th>Id</th>
+<th>Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+</table>
+<table id="table-1" align="center" border="4" bgcolor="#ff0000" frame="border" cellpadding="2" cellspacing="2" summary="HTML Control Table" rules="all" width="680">
+<caption align="top">Table Caption</caption>
+<thead align="center" valign="middle">
+<tr align="center" bgcolor="#00FFFF" valign="middle">
+<th id="header-1">Employee Id</th>
+<th id="header-2" abbr="maiden" axis="center" align="center" bgcolor="#00FFFF" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-1" valign="middle" width="100">Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+<th>Gender</th>
+<th>Address</th>
+</tr>
+</thead>
+<tfoot align="center" valign="middle">
+<tr>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+</tr>
+</tfoot>
+<tbody align="center" valign="middle">
+<tr>
+<td axis="center" id="Table-3" abbr="maiden2" align="center" bgcolor="#FF0000" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-2" valign="middle" width="175">EMP0001</td>
+<td headers="header-2">Margaret Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+<td>Female</td>
+<td>1230 North Ave. Dallas, Texas 98551</td>
+</tr>
+<tr>
+<td>EMP0002</td>
+<td>Martha Raynolds</td>
+<td>Secretary</td>
+<td>35,000</td>
+<td>Female</td>
+<td>1900 Dallas Road Dallas, Texas 98554</td>
+</tr>
+</tbody>
+</table>
+<table summary="Table 3">
+<tbody>
+<tr>
+<td>
+</td>
+</tr>
+</tbody>
+<tbody>
+<tr>
+<td>
+</td>
+</tr>
+</tbody>
+<tbody>
+<tr>
+<td>
+</td>
+</tr>
+</tbody>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/table.xml b/test/testcases/tests/level1/html/files/table.xml
new file mode 100644
index 0000000..8300b90
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/table.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLE</title>
+</head>
+<body onload="parent.loadComplete()">
+<table align="center" summary="Table 1">
+<tr>
+<th>Id</th>
+<th>Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+</table>
+<table id="table-1" align="center" border="4" bgcolor="#ff0000" frame="border" cellpadding="2" cellspacing="2" summary="HTML Control Table" rules="all" width="680">
+<caption align="top">Table Caption</caption>
+<thead align="center" valign="middle">
+<tr align="center" bgcolor="#00FFFF" valign="middle">
+<th id="header-1">Employee Id</th>
+<th id="header-2" abbr="maiden" axis="center" align="center" bgcolor="#00FFFF" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-1" valign="middle" width="100">Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+<th>Gender</th>
+<th>Address</th>
+</tr>
+</thead>
+<tfoot align="center" valign="middle">
+<tr>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+</tr>
+</tfoot>
+<tbody align="center" valign="middle">
+<tr>
+<td axis="center" id="Table-3" abbr="maiden2" align="center" bgcolor="#FF0000" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-2" valign="middle" width="175">EMP0001</td>
+<td headers="header-2">Margaret Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+<td>Female</td>
+<td>1230 North Ave. Dallas, Texas 98551</td>
+</tr>
+<tr>
+<td>EMP0002</td>
+<td>Martha Raynolds</td>
+<td>Secretary</td>
+<td>35,000</td>
+<td>Female</td>
+<td>1900 Dallas Road Dallas, Texas 98554</td>
+</tr>
+</tbody>
+</table>
+<table summary="Table 3">
+<tbody>
+<tr>
+<td>
+</td>
+</tr>
+</tbody>
+<tbody>
+<tr>
+<td>
+</td>
+</tr>
+</tbody>
+<tbody>
+<tr>
+<td>
+</td>
+</tr>
+</tbody>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/table1.html b/test/testcases/tests/level1/html/files/table1.html
new file mode 100644
index 0000000..8f5d19b
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/table1.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<TABLE SUMMARY="Empty Table">
+<tr><td>HTML can't abide empty table</td></tr>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/table1.xhtml b/test/testcases/tests/level1/html/files/table1.xhtml
new file mode 100644
index 0000000..e174c63
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/table1.xhtml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLE</title>
+</head>
+<body onload="parent.loadComplete()">
+<table summary="Empty Table">
+<tr><td>XHTML can't abide empty table</td></tr>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/table1.xml b/test/testcases/tests/level1/html/files/table1.xml
new file mode 100644
index 0000000..e174c63
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/table1.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLE</title>
+</head>
+<body onload="parent.loadComplete()">
+<table summary="Empty Table">
+<tr><td>XHTML can't abide empty table</td></tr>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/tablecaption.html b/test/testcases/tests/level1/html/files/tablecaption.html
new file mode 100644
index 0000000..f9181c7
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablecaption.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECAPTION</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<CAPTION ALIGN="top">CAPTION 1</CAPTION>
+<TR>
+<TH>Employee Id</TH>
+<TH>Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/test/testcases/tests/level1/html/files/tablecaption.xhtml b/test/testcases/tests/level1/html/files/tablecaption.xhtml
new file mode 100644
index 0000000..67b72dc
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablecaption.xhtml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - BR</title>
+</head>
+<body onload="parent.loadComplete()">
+<table summary="Table 1">
+<caption align="top">CAPTION 1</caption>
+<tr>
+<th>Employee Id</th>
+<th>Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/tablecaption.xml b/test/testcases/tests/level1/html/files/tablecaption.xml
new file mode 100644
index 0000000..67b72dc
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablecaption.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - BR</title>
+</head>
+<body onload="parent.loadComplete()">
+<table summary="Table 1">
+<caption align="top">CAPTION 1</caption>
+<tr>
+<th>Employee Id</th>
+<th>Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/tablecell.html b/test/testcases/tests/level1/html/files/tablecell.html
new file mode 100644
index 0000000..c9adef2
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablecell.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level1/html/files/tablecell.xhtml b/test/testcases/tests/level1/html/files/tablecell.xhtml
new file mode 100644
index 0000000..0e8ee7f
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablecell.xhtml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLECELL</title>
+</head>
+<body onload="parent.loadComplete()">
+<table summary="Table 1">
+<tr>
+<th id="header-1">Employee Id</th>
+<th id="header-2" abbr="hd1" axis="center" align="center" bgcolor="#00FFFF" char=":" charoff="1" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-1" valign="middle" width="170">Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+<tr>
+<td id="header-3">EMP0001</td>
+<td id="header-4" abbr="hd2" axis="center" align="center" bgcolor="#FF0000" char=":" charoff="1" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-3" valign="middle" width="175">Margaret Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+</tr>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/tablecell.xml b/test/testcases/tests/level1/html/files/tablecell.xml
new file mode 100644
index 0000000..0e8ee7f
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablecell.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLECELL</title>
+</head>
+<body onload="parent.loadComplete()">
+<table summary="Table 1">
+<tr>
+<th id="header-1">Employee Id</th>
+<th id="header-2" abbr="hd1" axis="center" align="center" bgcolor="#00FFFF" char=":" charoff="1" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-1" valign="middle" width="170">Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+<tr>
+<td id="header-3">EMP0001</td>
+<td id="header-4" abbr="hd2" axis="center" align="center" bgcolor="#FF0000" char=":" charoff="1" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-3" valign="middle" width="175">Margaret Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+</tr>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/tablecol.html b/test/testcases/tests/level1/html/files/tablecol.html
new file mode 100644
index 0000000..c72a948
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablecol.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/test/testcases/tests/level1/html/files/tablecol.xhtml b/test/testcases/tests/level1/html/files/tablecol.xhtml
new file mode 100644
index 0000000..a69c4fe
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablecol.xhtml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLECOL</title>
+</head>
+<body onload="parent.loadComplete()">
+<table summary="Table 1">
+<colgroup valign="middle" span="2" align="center" width="20" char="$" charoff="15">
+<col valign="middle" span="1" align="center" width="20" char="*" charoff="20"/>
+</colgroup>
+<tr>
+<th>Id</th>
+<th>Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+<tr>
+<td>EMP0001</td>
+<td>Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+</tr>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/tablecol.xml b/test/testcases/tests/level1/html/files/tablecol.xml
new file mode 100644
index 0000000..a69c4fe
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablecol.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLECOL</title>
+</head>
+<body onload="parent.loadComplete()">
+<table summary="Table 1">
+<colgroup valign="middle" span="2" align="center" width="20" char="$" charoff="15">
+<col valign="middle" span="1" align="center" width="20" char="*" charoff="20"/>
+</colgroup>
+<tr>
+<th>Id</th>
+<th>Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+<tr>
+<td>EMP0001</td>
+<td>Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+</tr>
+</table>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/tablerow.html b/test/testcases/tests/level1/html/files/tablerow.html
new file mode 100644
index 0000000..9e76a4c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablerow.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/tablerow.xhtml b/test/testcases/tests/level1/html/files/tablerow.xhtml
new file mode 100644
index 0000000..b901e3c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablerow.xhtml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLE</title>
+</head>
+<body onload="parent.loadComplete()">
+<table align="center" summary="Table 1">
+<tr>
+<th>Id</th>
+<th>Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+</table>
+<table id="table-1" align="center" border="4" bgcolor="#ff0000" frame="border" cellpadding="2" cellspacing="2" summary="HTML Control Table" rules="all" width="680">
+<caption align="top">Table Caption</caption>
+<thead align="center" valign="middle">
+<tr align="center" bgcolor="#00FFFF" valign="middle" char="*" charoff="1">
+<th id="header-1">Employee Id</th>
+<th id="header-2" abbr="maiden" axis="center" align="center" bgcolor="#00FFFF" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-1" valign="middle" width="100">Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+<th>Gender</th>
+<th>Address</th>
+</tr>
+</thead>
+<tfoot align="center" valign="middle">
+<tr>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+</tr>
+</tfoot>
+<tbody align="center" valign="middle">
+<tr>
+<td axis="center" id="Table-3" abbr="maiden2" align="center" bgcolor="#FF0000" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-2" valign="middle" width="175">EMP0001</td>
+<td headers="header-2">Margaret Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+<td>Female</td>
+<td>1230 North Ave. Dallas, Texas 98551</td>
+</tr>
+<tr>
+<td>EMP0002</td>
+<td>Martha Raynolds</td>
+<td>Secretary</td>
+<td>35,000</td>
+<td>Female</td>
+<td>1900 Dallas Road Dallas, Texas 98554</td>
+</tr>
+</tbody>
+</table>
+</body>
+</html>
+
+
diff --git a/test/testcases/tests/level1/html/files/tablerow.xml b/test/testcases/tests/level1/html/files/tablerow.xml
new file mode 100644
index 0000000..b901e3c
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablerow.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLE</title>
+</head>
+<body onload="parent.loadComplete()">
+<table align="center" summary="Table 1">
+<tr>
+<th>Id</th>
+<th>Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+</table>
+<table id="table-1" align="center" border="4" bgcolor="#ff0000" frame="border" cellpadding="2" cellspacing="2" summary="HTML Control Table" rules="all" width="680">
+<caption align="top">Table Caption</caption>
+<thead align="center" valign="middle">
+<tr align="center" bgcolor="#00FFFF" valign="middle" char="*" charoff="1">
+<th id="header-1">Employee Id</th>
+<th id="header-2" abbr="maiden" axis="center" align="center" bgcolor="#00FFFF" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-1" valign="middle" width="100">Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+<th>Gender</th>
+<th>Address</th>
+</tr>
+</thead>
+<tfoot align="center" valign="middle">
+<tr>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+</tr>
+</tfoot>
+<tbody align="center" valign="middle">
+<tr>
+<td axis="center" id="Table-3" abbr="maiden2" align="center" bgcolor="#FF0000" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-2" valign="middle" width="175">EMP0001</td>
+<td headers="header-2">Margaret Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+<td>Female</td>
+<td>1230 North Ave. Dallas, Texas 98551</td>
+</tr>
+<tr>
+<td>EMP0002</td>
+<td>Martha Raynolds</td>
+<td>Secretary</td>
+<td>35,000</td>
+<td>Female</td>
+<td>1900 Dallas Road Dallas, Texas 98554</td>
+</tr>
+</tbody>
+</table>
+</body>
+</html>
+
+
diff --git a/test/testcases/tests/level1/html/files/tablesection.html b/test/testcases/tests/level1/html/files/tablesection.html
new file mode 100644
index 0000000..0c1a5f7
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablesection.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/test/testcases/tests/level1/html/files/tablesection.xhtml b/test/testcases/tests/level1/html/files/tablesection.xhtml
new file mode 100644
index 0000000..3498650
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablesection.xhtml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLESECTION</title>
+</head>
+<body onload="parent.loadComplete()">
+<table align="center" summary="Table 1">
+<tbody>
+<tr>
+<th>Id</th>
+<th>Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+</tbody>
+</table>
+<table id="table-1" align="center" border="4" bgcolor="#ff0000" frame="border" cellpadding="2" cellspacing="2" summary="HTML Control Table" rules="all" width="680">
+<caption align="top">Table Caption</caption>
+<thead align="center" valign="middle" char="*" charoff="1">
+<tr align="center" bgcolor="#00FFFF" valign="middle" char="*" charoff="1">
+<th id="header-1">Employee Id</th>
+<th id="header-2" abbr="maiden" axis="center" align="center" bgcolor="#00FFFF" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-1" valign="middle" width="100">Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+<th>Gender</th>
+<th>Address</th>
+</tr>
+</thead>
+<tfoot align="center" valign="middle" char="+" charoff="2">
+<tr>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+</tr>
+</tfoot>
+<tbody align="center" valign="middle" char="$" charoff="3">
+<tr>
+<td axis="center" id="Table-3" abbr="maiden2" align="center" bgcolor="#FF0000" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-2" valign="middle" width="175">EMP0001</td>
+<td headers="header-2">Margaret Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+<td>Female</td>
+<td>1230 North Ave. Dallas, Texas 98551</td>
+</tr>
+<tr>
+<td>EMP0002</td>
+<td>Martha Raynolds</td>
+<td>Secretary</td>
+<td>35,000</td>
+<td>Female</td>
+<td>1900 Dallas Road Dallas, Texas 98554</td>
+</tr>
+</tbody>
+</table>
+</body>
+</html>
+
+
+
diff --git a/test/testcases/tests/level1/html/files/tablesection.xml b/test/testcases/tests/level1/html/files/tablesection.xml
new file mode 100644
index 0000000..3498650
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/tablesection.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TABLESECTION</title>
+</head>
+<body onload="parent.loadComplete()">
+<table align="center" summary="Table 1">
+<tbody>
+<tr>
+<th>Id</th>
+<th>Name</th>
+<th>Position</th>
+<th>Salary</th>
+</tr>
+</tbody>
+</table>
+<table id="table-1" align="center" border="4" bgcolor="#ff0000" frame="border" cellpadding="2" cellspacing="2" summary="HTML Control Table" rules="all" width="680">
+<caption align="top">Table Caption</caption>
+<thead align="center" valign="middle" char="*" charoff="1">
+<tr align="center" bgcolor="#00FFFF" valign="middle" char="*" charoff="1">
+<th id="header-1">Employee Id</th>
+<th id="header-2" abbr="maiden" axis="center" align="center" bgcolor="#00FFFF" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-1" valign="middle" width="100">Employee Name</th>
+<th>Position</th>
+<th>Salary</th>
+<th>Gender</th>
+<th>Address</th>
+</tr>
+</thead>
+<tfoot align="center" valign="middle" char="+" charoff="2">
+<tr>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+<th>next page ...</th>
+</tr>
+</tfoot>
+<tbody align="center" valign="middle" char="$" charoff="3">
+<tr>
+<td axis="center" id="Table-3" abbr="maiden2" align="center" bgcolor="#FF0000" colspan="1" height="50" nowrap="nowrap" rowspan="1" scope="col" headers="header-2" valign="middle" width="175">EMP0001</td>
+<td headers="header-2">Margaret Martin</td>
+<td>Accountant</td>
+<td>56,000</td>
+<td>Female</td>
+<td>1230 North Ave. Dallas, Texas 98551</td>
+</tr>
+<tr>
+<td>EMP0002</td>
+<td>Martha Raynolds</td>
+<td>Secretary</td>
+<td>35,000</td>
+<td>Female</td>
+<td>1900 Dallas Road Dallas, Texas 98554</td>
+</tr>
+</tbody>
+</table>
+</body>
+</html>
+
+
+
diff --git a/test/testcases/tests/level1/html/files/textarea.html b/test/testcases/tests/level1/html/files/textarea.html
new file mode 100644
index 0000000..b9aedc4
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/textarea.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/test/testcases/tests/level1/html/files/textarea.xhtml b/test/testcases/tests/level1/html/files/textarea.xhtml
new file mode 100644
index 0000000..eb6ca48
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/textarea.xhtml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TEXTAREA</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<textarea name="text1" cols="20" rows="7" accesskey="c" tabindex="5">TEXTAREA1</textarea>
+<input type="submit" name="submit1" value="Submit1"/>
+<input type="reset" name="reset1" value="Reset1"/>
+</p>
+</form>
+<p>
+<textarea name="text2" cols="50" rows="2" disabled="disabled">TEXTAREA2</textarea>
+<input type="submit" name="submit2" value="Submit2"/>
+<input type="reset" name="reset2" value="Reset2"/>
+<textarea name="text2" cols="50" rows="2" readonly="readonly">TEXTAREA3</textarea>
+<input type="submit" name="submit3" value="Submit3"/>
+<input type="reset" name="reset3" value="Reset3"/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/textarea.xml b/test/testcases/tests/level1/html/files/textarea.xml
new file mode 100644
index 0000000..eb6ca48
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/textarea.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TEXTAREA</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<textarea name="text1" cols="20" rows="7" accesskey="c" tabindex="5">TEXTAREA1</textarea>
+<input type="submit" name="submit1" value="Submit1"/>
+<input type="reset" name="reset1" value="Reset1"/>
+</p>
+</form>
+<p>
+<textarea name="text2" cols="50" rows="2" disabled="disabled">TEXTAREA2</textarea>
+<input type="submit" name="submit2" value="Submit2"/>
+<input type="reset" name="reset2" value="Reset2"/>
+<textarea name="text2" cols="50" rows="2" readonly="readonly">TEXTAREA3</textarea>
+<input type="submit" name="submit3" value="Submit3"/>
+<input type="reset" name="reset3" value="Reset3"/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/title.html b/test/testcases/tests/level1/html/files/title.html
new file mode 100644
index 0000000..2078ee9
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/title.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TITLE</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<P>
+<BR/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/title.xhtml b/test/testcases/tests/level1/html/files/title.xhtml
new file mode 100644
index 0000000..e8ec6b5
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/title.xhtml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TITLE</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<br/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/title.xml b/test/testcases/tests/level1/html/files/title.xml
new file mode 100644
index 0000000..e8ec6b5
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/title.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - TITLE</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>
+<br/>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/ulist.html b/test/testcases/tests/level1/html/files/ulist.html
new file mode 100644
index 0000000..75498e2
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/ulist.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - ULIST</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<OL>
+<LI>EMP0001
+<UL COMPACT="compact" TYPE="disc">
+<LI>Margaret Martin
+<DL>
+<DD>Accountant</DD>
+<DD>56,000</DD>
+<DD>Female</DD>
+<DD>1230 North Ave. Dallas, Texas 98551</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+<LI>EMP0002
+<UL>
+<LI>Martha Raynolds
+<DL>
+<DD>Secretary</DD>
+<DD>35,000</DD>
+<DD>Female</DD>
+<DD>1900 Dallas Road. Dallas, Texas 98554</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+</OL>
+</BODY>
+</HTML>
+
diff --git a/test/testcases/tests/level1/html/files/ulist.xhtml b/test/testcases/tests/level1/html/files/ulist.xhtml
new file mode 100644
index 0000000..fd9d7a5
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/ulist.xhtml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - ULIST</title>
+</head>
+<body onload="parent.loadComplete()">
+<ol>
+<li>EMP0001
+<ul compact="compact" type="disc">
+<li>Margaret Martin
+<dl>
+<dd>Accountant</dd>
+<dd>56,000</dd>
+<dd>Female</dd>
+<dd>1230 North Ave. Dallas, Texas 98551</dd>
+</dl>
+</li>
+</ul>
+</li>
+<li>EMP0002
+<ul>
+<li>Martha Raynolds
+<dl>
+<dd>Secretary</dd>
+<dd>35,000</dd>
+<dd>Female</dd>
+<dd>1900 Dallas Road. Dallas, Texas 98554</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ol>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/ulist.xml b/test/testcases/tests/level1/html/files/ulist.xml
new file mode 100644
index 0000000..fd9d7a5
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/ulist.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - ULIST</title>
+</head>
+<body onload="parent.loadComplete()">
+<ol>
+<li>EMP0001
+<ul compact="compact" type="disc">
+<li>Margaret Martin
+<dl>
+<dd>Accountant</dd>
+<dd>56,000</dd>
+<dd>Female</dd>
+<dd>1230 North Ave. Dallas, Texas 98551</dd>
+</dl>
+</li>
+</ul>
+</li>
+<li>EMP0002
+<ul>
+<li>Martha Raynolds
+<dl>
+<dd>Secretary</dd>
+<dd>35,000</dd>
+<dd>Female</dd>
+<dd>1900 Dallas Road. Dallas, Texas 98554</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ol>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level1/html/files/w3c_main.png b/test/testcases/tests/level1/html/files/w3c_main.png
new file mode 100644
index 0000000..ac0ecd3
--- /dev/null
+++ b/test/testcases/tests/level1/html/files/w3c_main.png
Binary files differ
diff --git a/test/testcases/tests/level1/html/hasFeature01.xml b/test/testcases/tests/level1/html/hasFeature01.xml
new file mode 100644
index 0000000..5ac8b93
--- /dev/null
+++ b/test/testcases/tests/level1/html/hasFeature01.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom1.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="hasFeature01">
+<metadata>
+<title>hasFeature01</title>
+<creator>Curt Arnold</creator>
+<description>
+hasFeature("hTmL", null) should return true.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="version" type="DOMString" isNull="true"/>
+<var name="state" type="boolean"/>
+<implementation var="domImpl"/>
+<hasFeature obj="domImpl" var="state" feature='"hTmL"' version="version"/>
+<assertTrue actual="state" id="hasHTMLnull"/>
+</test>
diff --git a/test/testcases/tests/level1/html/index.htm b/test/testcases/tests/level1/html/index.htm
new file mode 100644
index 0000000..9349596
--- /dev/null
+++ b/test/testcases/tests/level1/html/index.htm
@@ -0,0 +1,240 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html
+xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html;
+charset=us-ascii" />
+<title>Document Object Model (DOM) Conformance Test
+ Suites, Level 1 HTML</title>
+<link type="text/css" rel="stylesheet" href="resources/activity-home.css" />
+<script type="text/javascript"
+src="resources/toc.js">
+</script>
+</head>
+
+
+<body onload="init()">
+<p class="navbar" align="right"><a href="http://www.w3.org/"><img
+align="left" src="resources/w3c_home.png" border="0"
+alt="W3C" /></a><a href="http://www.nist.gov/"><img
+src="resources/nist_home.gif" alt="National Institute of
+Standards and Technology" height="45" width="231" align="left"
+border="0" /></a><small><a href="http://www.w3.org/DOM/">About
+DOM</a> .
+<a href="http://www.w3.org/DOM/Activity">DOM Activity statement</a><br />
+<a href="http://www.w3.org/DOM/DOMTR">Technical Reports</a> . <a
+href="http://www.w3.org/DOM/DOMTM">Technical
+Materials</a><br />
+<a href="http://www.w3.org/DOM/Test/">Test Suites</a> . <a
+href="http://www.w3.org/DOM/Test/Documents/DOMTSFAQ">Test Suites FAQ</a> .
+<a href="http://www.w3.org/DOM/Test/MailingList">Mailing
+Lists</a><br />
+Members only resource: <a href="http://www.w3.org/DOM/Group/">DOM Working
+Group</a></small></p>
+
+<h1>DOM Conformance Test Suite, Level 1 HTML</h1>
+
+<div id="thisdoc">
+<h2>This document</h2>
+</div>
+
+<p>
+This document describes how to run the DOM Level 1 HTML Test Suite. It also includes pointers to relevant software as well as relevant resources.
+</p>
+<p>The DOM TS has been developed in accordance with the <a
+href="http://www.w3.org/DOM/DOMTS-Process">DOM Conformance Test Suites Process Document</a>. For
+additional information and to download other DOM Test Suites, visit the <a
+href="http://www.w3.org/DOM/Test">DOM Conformance Test Suites page</a>.</p>
+
+<div id="overview">
+<h2>Overview</h2>
+</div>
+
+<p>
+The DOM Conformance Test Suite consist of a series of tests that have been generated from XML test descriptions, then transformed into the two official DOM
+bindings, Java and ECMA. In order to run the test suite, we have provided the possibility to run the
+tests using the <a href="http://www.junit.org">JUnit</a> and <a href="http://www.jsunit.net">JsUnit</a> testing frameworks, both included in this
+distribution.
+</p>
+<p>The DOM Level 1 HTML TS was released on February 13, 2002.</p>
+
+<div id="latestVersion">
+<h2>Latest Version</h2>
+</div>
+<p>Download the <a
+href="http://www.w3.org/DOM/Test/Downloads/DOMTSL1HTML">latest version</a>
+of the DOM Level 1 HTML Test Suite.</p>
+
+<div id="distribution">
+<h2>Distribution</h2>
+</div>
+<p>This distribution is organized as follows:</p>
+<table width="100%" border="0">
+<tr>
+ <td width="20%">index.html</td><td>This file</td>
+</tr>
+<tr>
+ <td><a href="dom1-html-matrix.html">dom1-html-matrix.html</a></td>
+ <td>A cross reference of the tests to the DOM 1 HTML Recommendation, pointers to the tests and documentation.</td>
+</tr>
+<tr>
+ <td><a href="ecmascript/jsunit/testRunner.html">ecmascript/jsunit/testRunner.html</a></td>
+ <td>A modified <a href="http://www.jsunit.net">JSUnit</a> test runner. JSUnit is licensed under the <a href="ecmascript/jsunit/docs/gnugpl.html">GNU Public License</a></td>
+</tr>
+<tr>
+ <td>ecmascript/jsunit/app, ecmascript/jsunit/docs, ecmascript/jsunit/images, ecmascript/jsunit/tests</td>
+ <td>JSUnit support files</td>
+</tr>
+<tr>
+ <td>ecmascript/level1/html</td>
+ <td>DOM tests for use with JSUnit</td>
+</tr>
+<tr>
+ <td>java/dom1-html.jar</td>
+ <td>DOM tests for Java implementations, includes source code.</td>
+</tr>
+<tr>
+ <td>java/junit-run.jar</td>
+ <td>A test framework adapter that supports running dom1-html.jar with the JUnit 3.7 test framework.</td>
+</tr>
+<tr>
+ <td>java/junit.jar</td>
+ <td><a href="http://www.junit.org">JUnit 3.7</a>. JUnit 3.7 is licensed under the <a href="java/junit-license.html">IBM Public License</a>.</td>
+</tr>
+<tr>
+ <td>tests/*.xml</td>
+ <td>Test definitions in XML.</td>
+</tr>
+<tr>
+ <td><a href="tests/dom1.dtd">tests/dom1.dtd</a></td>
+ <td>Document Type Definition for DOM 1 HTML tests.</td>
+</tr>
+<tr>
+ <td><a href="tests/dom1.xsd">tests/dom1.xsd</a></td>
+ <td>XML Schema for DOM 1 HTML tests.</td>
+</tr>
+<tr>
+ <td>tests/files/</td>
+ <td>Test documents</td>
+</tr>
+<tr>
+ <td>doxygen/</td>
+ <td>Documentation generated by <a href="http://www.doxygen.org">doxygen</a> from the generated Java code. Useful in diagnosing test failures.
+ Click <a href="doxygen/html/hierarchy.html">here</a> for a class hierarchy.</td>
+</tr>
+</table>
+
+<div id="runningECMA">
+<h2>Running the ECMAScript tests</h2>
+</div>
+<p>The DOM TS currently tests XML and SVG implementations of DOM Level 1 HTML. Later revisions will provide testing of HTML implementation conformance with DOM Level
+1.</p>
+<p>To run the ECMAScript tests, open the <a
+href="ecmascript/jsunit/testRunner.html">JsUnit test runner</a> in the browser
+you want to test, press the browse button and look for the file
+"ecmascript/level1/html/alltests.html".
+After that, press Run to run all DOM 1 tests compatible
+with the implementation. If you choose to run individual tests, the
+above procedure works similarly, just browse for the test you want to
+run in the "ecmascript/level1/html" directory.</p>
+<p>These tests have been run with Microsoft
+Internet Explorer 5.0 and later for Microsoft Windows and
+Mozilla 0.9.8 and Netscape Navigator 6.2 and later for Microsoft Windows, Linux and Apple OS X.
+Use on Apple OS X required replacing colon (:) in the test case name with slashes (/).</p>
+<p>To test the DOM implementation of the <a href="http://www.adobe.com/svg">Adobe SVG Viewer</a>, select
+"ecmascript/level1/html/svg-alltests.html" and press Run.</p>
+<p>For JsUnit reference, please visit the <a href="http://www.jsunit.net">JsUnit
+home page</a>. JsUnit will provide output with indication on how many tests that were run, how many failed and
+how many errors were found while running. The error log points to the actual test, so identifying
+what you need to do in your implementation is simplified.</p>
+
+<div id="runningJava">
+<h2>Running the Java tests</h2>
+</div>
+<p>Running the Java tests will require placing a JAXP 1.1 compatible parser on the classpath or
+placing a common JAXP 1.1 parser (<a href="http://xml.apache.org/crimson/index.html">Apache Xerces</a>, <a href="http://xml.apache.org/crimson/index.html">Apache Crimson</a>, <a href="http://otn.oracle.com/software/tech/xml/xdk_java/content.html">Oracle XML Developer Kit</a>, or <a href="http://www.gnu.org/software/classpathx/jaxp/">GNUJAXP</a>) in the java/ directory.</p>
+<p>Running "java -jar dom1-html.jar" from the java/ directory will write to the console a summary of the parser under
+test and the results of the tests run in two distinct configurations. The parser under test can
+be selected by any mechanism supported by JAXP 1.1.</p>
+
+<p>The Java tests may also be run using from JUnit TestRunner's. To run
+all tests against the default JAXP parser in a default configuration from the JUnit text user interface, run "
+java -classpath dom1-html.jar junit.textui.TestRunner org.w3c.domts.level1.html.TestDefaultParser".
+The run the Swing or AWT user interfaces, replace "textui" with "swingui" or "awtui" and add "-noloading" before the
+test case to not use JUnit's custom ClassLoader, for example, "java -classpath dom1-html.jar
+junit.swingui.TestRunner -noloading org.w3c.domts.level1.html.TestDefaultParser"</p>
+
+<p>Running "java -jar junit-run.jar" will launch the JUnit SwingUI without the custom ClassLoader.</p>
+
+<p>The following TestSuite's are provided for use within JUnit TestRunner's. These provide
+the only mechanism for testing implementations that do not support JAXP 1.1 such as Batik or
+DOM4J.</p>
+<table border="0" width="100%">
+<tr><td width="20%">org.w3c.domts.level1.html.TestBatik</td><td>Tests the <a href="http://xml.apache.org/batik">Apache Batik</a> SVG project (currently fails loading test documents).</td></tr>
+<tr><td>org.w3c.domts.level1.html.TestCrimson</td><td>Tests the Apache Crimson Parser in the default configuration.</td></tr>
+<tr><td>org.w3c.domts.level1.html.TestCrimsonAltConfig</td><td>Tests the Apache Crimson Parser in an alternative configuration.</td></tr>
+<tr><td>org.w3c.domts.level1.html.TestDefaultParser</td><td>Tests the current JAXP 1.1 Parser in the default configuration.</td></tr>
+<tr><td>org.w3c.domts.level1.html.TestDefaultParserAltConfig</td><td>Tests the current JAXP 1.1 Parser in an alternative configuration.</td></tr>
+<tr><td>org.w3c.domts.level1.html.TestDOM4J</td><td>Tests <a href="http://www.dom4j.org">DOM4J</a>.</td></tr>
+<tr><td>org.w3c.domts.level1.html.TestGNUJAXP</td><td>Tests the GNUJAXP Parser in the default configuration.</td></tr>
+<tr><td>org.w3c.domts.level1.html.TestGNUJAXPAltConfig</td><td>Tests the GNUJAXP Parser in an alternative configuration.</td></tr>
+<tr><td>org.w3c.domts.level1.html.TestOracle</td><td>Tests the Oracle XML Parser in the default configuration.</td></tr>
+<tr><td>org.w3c.domts.level1.html.TestOracleAltConfig</td><td>Tests the Oracle XML Parser in an alternative configuration.</td></tr>
+<tr><td>org.w3c.domts.level1.html.TestXerces</td><td>Tests the Apache Xerces Parser in the default configuration.</td></tr>
+<tr><td>org.w3c.domts.level1.html.TestXercesAltConfig</td><td>Tests the Apache Xerces Parser in an alternative configuration.</td></tr>
+</table>
+
+
+
+<div id="feedback">
+<h2>Feedback</h2>
+</div>
+<p>We look forward to your comments. The DOM TS Group communicates primarily through the <a href="mailto:www-dom-ts@w3.org">DOM TS mailing list</a> (<a
+href="http://lists.w3.org/Archives/Public/www-dom-ts/">archive</a>).</p>
+
+
+<div id="copyright">
+<h2>Copyright</h2>
+</div>
+<p>Tests in this table are released under the <a
+href="http://www.w3.org/Consortium/Legal/copyright-software-19980720.html">W3C
+Software Copyright Notice and license</a>:<br /><a
+href="resources/COPYRIGHT.html">Copyright</a> (c)
+2002 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.<br />See W3C License <a href="http://www.w3.org/Consortium/Legal/">http://www.w3.org/Consortium/Legal/</a> for more
+details.</p>
+
+
+
+<div id="Acknowledgments">
+<h2>Acknowledgments</h2>
+</div>
+
+<p>The DOM TS was jointly launched by the <a href="www.w3.org">W3C</a> and <a
+href="www.nist.org">NIST</a>. It is, however, a publically developed and open
+framework. Reaching the point of being able to finalize and release the DOM
+TS would not have been possible were it not for the contribution from several
+people in the developer community, especially <a
+href="mailto:Curt.Arnold@hyprotech.com">Curt Arnold</a> and <a
+href="mailto:fdrake@acm.org">Fred Drake</a>.</p>
+<hr />
+<address>
+<small><a href="mailto:mary.brady@nist.gov">Mary Brady</a>, <a
+href="http://www.nist.gov">NIST</a> representative<br />
+<a href="mailto:dimitris@ontologicon.com">Dimitris Dimitriadis</a>, DOM TS
+ Representative for the <a href="Group/">W3C DOM Working Group</a> <br />
+<a href="/People/LeHegaret/">Philippe Le&nbsp;H&eacute;garet</a>, DOM
+ Activity Lead<br />
+</small>
+</address>
+</body>
+</html>
+
+
diff --git a/test/testcases/tests/level1/html/metadata.xml b/test/testcases/tests/level1/html/metadata.xml
new file mode 100644
index 0000000..6826b5c
--- /dev/null
+++ b/test/testcases/tests/level1/html/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 metadata SYSTEM "dom1.dtd">
+
+<metadata xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1">
+</metadata>
diff --git a/test/testcases/tests/level1/html/object01.xml b/test/testcases/tests/level1/html/object01.xml
new file mode 100644
index 0000000..52e053c
--- /dev/null
+++ b/test/testcases/tests/level1/html/object01.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object01">
+<metadata>
+<title>object01</title>
+<creator>Netscape</creator>
+<description>
+Returns the FORM element containing this control. Returns null if this control is not within the context of a form.
+The value of attribute form of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46094773"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="HTMLFormElement" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<form interface="HTMLObjectElement" obj="testNode" var="vform"/>
+<assertNull actual="vform" id="formLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object02.xml b/test/testcases/tests/level1/html/object02.xml
new file mode 100644
index 0000000..fc3c215
--- /dev/null
+++ b/test/testcases/tests/level1/html/object02.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object02">
+<metadata>
+<title>object02</title>
+<creator>Netscape</creator>
+<description>
+Aligns this object (vertically or horizontally) with respect to its surrounding text.
+The value of attribute align of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16962097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLObjectElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"middle"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object03.xml b/test/testcases/tests/level1/html/object03.xml
new file mode 100644
index 0000000..e2591ad
--- /dev/null
+++ b/test/testcases/tests/level1/html/object03.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object03">
+<metadata>
+<title>object03</title>
+<creator>Netscape</creator>
+<description>
+Space-separated list of archives
+The value of attribute archive of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47783837"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="varchive" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<archive interface="HTMLObjectElement" obj="testNode" var="varchive"/>
+<assertEquals actual="varchive" expected='""' id="archiveLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object04.xml b/test/testcases/tests/level1/html/object04.xml
new file mode 100644
index 0000000..33a99a5
--- /dev/null
+++ b/test/testcases/tests/level1/html/object04.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object04">
+<metadata>
+<title>object04</title>
+<creator>Netscape</creator>
+<description>
+Width of border around the object.
+The value of attribute border of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82818419"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vborder" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<border interface="HTMLObjectElement" obj="testNode" var="vborder"/>
+<assertEquals actual="vborder" expected='"0"' id="borderLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object05.xml b/test/testcases/tests/level1/html/object05.xml
new file mode 100644
index 0000000..93e2967
--- /dev/null
+++ b/test/testcases/tests/level1/html/object05.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object05">
+<metadata>
+<title>object05</title>
+<creator>Netscape</creator>
+<description>
+Base URI for classid, data, and archive attributes.
+The value of attribute codebase of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25709136"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcodebase" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<codeBase interface="HTMLObjectElement" obj="testNode" var="vcodebase"/>
+<assertEquals actual="vcodebase" expected='"http://xw2k.sdct.itl.nist.gov/brady/dom/"' id="codebaseLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object06.xml b/test/testcases/tests/level1/html/object06.xml
new file mode 100644
index 0000000..6f9e613
--- /dev/null
+++ b/test/testcases/tests/level1/html/object06.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object06">
+<metadata>
+<title>object06</title>
+<creator>Netscape</creator>
+<description>
+A URI specifying the location of the object's data.
+The value of attribute data of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-81766986"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdata" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<data interface="HTMLObjectElement" obj="testNode" var="vdata"/>
+<assertEquals actual="vdata" expected='"./pix/logo.gif"' id="dataLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object07.xml b/test/testcases/tests/level1/html/object07.xml
new file mode 100644
index 0000000..aff1fcc
--- /dev/null
+++ b/test/testcases/tests/level1/html/object07.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object07">
+<metadata>
+<title>object07</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute height of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88925838"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheight" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<height interface="HTMLObjectElement" obj="testNode" var="vheight"/>
+<assertEquals actual="vheight" expected='"60"' id="heightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object08.xml b/test/testcases/tests/level1/html/object08.xml
new file mode 100644
index 0000000..f9f9055
--- /dev/null
+++ b/test/testcases/tests/level1/html/object08.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object08">
+<metadata>
+<title>object08</title>
+<creator>Netscape</creator>
+<description>
+Horizontal space to the left and right of this image, applet, or object.
+The value of attribute hspace of the object element is read and checked against the expected value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-17085376"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhspace" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="object" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<hspace interface="HTMLObjectElement" obj="testNode" var="vhspace"/>
+<assertEquals actual="vhspace" expected='"0"' id="hspaceLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/object09.xml b/test/testcases/tests/level1/html/object09.xml
new file mode 100644
index 0000000..4b9d336
--- /dev/null
+++ b/test/testcases/tests/level1/html/object09.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object09">
+<metadata>
+<title>object09</title>
+<creator>Netscape</creator>
+<description>
+Message to render while loading the object.
+The value of attribute standby of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25039673"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vstandby" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<standby interface="HTMLObjectElement" obj="testNode" var="vstandby"/>
+<assertEquals actual="vstandby" expected='"Loading Image ..."' id="standbyLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object10.xml b/test/testcases/tests/level1/html/object10.xml
new file mode 100644
index 0000000..7dd5741
--- /dev/null
+++ b/test/testcases/tests/level1/html/object10.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object10">
+<metadata>
+<title>object10</title>
+<creator>Netscape</creator>
+<description>
+Index that represents the element's position in the tabbing order.
+The value of attribute tabIndex of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27083787"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtabindex" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<tabIndex interface="HTMLObjectElement" obj="testNode" var="vtabindex"/>
+<assertEquals actual="vtabindex" expected="0" id="tabIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object11.xml b/test/testcases/tests/level1/html/object11.xml
new file mode 100644
index 0000000..332ca50
--- /dev/null
+++ b/test/testcases/tests/level1/html/object11.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object11">
+<metadata>
+<title>object11</title>
+<creator>Netscape</creator>
+<description>
+Content type for data downloaded via data attribute.
+The value of attribute type of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91665621"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<type interface="HTMLObjectElement" obj="testNode" var="vtype"/>
+<assertEquals actual="vtype" expected='"image/gif"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object12.xml b/test/testcases/tests/level1/html/object12.xml
new file mode 100644
index 0000000..4af4455
--- /dev/null
+++ b/test/testcases/tests/level1/html/object12.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object12">
+<metadata>
+<title>object12</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute usemap of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6649772"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vusemap" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<useMap interface="HTMLObjectElement" obj="testNode" var="vusemap"/>
+<assertEquals actual="vusemap" expected='"#DivLogo-map"' id="useMapLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object13.xml b/test/testcases/tests/level1/html/object13.xml
new file mode 100644
index 0000000..7782e4e
--- /dev/null
+++ b/test/testcases/tests/level1/html/object13.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object13">
+<metadata>
+<title>object13</title>
+<creator>Netscape</creator>
+<description>
+Vertical space above and below this image, applet, or object.
+The value of attribute vspace of the object element is read and checked against the expected value.
+
+ This test is incompatible with L2 HTML implementations due to a change in the type of the attribute.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8682483"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=504"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvspace" type="DOMString" />
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasHTML2" type="boolean"/>
+<load var="doc" href="object" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<hasFeature var="hasHTML2" obj="domImpl" feature='"HTML"' version='"2.0"'/>
+<if><isFalse value="hasHTML2"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vspace interface="HTMLObjectElement" obj="testNode" var="vvspace"/>
+<assertEquals actual="vvspace" expected='"0"' id="vspaceLink" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/object14.xml b/test/testcases/tests/level1/html/object14.xml
new file mode 100644
index 0000000..0a8fce5
--- /dev/null
+++ b/test/testcases/tests/level1/html/object14.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object14">
+<metadata>
+<title>object14</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute width of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-38538620"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<width interface="HTMLObjectElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"550"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/object15.xml b/test/testcases/tests/level1/html/object15.xml
new file mode 100644
index 0000000..37182c0
--- /dev/null
+++ b/test/testcases/tests/level1/html/object15.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="object15">
+<metadata>
+<title>object15</title>
+<creator>Netscape</creator>
+<description>
+Content type for data downloaded via classid attribute.
+The value of attribute codetype of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19945008"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcodetype" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<codeType interface="HTMLObjectElement" obj="testNode" var="vcodetype"/>
+<assertEquals actual="vcodetype" expected='"image/gif"' id="codeTypeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table01.xml b/test/testcases/tests/level1/html/table01.xml
new file mode 100644
index 0000000..4cee6f7
--- /dev/null
+++ b/test/testcases/tests/level1/html/table01.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table01">
+<metadata>
+<title>table01</title>
+<creator>Netscape</creator>
+<description>
+Returns the table's CAPTION, or void if none exists.
+The value of attribute caption of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcaption" type="Node"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="table1" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<caption interface="HTMLTableElement" obj="testNode" var="vcaption"/>
+<assertNull actual="vcaption" id="captionLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table02.xml b/test/testcases/tests/level1/html/table02.xml
new file mode 100644
index 0000000..2433751
--- /dev/null
+++ b/test/testcases/tests/level1/html/table02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table02">
+<metadata>
+<title>table02</title>
+<creator>Netscape</creator>
+<description>
+Caption alignment with respect to the table.
+The value of attribute align of the tablecaption element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcaption" type="HTMLTableCaptionElement" />
+<var name="valign" type="DOMString"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<caption interface="HTMLTableElement" obj="testNode" var="vcaption"/>
+<align interface="HTMLTableCaptionElement" obj="vcaption" var="valign"/>
+<assertEquals actual="valign" expected='"top"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table03.xml b/test/testcases/tests/level1/html/table03.xml
new file mode 100644
index 0000000..b8c3ef6
--- /dev/null
+++ b/test/testcases/tests/level1/html/table03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table03">
+<metadata>
+<title>table03</title>
+<creator>Netscape</creator>
+<description>
+Alignment character for cells in a column.
+The value of attribute ch of the tablesection element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="vch" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<ch interface="HTMLTableSectionElement" obj="vsection" var="vch"/>
+<assertEquals actual="vch" expected='"*"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table04.xml b/test/testcases/tests/level1/html/table04.xml
new file mode 100644
index 0000000..2d4fcf8
--- /dev/null
+++ b/test/testcases/tests/level1/html/table04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table04">
+<metadata>
+<title>table04</title>
+<creator>Netscape</creator>
+<description>
+Horizontal alignment of data in cells.
+The value of attribute align of the tablesection element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="valign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<align interface="HTMLTableSectionElement" obj="vsection" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table06.xml b/test/testcases/tests/level1/html/table06.xml
new file mode 100644
index 0000000..3d461f6
--- /dev/null
+++ b/test/testcases/tests/level1/html/table06.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table06">
+<metadata>
+<title>table06</title>
+<creator>Netscape</creator>
+<description>
+Vertical alignment of data in cells.
+The value of attribute valign of the tablesection element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="vvAlign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<vAlign interface="HTMLTableSectionElement" obj="vsection" var="vvAlign"/>
+<assertEquals actual="vvAlign" expected='"middle"' id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table07.xml b/test/testcases/tests/level1/html/table07.xml
new file mode 100644
index 0000000..4a04d77
--- /dev/null
+++ b/test/testcases/tests/level1/html/table07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table07">
+<metadata>
+<title>table07</title>
+<creator>Netscape</creator>
+<description>
+The collection of rows in this table section.
+The value of attribute rows of the tablesection element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="vcollection" type="HTMLCollection" />
+<var name="vrows" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<rows interface="HTMLTableSectionElement" obj="vsection" var="vcollection"/>
+<length interface="HTMLCollection" obj="vcollection" var="vrows" />
+<assertEquals actual="vrows" expected="1" id="vrowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table08.xml b/test/testcases/tests/level1/html/table08.xml
new file mode 100644
index 0000000..ea77b80
--- /dev/null
+++ b/test/testcases/tests/level1/html/table08.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table08">
+<metadata>
+<title>table08</title>
+<creator>Netscape</creator>
+<description>
+Horizontal alignment of data in cells.
+The value of attribute align of the tablesection element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="valign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<align interface="HTMLTableSectionElement" obj="vsection" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table09.xml b/test/testcases/tests/level1/html/table09.xml
new file mode 100644
index 0000000..fcb9018
--- /dev/null
+++ b/test/testcases/tests/level1/html/table09.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table09">
+<metadata>
+<title>table09</title>
+<creator>Netscape</creator>
+<description>
+Vertical alignment of data in cells.
+The value of attribute valign of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<vAlign interface="HTMLTableSectionElement" obj="vsection" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table10.xml b/test/testcases/tests/level1/html/table10.xml
new file mode 100644
index 0000000..aa05594
--- /dev/null
+++ b/test/testcases/tests/level1/html/table10.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table10">
+<metadata>
+<title>table10</title>
+<creator>Netscape</creator>
+<description>
+Alignment character for cells in a column.
+The value of attribute ch of the tablesection element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="vch" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<ch interface="HTMLTableSectionElement" obj="vsection" var="vch"/>
+<assertEquals actual="vch" expected='"+"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table12.xml b/test/testcases/tests/level1/html/table12.xml
new file mode 100644
index 0000000..93e475b
--- /dev/null
+++ b/test/testcases/tests/level1/html/table12.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table12">
+<metadata>
+<title>table12</title>
+<creator>Netscape</creator>
+<description>
+Offset of alignment character.
+The value of attribute choff of the tablesection element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="vchoff" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<chOff interface="HTMLTableSectionElement" obj="vsection" var="vchoff"/>
+<assertEquals actual="vchoff" expected='"1"' id="choffLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table15.xml b/test/testcases/tests/level1/html/table15.xml
new file mode 100644
index 0000000..89455c3
--- /dev/null
+++ b/test/testcases/tests/level1/html/table15.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table15">
+<metadata>
+<title>table15</title>
+<creator>Netscape</creator>
+<description>
+The collection of rows in this table section.
+The value of attribute rows of the tablesection element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="vcollection" type="HTMLCollection" />
+<var name="vrows" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tHead interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<rows interface="HTMLTableSectionElement" obj="vsection" var="vcollection"/>
+<length interface="HTMLCollection" obj="vcollection" var="vrows" />
+<assertEquals actual="vrows" expected="1" id="vrowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table17.xml b/test/testcases/tests/level1/html/table17.xml
new file mode 100644
index 0000000..7223562
--- /dev/null
+++ b/test/testcases/tests/level1/html/table17.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table17">
+<metadata>
+<title>table17</title>
+<creator>Netscape</creator>
+<description>
+Offset of alignment character.
+The value of attribute chOff of the tablesection element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="vchoff" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tFoot interface="HTMLTableElement" obj="testNode" var="vsection"/>
+<chOff interface="HTMLTableSectionElement" obj="vsection" var="vchoff"/>
+<assertEquals actual="vchoff" expected='"2"' id="choffLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table18.xml b/test/testcases/tests/level1/html/table18.xml
new file mode 100644
index 0000000..db8c161
--- /dev/null
+++ b/test/testcases/tests/level1/html/table18.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table18">
+<metadata>
+<title>table18</title>
+<creator>Netscape</creator>
+<description>
+The index of this cell in the row.
+The value of attribute cellIndex of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80748363"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcindex" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<cellIndex interface="HTMLTableCellElement" obj="testNode" var="vcindex"/>
+<assertEquals actual="vcindex" expected="1" id="cellIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table19.xml b/test/testcases/tests/level1/html/table19.xml
new file mode 100644
index 0000000..e88be88
--- /dev/null
+++ b/test/testcases/tests/level1/html/table19.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table19">
+<metadata>
+<title>table19</title>
+<creator>Netscape</creator>
+<description>
+Abbreviation for header cells.
+The index of this cell in the row.
+The value of attribute abbr of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74444037"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vabbr" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<abbr interface="HTMLTableCellElement" obj="testNode" var="vabbr"/>
+<assertEquals actual="vabbr" expected='"hd2"' id="abbrLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table20.xml b/test/testcases/tests/level1/html/table20.xml
new file mode 100644
index 0000000..2205987
--- /dev/null
+++ b/test/testcases/tests/level1/html/table20.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table20">
+<metadata>
+<title>table20</title>
+<creator>Netscape</creator>
+<description>
+Names group of related headers.
+The value of attribute axis of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76554418"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaxis" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<axis interface="HTMLTableCellElement" obj="testNode" var="vaxis"/>
+<assertEquals actual="vaxis" expected='"center"' id="axisLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table21.xml b/test/testcases/tests/level1/html/table21.xml
new file mode 100644
index 0000000..fa22103
--- /dev/null
+++ b/test/testcases/tests/level1/html/table21.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table21">
+<metadata>
+<title>table21</title>
+<creator>Netscape</creator>
+<description>
+Horizontal alignment of data in cell.
+The value of attribute align of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98433879"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<align interface="HTMLTableCellElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table22.xml b/test/testcases/tests/level1/html/table22.xml
new file mode 100644
index 0000000..7c097b4
--- /dev/null
+++ b/test/testcases/tests/level1/html/table22.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table22">
+<metadata>
+<title>table22</title>
+<creator>Netscape</creator>
+<description>
+Cell background color.
+The value of attribute bgColor of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88135431"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vbgcolor" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<bgColor interface="HTMLTableCellElement" obj="testNode" var="vbgcolor"/>
+<assertEquals actual="vbgcolor" expected='"#FF0000"' id="bgcolorLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table23.xml b/test/testcases/tests/level1/html/table23.xml
new file mode 100644
index 0000000..4ea8ace
--- /dev/null
+++ b/test/testcases/tests/level1/html/table23.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table23">
+<metadata>
+<title>table23</title>
+<creator>Netscape</creator>
+<description>
+Alignment character for cells in a column.
+The value of attribute char of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30914780"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vch" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<ch interface="HTMLTableCellElement" obj="testNode" var="vch"/>
+<assertEquals actual="vch" expected='":"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table24.xml b/test/testcases/tests/level1/html/table24.xml
new file mode 100644
index 0000000..7606917
--- /dev/null
+++ b/test/testcases/tests/level1/html/table24.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table24">
+<metadata>
+<title>table24</title>
+<creator>Netscape</creator>
+<description>
+offset of alignment character.
+The value of attribute chOff of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20144310"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vchoff" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<chOff interface="HTMLTableCellElement" obj="testNode" var="vchoff"/>
+<assertEquals actual="vchoff" expected='"1"' id="chOffLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table25.xml b/test/testcases/tests/level1/html/table25.xml
new file mode 100644
index 0000000..b8e10dd
--- /dev/null
+++ b/test/testcases/tests/level1/html/table25.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table25">
+<metadata>
+<title>table25</title>
+<creator>Netscape</creator>
+<description>
+Number of columns spanned by cell.
+The value of attribute colspan of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84645244"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcolspan" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<colSpan interface="HTMLTableCellElement" obj="testNode" var="vcolspan"/>
+<assertEquals actual="vcolspan" expected="1" id="colSpanLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table26.xml b/test/testcases/tests/level1/html/table26.xml
new file mode 100644
index 0000000..9f09d4f
--- /dev/null
+++ b/test/testcases/tests/level1/html/table26.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table26">
+<metadata>
+<title>table26</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute height of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83679212"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheight" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<height interface="HTMLTableCellElement" obj="testNode" var="vheight"/>
+<assertEquals actual="vheight" expected='"50"' id="heightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table27.xml b/test/testcases/tests/level1/html/table27.xml
new file mode 100644
index 0000000..e0dc78d
--- /dev/null
+++ b/test/testcases/tests/level1/html/table27.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table27">
+<metadata>
+<title>table27</title>
+<creator>Netscape</creator>
+<description>
+Suppress word wrapping.
+The value of attribute nowrap of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62922045"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vnowrap" type="boolean" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<noWrap interface="HTMLTableCellElement" obj="testNode" var="vnowrap"/>
+<assertTrue actual="vnowrap" id="nowrapLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table28.xml b/test/testcases/tests/level1/html/table28.xml
new file mode 100644
index 0000000..d445a1c
--- /dev/null
+++ b/test/testcases/tests/level1/html/table28.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table28">
+<metadata>
+<title>table28</title>
+<creator>Netscape</creator>
+<description>
+Number of rows spanned by cell.
+The value of attribute rowspan of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48237625"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrowspan" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rowSpan interface="HTMLTableCellElement" obj="testNode" var="vrowspan"/>
+<assertEquals actual="vrowspan" expected="1" id="rowSpanLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table29.xml b/test/testcases/tests/level1/html/table29.xml
new file mode 100644
index 0000000..ae483d4
--- /dev/null
+++ b/test/testcases/tests/level1/html/table29.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table29">
+<metadata>
+<title>table29</title>
+<creator>Netscape</creator>
+<description>
+Scope covered by header cells.
+The value of attribute scope of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36139952"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vscope" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<scope interface="HTMLTableCellElement" obj="testNode" var="vscope"/>
+<assertEquals actual="vscope" expected='"col"' id="scopeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table30.xml b/test/testcases/tests/level1/html/table30.xml
new file mode 100644
index 0000000..837be29
--- /dev/null
+++ b/test/testcases/tests/level1/html/table30.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table30">
+<metadata>
+<title>table30</title>
+<creator>Netscape</creator>
+<description>
+List of id attribute values for header cells.
+The value of attribute headers of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89104817"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheaders" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<headers interface="HTMLTableCellElement" obj="testNode" var="vheaders"/>
+<assertEquals actual="vheaders" expected='"header-3"' id="headersLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table31.xml b/test/testcases/tests/level1/html/table31.xml
new file mode 100644
index 0000000..f5c3fa6
--- /dev/null
+++ b/test/testcases/tests/level1/html/table31.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table31">
+<metadata>
+<title>table31</title>
+<creator>Netscape</creator>
+<description>
+Vertical alignment of data in cell.
+The value of attribute valign of the tablecell element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58284221"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<vAlign interface="HTMLTableCellElement" obj="testNode" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table32.xml b/test/testcases/tests/level1/html/table32.xml
new file mode 100644
index 0000000..cf7e0cd
--- /dev/null
+++ b/test/testcases/tests/level1/html/table32.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table32">
+<metadata>
+<title>table32</title>
+<creator>Netscape</creator>
+<description>
+cell width.
+The value of attribute width of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27480795"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecell" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"td"'/>
+<assertSize collection="nodeList" size="4" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<width interface="HTMLTableCellElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"175"' id="vwidthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table33.xml b/test/testcases/tests/level1/html/table33.xml
new file mode 100644
index 0000000..5c0e447
--- /dev/null
+++ b/test/testcases/tests/level1/html/table33.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table33">
+<metadata>
+<title>table33</title>
+<creator>Netscape</creator>
+<description>
+Specifies the table's position with respect to the rest of the document.
+The value of attribute align of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23180977"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<align interface="HTMLTableElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table34.xml b/test/testcases/tests/level1/html/table34.xml
new file mode 100644
index 0000000..07443ef
--- /dev/null
+++ b/test/testcases/tests/level1/html/table34.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table34">
+<metadata>
+<title>table34</title>
+<creator>Netscape</creator>
+<description>
+The width of the border around the table.
+The value of attribute border of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-50969400"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vborder" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<border interface="HTMLTableElement" obj="testNode" var="vborder"/>
+<assertEquals actual="vborder" expected='"4"' id="borderLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table35.xml b/test/testcases/tests/level1/html/table35.xml
new file mode 100644
index 0000000..32cce60
--- /dev/null
+++ b/test/testcases/tests/level1/html/table35.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table35">
+<metadata>
+<title>table35</title>
+<creator>Netscape</creator>
+<description>
+Cell background color.
+The value of attribute bgcolor of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83532985"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vbgcolor" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<bgColor interface="HTMLTableElement" obj="testNode" var="vbgcolor"/>
+<assertEquals actual="vbgcolor" expected='"#ff0000"' id="bgcolorLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table36.xml b/test/testcases/tests/level1/html/table36.xml
new file mode 100644
index 0000000..2bdded8
--- /dev/null
+++ b/test/testcases/tests/level1/html/table36.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table36">
+<metadata>
+<title>table36</title>
+<creator>Netscape</creator>
+<description>
+Specifies which external table borders to render.
+The value of attribute frame of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64808476"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vframe" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<frame interface="HTMLTableElement" obj="testNode" var="vframe"/>
+<assertEquals actual="vframe" expected='"border"' id="frameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table37.xml b/test/testcases/tests/level1/html/table37.xml
new file mode 100644
index 0000000..cdf5b73
--- /dev/null
+++ b/test/testcases/tests/level1/html/table37.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table37">
+<metadata>
+<title>table37</title>
+<creator>Netscape</creator>
+<description>
+Specifies the horizontal and vertical space between cell content and cell borders. The value of attribute cellpadding of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59162158"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcellpadding" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<cellPadding interface="HTMLTableElement" obj="testNode" var="vcellpadding"/>
+<assertEquals actual="vcellpadding" expected='"2"' id="cellpaddingLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table38.xml b/test/testcases/tests/level1/html/table38.xml
new file mode 100644
index 0000000..fad8dfe
--- /dev/null
+++ b/test/testcases/tests/level1/html/table38.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table38">
+<metadata>
+<title>table38</title>
+<creator>Netscape</creator>
+<description>
+Specifies the horizontal and vertical separation between cells.
+The value of attribute cellspacing of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68907883"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcellspacing" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<cellSpacing interface="HTMLTableElement" obj="testNode" var="vcellspacing"/>
+<assertEquals actual="vcellspacing" expected='"2"' id="cellspacingLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table39.xml b/test/testcases/tests/level1/html/table39.xml
new file mode 100644
index 0000000..1fd66db
--- /dev/null
+++ b/test/testcases/tests/level1/html/table39.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table39">
+<metadata>
+<title>table39</title>
+<creator>Netscape</creator>
+<description>
+Supplementary description about the purpose or structure of a table.
+The value of attribute summary of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-44998528"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsummary" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<summary interface="HTMLTableElement" obj="testNode" var="vsummary"/>
+<assertEquals actual="vsummary" expected='"HTML Control Table"' id="summaryLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table40.xml b/test/testcases/tests/level1/html/table40.xml
new file mode 100644
index 0000000..31a9763
--- /dev/null
+++ b/test/testcases/tests/level1/html/table40.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table40">
+<metadata>
+<title>table40</title>
+<creator>Netscape</creator>
+<description>
+Specifies which internal table borders to render.
+The value of attribute rules of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26347553"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrules" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rules interface="HTMLTableElement" obj="testNode" var="vrules"/>
+<assertEquals actual="vrules" expected='"all"' id="rulesLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table41.xml b/test/testcases/tests/level1/html/table41.xml
new file mode 100644
index 0000000..4030b09
--- /dev/null
+++ b/test/testcases/tests/level1/html/table41.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table41">
+<metadata>
+<title>table41</title>
+<creator>Netscape</creator>
+<description>
+Specifies the desired table width.
+The value of attribute width of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77447361"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<width interface="HTMLTableElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"680"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table42.xml b/test/testcases/tests/level1/html/table42.xml
new file mode 100644
index 0000000..8fa86f1
--- /dev/null
+++ b/test/testcases/tests/level1/html/table42.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table42">
+<metadata>
+<title>table42</title>
+<creator>Netscape</creator>
+<description>
+Horizontal alignment of data within cells of this row.
+The value of attribute align of the tablerow element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74098257"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="8" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<align interface="HTMLTableRowElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table43.xml b/test/testcases/tests/level1/html/table43.xml
new file mode 100644
index 0000000..ea9e5de
--- /dev/null
+++ b/test/testcases/tests/level1/html/table43.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table43">
+<metadata>
+<title>table43</title>
+<creator>Netscape</creator>
+<description>
+Background color for rows.
+The value of attribute bgcolor of the tablerow element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18161327"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vbgcolor" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="8" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<bgColor interface="HTMLTableRowElement" obj="testNode" var="vbgcolor"/>
+<assertEquals actual="vbgcolor" expected='"#00FFFF"' id="bgcolorLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table44.xml b/test/testcases/tests/level1/html/table44.xml
new file mode 100644
index 0000000..a893f76
--- /dev/null
+++ b/test/testcases/tests/level1/html/table44.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table44">
+<metadata>
+<title>table44</title>
+<creator>Netscape</creator>
+<description>
+Vertical alignment of data within cells of this row.
+The value of attribute valign of the tablerow element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90000058"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="table" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="8" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<vAlign interface="HTMLTableRowElement" obj="testNode" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="valignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table45.xml b/test/testcases/tests/level1/html/table45.xml
new file mode 100644
index 0000000..b1717db
--- /dev/null
+++ b/test/testcases/tests/level1/html/table45.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table45">
+<metadata>
+<title>table45</title>
+<creator>Netscape</creator>
+<description>
+Alignment character for cells in a column.
+The value of attribute ch of the tablerow element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16230502"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vch" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<ch interface="HTMLTableRowElement" obj="testNode" var="vch"/>
+<assertEquals actual="vch" expected='"*"' id="vchLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table46.xml b/test/testcases/tests/level1/html/table46.xml
new file mode 100644
index 0000000..096b892
--- /dev/null
+++ b/test/testcases/tests/level1/html/table46.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table46">
+<metadata>
+<title>table46</title>
+<creator>Netscape</creator>
+<description>
+Offset of alignment character.
+The value of attribute choff of the tablerow element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68207461"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vchoff" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<chOff interface="HTMLTableRowElement" obj="testNode" var="vchoff"/>
+<assertEquals actual="vchoff" expected='"1"' id="choffLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table47.xml b/test/testcases/tests/level1/html/table47.xml
new file mode 100644
index 0000000..4d8340b
--- /dev/null
+++ b/test/testcases/tests/level1/html/table47.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table47">
+<metadata>
+<title>table47</title>
+<creator>Netscape</creator>
+<description>
+The index of this row, relative to the entire table.
+The value of attribute rowIndex of the table element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67347567"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrindex" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablerow" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="4"/>
+<rowIndex interface="HTMLTableRowElement" obj="testNode" var="vrindex"/>
+<assertEquals actual="vrindex" expected="2" id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table48.xml b/test/testcases/tests/level1/html/table48.xml
new file mode 100644
index 0000000..1910883
--- /dev/null
+++ b/test/testcases/tests/level1/html/table48.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table48">
+<metadata>
+<title>HTMLTableColElement align</title>
+<creator>Netscape</creator>
+<description>
+Horizontal alignment of cell data in column.
+The value of attribute align of the tablecol element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74098257"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<align interface="HTMLTableColElement" obj="testNode" var="valign"/>
+<assertEquals actual="valign" expected='"center"' id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table49.xml b/test/testcases/tests/level1/html/table49.xml
new file mode 100644
index 0000000..1db690b
--- /dev/null
+++ b/test/testcases/tests/level1/html/table49.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table49">
+<metadata>
+<title>table49</title>
+<creator>Netscape</creator>
+<description>
+Alignment character for cells in a column.
+The value of attribute ch of the tablecol element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16230502"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vch" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<ch interface="HTMLTableColElement" obj="testNode" var="vch"/>
+<assertEquals actual="vch" expected='"*"' id="chLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table50.xml b/test/testcases/tests/level1/html/table50.xml
new file mode 100644
index 0000000..8f60638
--- /dev/null
+++ b/test/testcases/tests/level1/html/table50.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table50">
+<metadata>
+<title>table50</title>
+<creator>Netscape</creator>
+<description>
+Offset of alignment character.
+The value of attribute choff of the tablecol element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68207461"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vchoff" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<chOff interface="HTMLTableColElement" obj="testNode" var="vchoff"/>
+<assertEquals actual="vchoff" expected='"20"' id="chOffLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table51.xml b/test/testcases/tests/level1/html/table51.xml
new file mode 100644
index 0000000..c917f27
--- /dev/null
+++ b/test/testcases/tests/level1/html/table51.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table51">
+<metadata>
+<title>table51</title>
+<creator>Netscape</creator>
+<description>
+Indicates the number of columns in a group or affected by a grouping.
+The value of attribute span of the tablecol element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96511335"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vspan" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<span interface="HTMLTableColElement" obj="testNode" var="vspan"/>
+<assertEquals actual="vspan" expected="1" id="spanLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table52.xml b/test/testcases/tests/level1/html/table52.xml
new file mode 100644
index 0000000..bf94572
--- /dev/null
+++ b/test/testcases/tests/level1/html/table52.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table52">
+<metadata>
+<title>table52</title>
+<creator>Netscape</creator>
+<description>
+Vertical alignment of cell data in column.
+The value of attribute valign of the tablecol element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83291710"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vAlign interface="HTMLTableColElement" obj="testNode" var="vvalign"/>
+<assertEquals actual="vvalign" expected='"middle"' id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table53.xml b/test/testcases/tests/level1/html/table53.xml
new file mode 100644
index 0000000..210c7e1
--- /dev/null
+++ b/test/testcases/tests/level1/html/table53.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom1.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1" name="table53">
+<metadata>
+<title>table53</title>
+<creator>Netscape</creator>
+<description>
+Default column width.
+The value of attribute width of the tablecol element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25196799"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablecol" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"col"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<width interface="HTMLTableColElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected='"20"' id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/CVS/Entries b/test/testcases/tests/level2/CVS/Entries
new file mode 100644
index 0000000..cb66ad2
--- /dev/null
+++ b/test/testcases/tests/level2/CVS/Entries
@@ -0,0 +1,3 @@
+D/core////
+D/events////
+D/html////
diff --git a/test/testcases/tests/level2/CVS/Repository b/test/testcases/tests/level2/CVS/Repository
new file mode 100644
index 0000000..cd1c79d
--- /dev/null
+++ b/test/testcases/tests/level2/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level2
diff --git a/test/testcases/tests/level2/CVS/Root b/test/testcases/tests/level2/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level2/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level2/CVS/Template b/test/testcases/tests/level2/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/CVS/Template
diff --git a/test/testcases/tests/level2/core/.cvsignore b/test/testcases/tests/level2/core/.cvsignore
new file mode 100644
index 0000000..cc87140
--- /dev/null
+++ b/test/testcases/tests/level2/core/.cvsignore
@@ -0,0 +1,2 @@
+dom2.dtd
+dom2.xsd
diff --git a/test/testcases/tests/level2/core/CVS/Entries b/test/testcases/tests/level2/core/CVS/Entries
new file mode 100644
index 0000000..fddde67
--- /dev/null
+++ b/test/testcases/tests/level2/core/CVS/Entries
@@ -0,0 +1,287 @@
+D/files////
+/.cvsignore/1.2/Fri Apr 3 02:47:56 2009//
+/alltests.xml/1.13/Fri Apr 3 02:47:56 2009//
+/attrgetownerelement01.xml/1.4/Fri Apr 3 02:47:56 2009//
+/attrgetownerelement02.xml/1.2/Fri Apr 3 02:47:56 2009//
+/attrgetownerelement03.xml/1.1/Fri Apr 3 02:47:56 2009//
+/attrgetownerelement04.xml/1.3/Fri Apr 3 02:47:56 2009//
+/attrgetownerelement05.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createAttributeNS01.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createAttributeNS02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createAttributeNS03.xml/1.5/Fri Apr 3 02:47:56 2009//
+/createAttributeNS04.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createAttributeNS05.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createAttributeNS06.xml/1.1/Fri Apr 3 02:47:56 2009//
+/createDocument01.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createDocument02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createDocument03.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createDocument04.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createDocument05.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createDocument06.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createDocument07.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createDocument08.xml/1.1/Fri Apr 3 02:47:56 2009//
+/createDocumentType01.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createDocumentType02.xml/1.5/Fri Apr 3 02:47:56 2009//
+/createDocumentType03.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createDocumentType04.xml/1.1/Fri Apr 3 02:47:56 2009//
+/createElementNS01.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createElementNS02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createElementNS03.xml/1.5/Fri Apr 3 02:47:56 2009//
+/createElementNS04.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createElementNS05.xml/1.4/Fri Apr 3 02:47:56 2009//
+/createElementNS06.xml/1.1/Fri Apr 3 02:47:56 2009//
+/documentcreateattributeNS01.xml/1.2/Fri Apr 3 02:47:56 2009//
+/documentcreateattributeNS02.xml/1.2/Fri Apr 3 02:47:56 2009//
+/documentcreateattributeNS03.xml/1.1/Fri Apr 3 02:47:56 2009//
+/documentcreateattributeNS04.xml/1.1/Fri Apr 3 02:47:56 2009//
+/documentcreateattributeNS05.xml/1.2/Fri Apr 3 02:47:56 2009//
+/documentcreateattributeNS06.xml/1.2/Fri Apr 3 02:47:56 2009//
+/documentcreateattributeNS07.xml/1.1/Fri Apr 3 02:47:56 2009//
+/documentcreateelementNS01.xml/1.1/Fri Apr 3 02:47:56 2009//
+/documentcreateelementNS02.xml/1.1/Fri Apr 3 02:47:56 2009//
+/documentcreateelementNS05.xml/1.1/Fri Apr 3 02:47:56 2009//
+/documentcreateelementNS06.xml/1.2/Fri Apr 3 02:47:56 2009//
+/documentgetelementbyid01.xml/1.1/Fri Apr 3 02:47:56 2009//
+/documentgetelementsbytagnameNS01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentgetelementsbytagnameNS02.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentgetelementsbytagnameNS03.xml/1.2/Fri Apr 3 02:47:56 2009//
+/documentgetelementsbytagnameNS04.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentgetelementsbytagnameNS05.xml/1.2/Fri Apr 3 02:47:56 2009//
+/documentimportnode01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/documentimportnode03.xml/1.4/Fri Apr 3 02:47:56 2009//
+/documentimportnode04.xml/1.4/Fri Apr 3 02:47:56 2009//
+/documentimportnode05.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode06.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode07.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode08.xml/1.4/Fri Apr 3 02:47:56 2009//
+/documentimportnode09.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode10.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode11.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode12.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode13.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode14.xml/1.5/Fri Apr 3 02:47:56 2009//
+/documentimportnode15.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode17.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode18.xml/1.4/Fri Apr 3 02:47:56 2009//
+/documentimportnode19.xml/1.4/Fri Apr 3 02:47:56 2009//
+/documentimportnode20.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode21.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documentimportnode22.xml/1.4/Fri Apr 3 02:47:56 2009//
+/documenttypeinternalSubset01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documenttypepublicid01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/documenttypesystemid01.xml/1.2/Fri Apr 3 02:47:56 2009//
+/domimplementationcreatedocument03.xml/1.1/Fri Apr 3 02:47:56 2009//
+/domimplementationcreatedocument04.xml/1.1/Fri Apr 3 02:47:56 2009//
+/domimplementationcreatedocument05.xml/1.1/Fri Apr 3 02:47:56 2009//
+/domimplementationcreatedocument07.xml/1.1/Fri Apr 3 02:47:56 2009//
+/domimplementationcreatedocumenttype01.xml/1.1/Fri Apr 3 02:47:56 2009//
+/domimplementationcreatedocumenttype02.xml/1.1/Fri Apr 3 02:47:56 2009//
+/domimplementationcreatedocumenttype04.xml/1.1/Fri Apr 3 02:47:56 2009//
+/domimplementationfeaturecore.xml/1.7/Fri Apr 3 02:47:56 2009//
+/domimplementationfeaturexmlversion2.xml/1.7/Fri Apr 3 02:47:56 2009//
+/domimplementationhasfeature01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/domimplementationhasfeature02.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementgetattributenodens01.xml/1.2/Fri Apr 3 02:47:56 2009//
+/elementgetattributenodens02.xml/1.2/Fri Apr 3 02:47:56 2009//
+/elementgetattributenodens03.xml/1.4/Fri Apr 3 02:47:56 2009//
+/elementgetattributens02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/elementgetelementsbytagnamens02.xml/1.1/Fri Apr 3 02:47:56 2009//
+/elementgetelementsbytagnamens04.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementgetelementsbytagnamens05.xml/1.1/Fri Apr 3 02:47:56 2009//
+/elementhasattribute01.xml/1.1/Fri Apr 3 02:47:56 2009//
+/elementhasattribute02.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementhasattribute03.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementhasattribute04.xml/1.2/Fri Apr 3 02:47:56 2009//
+/elementhasattributens01.xml/1.2/Fri Apr 3 02:47:56 2009//
+/elementhasattributens02.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementhasattributens03.xml/1.4/Fri Apr 3 02:47:56 2009//
+/elementremoveattributens01.xml/1.2/Fri Apr 3 02:47:56 2009//
+/elementsetattributenodens01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementsetattributenodens02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/elementsetattributenodens03.xml/1.4/Fri Apr 3 02:47:56 2009//
+/elementsetattributenodens04.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementsetattributenodens05.xml/1.4/Fri Apr 3 02:47:56 2009//
+/elementsetattributenodens06.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementsetattributens01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementsetattributens02.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementsetattributens03.xml/1.5/Fri Apr 3 02:47:56 2009//
+/elementsetattributens04.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementsetattributens05.xml/1.4/Fri Apr 3 02:47:56 2009//
+/elementsetattributens08.xml/1.3/Fri Apr 3 02:47:56 2009//
+/elementsetattributensurinull.xml/1.9/Fri Apr 3 02:47:56 2009//
+/getAttributeNS01.xml/1.6/Fri Apr 3 02:47:56 2009//
+/getAttributeNS02.xml/1.5/Fri Apr 3 02:47:56 2009//
+/getAttributeNS03.xml/1.6/Fri Apr 3 02:47:56 2009//
+/getAttributeNS04.xml/1.5/Fri Apr 3 02:47:56 2009//
+/getAttributeNS05.xml/1.6/Fri Apr 3 02:47:56 2009//
+/getAttributeNodeNS01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/getAttributeNodeNS02.xml/1.6/Fri Apr 3 02:47:56 2009//
+/getElementById01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/getElementById02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS02.xml/1.7/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS03.xml/1.7/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS04.xml/1.7/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS05.xml/1.4/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS06.xml/1.5/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS07.xml/1.5/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS08.xml/1.2/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS09.xml/1.1/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS10.xml/1.2/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS11.xml/1.2/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS12.xml/1.1/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS13.xml/1.1/Fri Apr 3 02:47:56 2009//
+/getElementsByTagNameNS14.xml/1.3/Fri Apr 3 02:47:56 2009//
+/getNamedItemNS01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/getNamedItemNS02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/getNamedItemNS03.xml/1.3/Fri Apr 3 02:47:56 2009//
+/getNamedItemNS04.xml/1.2/Fri Apr 3 02:47:56 2009//
+/hasAttribute01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/hasAttribute02.xml/1.6/Fri Apr 3 02:47:56 2009//
+/hasAttribute03.xml/1.5/Fri Apr 3 02:47:56 2009//
+/hasAttribute04.xml/1.6/Fri Apr 3 02:47:56 2009//
+/hasAttributeNS01.xml/1.4/Fri Apr 3 02:47:56 2009//
+/hasAttributeNS02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/hasAttributeNS03.xml/1.5/Fri Apr 3 02:47:56 2009//
+/hasAttributeNS04.xml/1.6/Fri Apr 3 02:47:56 2009//
+/hasAttributeNS05.xml/1.5/Fri Apr 3 02:47:56 2009//
+/hasAttributes01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/hasAttributes02.xml/1.5/Fri Apr 3 02:47:56 2009//
+/hc_entitiesremovenameditemns1.xml/1.2/Fri Apr 3 02:47:56 2009//
+/hc_entitiessetnameditemns1.xml/1.2/Fri Apr 3 02:47:56 2009//
+/hc_namednodemapinvalidtype1.xml/1.1/Fri Apr 3 02:47:56 2009//
+/hc_nodedocumentfragmentnormalize1.xml/1.1/Fri Apr 3 02:47:56 2009//
+/hc_nodedocumentfragmentnormalize2.xml/1.1/Fri Apr 3 02:47:56 2009//
+/hc_notationsremovenameditemns1.xml/1.2/Fri Apr 3 02:47:56 2009//
+/hc_notationssetnameditemns1.xml/1.2/Fri Apr 3 02:47:56 2009//
+/importNode01.xml/1.8/Fri Apr 3 02:47:56 2009//
+/importNode02.xml/1.9/Fri Apr 3 02:47:56 2009//
+/importNode03.xml/1.9/Fri Apr 3 02:47:56 2009//
+/importNode04.xml/1.8/Fri Apr 3 02:47:56 2009//
+/importNode05.xml/1.9/Fri Apr 3 02:47:56 2009//
+/importNode06.xml/1.8/Fri Apr 3 02:47:56 2009//
+/importNode07.xml/1.10/Fri Apr 3 02:47:56 2009//
+/importNode08.xml/1.8/Fri Apr 3 02:47:56 2009//
+/importNode09.xml/1.9/Fri Apr 3 02:47:56 2009//
+/importNode10.xml/1.9/Fri Apr 3 02:47:56 2009//
+/importNode11.xml/1.9/Fri Apr 3 02:47:56 2009//
+/importNode12.xml/1.9/Fri Apr 3 02:47:56 2009//
+/importNode13.xml/1.9/Fri Apr 3 02:47:56 2009//
+/importNode14.xml/1.9/Fri Apr 3 02:47:56 2009//
+/importNode15.xml/1.9/Fri Apr 3 02:47:56 2009//
+/importNode16.xml/1.5/Fri Apr 3 02:47:56 2009//
+/importNode17.xml/1.5/Fri Apr 3 02:47:56 2009//
+/internalSubset01.xml/1.6/Fri Apr 3 02:47:56 2009//
+/isSupported01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/isSupported02.xml/1.5/Fri Apr 3 02:47:56 2009//
+/isSupported04.xml/1.5/Fri Apr 3 02:47:56 2009//
+/isSupported05.xml/1.5/Fri Apr 3 02:47:56 2009//
+/isSupported06.xml/1.5/Fri Apr 3 02:47:56 2009//
+/isSupported07.xml/1.5/Fri Apr 3 02:47:56 2009//
+/isSupported09.xml/1.5/Fri Apr 3 02:47:56 2009//
+/isSupported10.xml/1.5/Fri Apr 3 02:47:56 2009//
+/isSupported11.xml/1.5/Fri Apr 3 02:47:56 2009//
+/isSupported12.xml/1.9/Fri Apr 3 02:47:56 2009//
+/isSupported13.xml/1.5/Fri Apr 3 02:47:56 2009//
+/isSupported14.xml/1.5/Fri Apr 3 02:47:56 2009//
+/localName01.xml/1.6/Fri Apr 3 02:47:56 2009//
+/localName02.xml/1.5/Fri Apr 3 02:47:56 2009//
+/localName03.xml/1.5/Fri Apr 3 02:47:56 2009//
+/localName04.xml/1.5/Fri Apr 3 02:47:56 2009//
+/metadata.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapgetnameditemns01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/namednodemapgetnameditemns02.xml/1.2/Fri Apr 3 02:47:56 2009//
+/namednodemapgetnameditemns03.xml/1.2/Fri Apr 3 02:47:56 2009//
+/namednodemapgetnameditemns04.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapgetnameditemns05.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapgetnameditemns06.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapremovenameditemns01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapremovenameditemns02.xml/1.5/Fri Apr 3 02:47:56 2009//
+/namednodemapremovenameditemns03.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapremovenameditemns04.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapremovenameditemns05.xml/1.6/Fri Apr 3 02:47:56 2009//
+/namednodemapremovenameditemns06.xml/1.4/Fri Apr 3 02:47:56 2009//
+/namednodemapremovenameditemns07.xml/1.4/Fri Apr 3 02:47:56 2009//
+/namednodemapremovenameditemns08.xml/1.4/Fri Apr 3 02:47:56 2009//
+/namednodemapremovenameditemns09.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapsetnameditemns01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapsetnameditemns02.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapsetnameditemns03.xml/1.7/Fri Apr 3 02:47:56 2009//
+/namednodemapsetnameditemns04.xml/1.5/Fri Apr 3 02:47:56 2009//
+/namednodemapsetnameditemns05.xml/1.6/Fri Apr 3 02:47:56 2009//
+/namednodemapsetnameditemns06.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapsetnameditemns07.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapsetnameditemns08.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namednodemapsetnameditemns09.xml/1.4/Fri Apr 3 02:47:56 2009//
+/namednodemapsetnameditemns10.xml/1.6/Fri Apr 3 02:47:56 2009//
+/namednodemapsetnameditemns11.xml/1.3/Fri Apr 3 02:47:56 2009//
+/namespaceURI01.xml/1.6/Fri Apr 3 02:47:56 2009//
+/namespaceURI02.xml/1.6/Fri Apr 3 02:47:56 2009//
+/namespaceURI03.xml/1.6/Fri Apr 3 02:47:56 2009//
+/namespaceURI04.xml/1.5/Fri Apr 3 02:47:56 2009//
+/nodegetlocalname03.xml/1.2/Fri Apr 3 02:47:56 2009//
+/nodegetnamespaceuri03.xml/1.3/Fri Apr 3 02:47:56 2009//
+/nodegetownerdocument01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/nodegetownerdocument02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/nodegetprefix03.xml/1.2/Fri Apr 3 02:47:56 2009//
+/nodehasattributes01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/nodehasattributes02.xml/1.1/Fri Apr 3 02:47:56 2009//
+/nodehasattributes03.xml/1.3/Fri Apr 3 02:47:56 2009//
+/nodehasattributes04.xml/1.2/Fri Apr 3 02:47:56 2009//
+/nodeissupported01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/nodeissupported02.xml/1.3/Fri Apr 3 02:47:56 2009//
+/nodeissupported03.xml/1.1/Fri Apr 3 02:47:56 2009//
+/nodeissupported04.xml/1.2/Fri Apr 3 02:47:56 2009//
+/nodeissupported05.xml/1.1/Fri Apr 3 02:47:56 2009//
+/nodenormalize01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/nodesetprefix01.xml/1.3/Fri Apr 3 02:47:56 2009//
+/nodesetprefix02.xml/1.3/Fri Apr 3 02:47:56 2009//
+/nodesetprefix03.xml/1.4/Fri Apr 3 02:47:56 2009//
+/nodesetprefix04.xml/1.5/Fri Apr 3 02:47:56 2009//
+/nodesetprefix05.xml/1.4/Fri Apr 3 02:47:56 2009//
+/nodesetprefix06.xml/1.4/Fri Apr 3 02:47:56 2009//
+/nodesetprefix07.xml/1.4/Fri Apr 3 02:47:56 2009//
+/nodesetprefix08.xml/1.4/Fri Apr 3 02:47:56 2009//
+/nodesetprefix09.xml/1.5/Fri Apr 3 02:47:56 2009//
+/normalize01.xml/1.7/Fri Apr 3 02:47:56 2009//
+/ownerDocument01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/ownerElement01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/ownerElement02.xml/1.5/Fri Apr 3 02:47:56 2009//
+/prefix01.xml/1.4/Fri Apr 3 02:47:56 2009//
+/prefix02.xml/1.6/Fri Apr 3 02:47:56 2009//
+/prefix03.xml/1.6/Fri Apr 3 02:47:56 2009//
+/prefix04.xml/1.4/Fri Apr 3 02:47:56 2009//
+/prefix05.xml/1.5/Fri Apr 3 02:47:56 2009//
+/prefix06.xml/1.8/Fri Apr 3 02:47:56 2009//
+/prefix07.xml/1.4/Fri Apr 3 02:47:56 2009//
+/prefix08.xml/1.7/Fri Apr 3 02:47:56 2009//
+/prefix09.xml/1.5/Fri Apr 3 02:47:56 2009//
+/prefix10.xml/1.4/Fri Apr 3 02:47:56 2009//
+/prefix11.xml/1.5/Fri Apr 3 02:47:56 2009//
+/publicId01.xml/1.4/Fri Apr 3 02:47:56 2009//
+/removeAttributeNS01.xml/1.6/Fri Apr 3 02:47:56 2009//
+/removeAttributeNS02.xml/1.7/Fri Apr 3 02:47:56 2009//
+/removeNamedItemNS01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/removeNamedItemNS02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/removeNamedItemNS03.xml/1.7/Fri Apr 3 02:47:56 2009//
+/setAttributeNS01.xml/1.4/Fri Apr 3 02:47:56 2009//
+/setAttributeNS02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/setAttributeNS03.xml/1.6/Fri Apr 3 02:47:56 2009//
+/setAttributeNS04.xml/1.6/Fri Apr 3 02:47:56 2009//
+/setAttributeNS05.xml/1.5/Fri Apr 3 02:47:56 2009//
+/setAttributeNS06.xml/1.4/Fri Apr 3 02:47:56 2009//
+/setAttributeNS07.xml/1.4/Fri Apr 3 02:47:56 2009//
+/setAttributeNS09.xml/1.7/Fri Apr 3 02:47:56 2009//
+/setAttributeNS10.xml/1.1/Fri Apr 3 02:47:56 2009//
+/setAttributeNodeNS01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/setAttributeNodeNS02.xml/1.5/Fri Apr 3 02:47:56 2009//
+/setAttributeNodeNS03.xml/1.5/Fri Apr 3 02:47:56 2009//
+/setAttributeNodeNS04.xml/1.6/Fri Apr 3 02:47:56 2009//
+/setAttributeNodeNS05.xml/1.4/Fri Apr 3 02:47:56 2009//
+/setNamedItemNS01.xml/1.5/Fri Apr 3 02:47:56 2009//
+/setNamedItemNS02.xml/1.4/Fri Apr 3 02:47:56 2009//
+/setNamedItemNS03.xml/1.4/Fri Apr 3 02:47:56 2009//
+/setNamedItemNS04.xml/1.8/Fri Apr 3 02:47:56 2009//
+/setNamedItemNS05.xml/1.5/Fri Apr 3 02:47:56 2009//
+/systemId01.xml/1.6/Fri Apr 3 02:47:56 2009//
diff --git a/test/testcases/tests/level2/core/CVS/Repository b/test/testcases/tests/level2/core/CVS/Repository
new file mode 100644
index 0000000..daa629c
--- /dev/null
+++ b/test/testcases/tests/level2/core/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level2/core
diff --git a/test/testcases/tests/level2/core/CVS/Root b/test/testcases/tests/level2/core/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level2/core/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level2/core/CVS/Template b/test/testcases/tests/level2/core/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/core/CVS/Template
diff --git a/test/testcases/tests/level2/core/alltests.xml b/test/testcases/tests/level2/core/alltests.xml
new file mode 100644
index 0000000..26040b0
--- /dev/null
+++ b/test/testcases/tests/level2/core/alltests.xml
@@ -0,0 +1,301 @@
+<?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 suite SYSTEM "dom2.dtd">
+<suite xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="alltests">
+<metadata>
+<title>DOM Level 2 Core Test Suite</title>
+<creator>DOM Test Suite Project</creator>
+</metadata>
+ <suite.member href="attrgetownerelement01.xml"/>
+ <suite.member href="attrgetownerelement02.xml"/>
+ <suite.member href="attrgetownerelement03.xml"/>
+ <suite.member href="attrgetownerelement04.xml"/>
+ <suite.member href="attrgetownerelement05.xml"/>
+ <suite.member href="createAttributeNS01.xml"/>
+ <suite.member href="createAttributeNS02.xml"/>
+ <suite.member href="createAttributeNS03.xml"/>
+ <suite.member href="createAttributeNS04.xml"/>
+ <suite.member href="createAttributeNS05.xml"/>
+ <suite.member href="createAttributeNS06.xml"/>
+ <suite.member href="createDocument01.xml"/>
+ <suite.member href="createDocument02.xml"/>
+ <suite.member href="createDocument03.xml"/>
+ <suite.member href="createDocument04.xml"/>
+ <suite.member href="createDocument05.xml"/>
+ <suite.member href="createDocument06.xml"/>
+ <suite.member href="createDocument07.xml"/>
+ <suite.member href="createDocument08.xml"/>
+ <suite.member href="createDocumentType01.xml"/>
+ <suite.member href="createDocumentType02.xml"/>
+ <suite.member href="createDocumentType03.xml"/>
+ <suite.member href="createDocumentType04.xml"/>
+ <suite.member href="createElementNS01.xml"/>
+ <suite.member href="createElementNS02.xml"/>
+ <suite.member href="createElementNS03.xml"/>
+ <suite.member href="createElementNS04.xml"/>
+ <suite.member href="createElementNS05.xml"/>
+ <suite.member href="documentcreateattributeNS01.xml"/>
+ <suite.member href="documentcreateattributeNS02.xml"/>
+ <suite.member href="documentcreateattributeNS03.xml"/>
+ <suite.member href="documentcreateattributeNS04.xml"/>
+ <suite.member href="documentcreateattributeNS05.xml"/>
+ <suite.member href="documentcreateattributeNS06.xml"/>
+ <suite.member href="documentcreateattributeNS07.xml"/>
+ <suite.member href="documentcreateelementNS01.xml"/>
+ <suite.member href="documentcreateelementNS02.xml"/>
+ <suite.member href="documentcreateelementNS05.xml"/>
+ <suite.member href="documentcreateelementNS06.xml"/>
+ <suite.member href="documentgetelementbyid01.xml"/>
+ <suite.member href="documentgetelementsbytagnameNS01.xml"/>
+ <suite.member href="documentgetelementsbytagnameNS02.xml"/>
+ <suite.member href="documentgetelementsbytagnameNS03.xml"/>
+ <suite.member href="documentgetelementsbytagnameNS04.xml"/>
+ <suite.member href="documentgetelementsbytagnameNS05.xml"/>
+ <suite.member href="documentimportnode01.xml"/>
+ <suite.member href="documentimportnode02.xml"/>
+ <suite.member href="documentimportnode03.xml"/>
+ <suite.member href="documentimportnode04.xml"/>
+ <suite.member href="documentimportnode05.xml"/>
+ <suite.member href="documentimportnode06.xml"/>
+ <suite.member href="documentimportnode07.xml"/>
+ <suite.member href="documentimportnode08.xml"/>
+ <suite.member href="documentimportnode09.xml"/>
+ <suite.member href="documentimportnode10.xml"/>
+ <suite.member href="documentimportnode11.xml"/>
+ <suite.member href="documentimportnode12.xml"/>
+ <suite.member href="documentimportnode13.xml"/>
+ <suite.member href="documentimportnode14.xml"/>
+ <suite.member href="documentimportnode15.xml"/>
+ <suite.member href="documentimportnode17.xml"/>
+ <suite.member href="documentimportnode18.xml"/>
+ <suite.member href="documentimportnode19.xml"/>
+ <suite.member href="documentimportnode20.xml"/>
+ <suite.member href="documentimportnode21.xml"/>
+ <suite.member href="documentimportnode22.xml"/>
+ <suite.member href="documenttypeinternalSubset01.xml"/>
+ <suite.member href="documenttypepublicid01.xml"/>
+ <suite.member href="documenttypesystemid01.xml"/>
+ <suite.member href="domimplementationcreatedocument03.xml"/>
+ <suite.member href="domimplementationcreatedocument04.xml"/>
+ <suite.member href="domimplementationcreatedocument05.xml"/>
+ <suite.member href="domimplementationcreatedocument07.xml"/>
+ <suite.member href="domimplementationcreatedocumenttype01.xml"/>
+ <suite.member href="domimplementationcreatedocumenttype02.xml"/>
+ <suite.member href="domimplementationcreatedocumenttype04.xml"/>
+ <suite.member href="domimplementationfeaturecore.xml"/>
+ <suite.member href="domimplementationfeaturexmlversion2.xml"/>
+ <suite.member href="domimplementationhasfeature01.xml"/>
+ <suite.member href="domimplementationhasfeature02.xml"/>
+ <suite.member href="elementgetattributenodens01.xml"/>
+ <suite.member href="elementgetattributenodens02.xml"/>
+ <suite.member href="elementgetattributenodens03.xml"/>
+ <suite.member href="elementgetattributens02.xml"/>
+ <suite.member href="elementgetelementsbytagnamens02.xml"/>
+ <suite.member href="elementgetelementsbytagnamens04.xml"/>
+ <suite.member href="elementgetelementsbytagnamens05.xml"/>
+ <suite.member href="elementhasattribute01.xml"/>
+ <suite.member href="elementhasattribute02.xml"/>
+ <suite.member href="elementhasattribute03.xml"/>
+ <suite.member href="elementhasattribute04.xml"/>
+ <suite.member href="elementhasattributens01.xml"/>
+ <suite.member href="elementhasattributens02.xml"/>
+ <suite.member href="elementhasattributens03.xml"/>
+ <suite.member href="elementremoveattributens01.xml"/>
+ <suite.member href="elementsetattributenodens01.xml"/>
+ <suite.member href="elementsetattributenodens02.xml"/>
+ <suite.member href="elementsetattributenodens03.xml"/>
+ <suite.member href="elementsetattributenodens04.xml"/>
+ <suite.member href="elementsetattributenodens05.xml"/>
+ <suite.member href="elementsetattributenodens06.xml"/>
+ <suite.member href="elementsetattributens01.xml"/>
+ <suite.member href="elementsetattributens02.xml"/>
+ <suite.member href="elementsetattributens03.xml"/>
+ <suite.member href="elementsetattributens04.xml"/>
+ <suite.member href="elementsetattributens05.xml"/>
+ <suite.member href="elementsetattributens08.xml"/>
+ <suite.member href="elementsetattributensurinull.xml"/>
+ <suite.member href="getAttributeNS01.xml"/>
+ <suite.member href="getAttributeNS02.xml"/>
+ <suite.member href="getAttributeNS03.xml"/>
+ <suite.member href="getAttributeNS04.xml"/>
+ <suite.member href="getAttributeNS05.xml"/>
+ <suite.member href="getAttributeNodeNS01.xml"/>
+ <suite.member href="getAttributeNodeNS02.xml"/>
+ <suite.member href="getElementById01.xml"/>
+ <suite.member href="getElementById02.xml"/>
+ <suite.member href="getElementsByTagNameNS01.xml"/>
+ <suite.member href="getElementsByTagNameNS02.xml"/>
+ <suite.member href="getElementsByTagNameNS03.xml"/>
+ <suite.member href="getElementsByTagNameNS04.xml"/>
+ <suite.member href="getElementsByTagNameNS05.xml"/>
+ <suite.member href="getElementsByTagNameNS06.xml"/>
+ <suite.member href="getElementsByTagNameNS07.xml"/>
+ <suite.member href="getElementsByTagNameNS08.xml"/>
+ <suite.member href="getElementsByTagNameNS09.xml"/>
+ <suite.member href="getElementsByTagNameNS10.xml"/>
+ <suite.member href="getElementsByTagNameNS11.xml"/>
+ <suite.member href="getElementsByTagNameNS12.xml"/>
+ <suite.member href="getElementsByTagNameNS13.xml"/>
+ <suite.member href="getElementsByTagNameNS14.xml"/>
+ <suite.member href="getNamedItemNS01.xml"/>
+ <suite.member href="getNamedItemNS02.xml"/>
+ <suite.member href="getNamedItemNS03.xml"/>
+ <suite.member href="getNamedItemNS04.xml"/>
+ <suite.member href="hasAttribute01.xml"/>
+ <suite.member href="hasAttribute02.xml"/>
+ <suite.member href="hasAttribute03.xml"/>
+ <suite.member href="hasAttribute04.xml"/>
+ <suite.member href="hasAttributeNS01.xml"/>
+ <suite.member href="hasAttributeNS02.xml"/>
+ <suite.member href="hasAttributeNS03.xml"/>
+ <suite.member href="hasAttributeNS04.xml"/>
+ <suite.member href="hasAttributeNS05.xml"/>
+ <suite.member href="hasAttributes01.xml"/>
+ <suite.member href="hasAttributes02.xml"/>
+ <suite.member href="hc_entitiesremovenameditemns1.xml"/>
+ <suite.member href="hc_entitiessetnameditemns1.xml"/>
+ <suite.member href="hc_namednodemapinvalidtype1.xml"/>
+ <suite.member href="hc_nodedocumentfragmentnormalize1.xml"/>
+ <suite.member href="hc_nodedocumentfragmentnormalize2.xml"/>
+ <suite.member href="hc_notationsremovenameditemns1.xml"/>
+ <suite.member href="hc_notationssetnameditemns1.xml"/>
+ <suite.member href="importNode01.xml"/>
+ <suite.member href="importNode02.xml"/>
+ <suite.member href="importNode03.xml"/>
+ <suite.member href="importNode04.xml"/>
+ <suite.member href="importNode05.xml"/>
+ <suite.member href="importNode06.xml"/>
+ <suite.member href="importNode07.xml"/>
+ <suite.member href="importNode08.xml"/>
+ <suite.member href="importNode09.xml"/>
+ <suite.member href="importNode10.xml"/>
+ <suite.member href="importNode11.xml"/>
+ <suite.member href="importNode12.xml"/>
+ <suite.member href="importNode13.xml"/>
+ <suite.member href="importNode14.xml"/>
+ <suite.member href="importNode15.xml"/>
+ <suite.member href="importNode16.xml"/>
+ <suite.member href="importNode17.xml"/>
+ <suite.member href="internalSubset01.xml"/>
+ <suite.member href="isSupported01.xml"/>
+ <suite.member href="isSupported02.xml"/>
+ <suite.member href="isSupported04.xml"/>
+ <suite.member href="isSupported05.xml"/>
+ <suite.member href="isSupported06.xml"/>
+ <suite.member href="isSupported07.xml"/>
+ <suite.member href="isSupported09.xml"/>
+ <suite.member href="isSupported10.xml"/>
+ <suite.member href="isSupported11.xml"/>
+ <suite.member href="isSupported12.xml"/>
+ <suite.member href="isSupported13.xml"/>
+ <suite.member href="isSupported14.xml"/>
+ <suite.member href="localName01.xml"/>
+ <suite.member href="localName02.xml"/>
+ <suite.member href="localName03.xml"/>
+ <suite.member href="localName04.xml"/>
+ <suite.member href="namednodemapgetnameditemns01.xml"/>
+ <suite.member href="namednodemapgetnameditemns02.xml"/>
+ <suite.member href="namednodemapgetnameditemns03.xml"/>
+ <suite.member href="namednodemapgetnameditemns04.xml"/>
+ <suite.member href="namednodemapgetnameditemns05.xml"/>
+ <suite.member href="namednodemapgetnameditemns06.xml"/>
+ <suite.member href="namednodemapremovenameditemns01.xml"/>
+ <suite.member href="namednodemapremovenameditemns02.xml"/>
+ <suite.member href="namednodemapremovenameditemns03.xml"/>
+ <suite.member href="namednodemapremovenameditemns04.xml"/>
+ <suite.member href="namednodemapremovenameditemns05.xml"/>
+ <suite.member href="namednodemapremovenameditemns06.xml"/>
+ <suite.member href="namednodemapremovenameditemns07.xml"/>
+ <suite.member href="namednodemapremovenameditemns08.xml"/>
+ <suite.member href="namednodemapremovenameditemns09.xml"/>
+ <suite.member href="namednodemapsetnameditemns01.xml"/>
+ <suite.member href="namednodemapsetnameditemns02.xml"/>
+ <suite.member href="namednodemapsetnameditemns03.xml"/>
+ <suite.member href="namednodemapsetnameditemns04.xml"/>
+ <suite.member href="namednodemapsetnameditemns05.xml"/>
+ <suite.member href="namednodemapsetnameditemns06.xml"/>
+ <suite.member href="namednodemapsetnameditemns07.xml"/>
+ <suite.member href="namednodemapsetnameditemns08.xml"/>
+ <suite.member href="namednodemapsetnameditemns09.xml"/>
+ <suite.member href="namednodemapsetnameditemns10.xml"/>
+ <suite.member href="namednodemapsetnameditemns11.xml"/>
+ <suite.member href="namespaceURI01.xml"/>
+ <suite.member href="namespaceURI02.xml"/>
+ <suite.member href="namespaceURI03.xml"/>
+ <suite.member href="namespaceURI04.xml"/>
+ <suite.member href="nodegetlocalname03.xml"/>
+ <suite.member href="nodegetnamespaceuri03.xml"/>
+ <suite.member href="nodegetownerdocument01.xml"/>
+ <suite.member href="nodegetownerdocument02.xml"/>
+ <suite.member href="nodegetprefix03.xml"/>
+ <suite.member href="nodehasattributes01.xml"/>
+ <suite.member href="nodehasattributes02.xml"/>
+ <suite.member href="nodehasattributes03.xml"/>
+ <suite.member href="nodehasattributes04.xml"/>
+ <suite.member href="nodeissupported01.xml"/>
+ <suite.member href="nodeissupported02.xml"/>
+ <suite.member href="nodeissupported03.xml"/>
+ <suite.member href="nodeissupported04.xml"/>
+ <suite.member href="nodeissupported05.xml"/>
+ <suite.member href="nodenormalize01.xml"/>
+ <suite.member href="nodesetprefix01.xml"/>
+ <suite.member href="nodesetprefix02.xml"/>
+ <suite.member href="nodesetprefix03.xml"/>
+ <suite.member href="nodesetprefix04.xml"/>
+ <suite.member href="nodesetprefix05.xml"/>
+ <suite.member href="nodesetprefix06.xml"/>
+ <suite.member href="nodesetprefix07.xml"/>
+ <suite.member href="nodesetprefix08.xml"/>
+ <suite.member href="nodesetprefix09.xml"/>
+ <suite.member href="normalize01.xml"/>
+ <suite.member href="ownerDocument01.xml"/>
+ <suite.member href="ownerElement01.xml"/>
+ <suite.member href="ownerElement02.xml"/>
+ <suite.member href="prefix01.xml"/>
+ <suite.member href="prefix02.xml"/>
+ <suite.member href="prefix03.xml"/>
+ <suite.member href="prefix04.xml"/>
+ <suite.member href="prefix05.xml"/>
+ <suite.member href="prefix06.xml"/>
+ <suite.member href="prefix07.xml"/>
+ <suite.member href="prefix08.xml"/>
+ <suite.member href="prefix09.xml"/>
+ <suite.member href="prefix10.xml"/>
+ <suite.member href="prefix11.xml"/>
+ <suite.member href="publicId01.xml"/>
+ <suite.member href="removeAttributeNS01.xml"/>
+ <suite.member href="removeAttributeNS02.xml"/>
+ <suite.member href="removeNamedItemNS01.xml"/>
+ <suite.member href="removeNamedItemNS02.xml"/>
+ <suite.member href="removeNamedItemNS03.xml"/>
+ <suite.member href="setAttributeNS01.xml"/>
+ <suite.member href="setAttributeNS02.xml"/>
+ <suite.member href="setAttributeNS03.xml"/>
+ <suite.member href="setAttributeNS04.xml"/>
+ <suite.member href="setAttributeNS05.xml"/>
+ <suite.member href="setAttributeNS06.xml"/>
+ <suite.member href="setAttributeNS07.xml"/>
+ <suite.member href="setAttributeNS09.xml"/>
+ <suite.member href="setAttributeNS10.xml"/>
+ <suite.member href="setAttributeNodeNS01.xml"/>
+ <suite.member href="setAttributeNodeNS02.xml"/>
+ <suite.member href="setAttributeNodeNS03.xml"/>
+ <suite.member href="setAttributeNodeNS04.xml"/>
+ <suite.member href="setAttributeNodeNS05.xml"/>
+ <suite.member href="setNamedItemNS01.xml"/>
+ <suite.member href="setNamedItemNS02.xml"/>
+ <suite.member href="setNamedItemNS03.xml"/>
+ <suite.member href="setNamedItemNS04.xml"/>
+ <suite.member href="setNamedItemNS05.xml"/>
+ <suite.member href="systemId01.xml"/>
+</suite>
diff --git a/test/testcases/tests/level2/core/attrgetownerelement01.xml b/test/testcases/tests/level2/core/attrgetownerelement01.xml
new file mode 100644
index 0000000..c589667
--- /dev/null
+++ b/test/testcases/tests/level2/core/attrgetownerelement01.xml
@@ -0,0 +1,52 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="attrgetownerelement01">
+<metadata>
+<title>attrgetownerelement01</title>
+<creator>IBM</creator>
+<description>
+ The "getOwnerElement()" will return the Element node this attribute is attached to or
+ null if this attribute is not in use.
+
+ Retreive the default attribute defaultAttr and check its owner element. Verify if the name
+ the nodeName of the returned ownerElement is emp:employee.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Attr-ownerElement"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attr" type="Attr"/>
+<var name="element" type="Element"/>
+<var name="ownerElement" type="Element"/>
+<var name="ownerElementName" type="DOMString"/>
+<var name="elementList" type="NodeList"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"http://www.nist.gov"' localName='"employee"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<getNamedItemNS var="attr" obj="attributes" namespaceURI="nullNS" localName='"defaultAttr"'/>
+<ownerElement var="ownerElement" obj="attr"/>
+<nodeName var="ownerElementName" obj="ownerElement"/>
+<assertEquals actual="ownerElementName" expected='"emp:employee"' id="attrgetownerelement01" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/attrgetownerelement02.xml b/test/testcases/tests/level2/core/attrgetownerelement02.xml
new file mode 100644
index 0000000..90ba894
--- /dev/null
+++ b/test/testcases/tests/level2/core/attrgetownerelement02.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="attrgetownerelement02">
+<metadata>
+<title>attrgetownerelement02</title>
+<creator>IBM</creator>
+<description>
+ The "getOwnerElement()" will return the Element node this attribute
+ is attached to or null if this attribute is not in use.
+
+ Create a new element and attribute node, attach the attribute to the element.
+ Check the value of owner element of the new attribute node
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Attr-ownerElement"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="ownerElement" type="Element"/>
+<var name="ownerElementName" type="DOMString"/>
+<var name="attr" type="Attr"/>
+<var name="newAttr" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createElement var="element" obj="doc" tagName='"root"'/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/DOM/L1"' qualifiedName='"L1:att"'/>
+<setAttributeNodeNS var="newAttr" obj="element" newAttr="attr"/>
+<ownerElement var="ownerElement" obj="attr"/>
+<nodeName var="ownerElementName" obj="ownerElement"/>
+<assertEquals actual="ownerElementName" expected='"root"' id="attrgetownerelement02" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level2/core/attrgetownerelement03.xml b/test/testcases/tests/level2/core/attrgetownerelement03.xml
new file mode 100644
index 0000000..586685f
--- /dev/null
+++ b/test/testcases/tests/level2/core/attrgetownerelement03.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="attrgetownerelement03">
+<metadata>
+<title>attrgetownerelement03</title>
+<creator>IBM</creator>
+<description>
+ The "getOwnerElement()" will return the Element node this attribute
+ is attached to or null if this attribute is not in use.
+
+ Create a new attribute node for this document node. Since the newly attribute is
+ not it use its owner element should be null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Attr-ownerElement"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="ownerElement" type="Node"/>
+<var name="attr" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/DOM"' qualifiedName='"dom:attr"'/>
+<ownerElement var="ownerElement" obj="attr"/>
+<assertNull actual="ownerElement" id="attrgetownerelement03"/>
+</test>
diff --git a/test/testcases/tests/level2/core/attrgetownerelement04.xml b/test/testcases/tests/level2/core/attrgetownerelement04.xml
new file mode 100644
index 0000000..8b69969
--- /dev/null
+++ b/test/testcases/tests/level2/core/attrgetownerelement04.xml
@@ -0,0 +1,40 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="attrgetownerelement04">
+<metadata>
+<title>attrgetownerelement04</title>
+<creator>IBM</creator>
+<description>
+ The "getOwnerElement()" will return the Element node this attribute is attached to or
+ null if this attribute is not in use.
+ Import an attribute node to another document. If an Attr node is imported, its
+ ownerElement attribute should be set to null. Verify if the ownerElement has been set
+ to null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Attr-ownerElement"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docImp" type="Document"/>
+<var name="ownerElement" type="Node"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="attrImp" type="Attr"/> <var name="addresses" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<load var="docImp" href="staff" willBeModified="false"/> <getElementsByTagNameNS var="addresses" obj="doc" interface="Document" namespaceURI='"http://www.nist.gov"' localName='"address"'/> <item var="element" obj="addresses" interface="NodeList" index="1"/> <assertNotNull actual="element" id="empAddressNotNull"/>
+<getAttributeNodeNS var="attr" obj="element" namespaceURI='"http://www.nist.gov"' localName='"zone"'/>
+<importNode var="attrImp" obj="docImp" importedNode="attr" deep="true"/>
+<ownerElement var="ownerElement" obj="attrImp"/>
+<assertNull actual="ownerElement" id="attrgetownerelement04"/>
+</test>
diff --git a/test/testcases/tests/level2/core/attrgetownerelement05.xml b/test/testcases/tests/level2/core/attrgetownerelement05.xml
new file mode 100644
index 0000000..c9eed81
--- /dev/null
+++ b/test/testcases/tests/level2/core/attrgetownerelement05.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="attrgetownerelement05">
+<metadata>
+<title>attrgetownerelement05</title>
+<creator>IBM</creator>
+<description>
+ The "getOwnerElement()" will return the Element node this attribute is attached to
+ or null if this attribute is not in use.
+
+ Retreive an element and its attributes. Then remove the element and check the name of
+ the ownerElement of attribute of the attribute "street".
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Attr-ownerElement"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Node"/>
+<var name="ownerElement" type="Element"/>
+<var name="parentElement" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="ownerElementName" type="DOMString"/>
+<var name="attr" type="Attr"/>
+<var name="removedChild" type="Node"/>
+<var name="nodeMap" type="NamedNodeMap"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"*"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<parentNode interface="Node" var="parentElement" obj="element"/>
+<attributes var="nodeMap" obj="element"/>
+<removeChild var="removedChild" obj="parentElement" oldChild="element"/>
+<getNamedItemNS var="attr" obj="nodeMap" namespaceURI="nullNS" localName='"street"'/>
+<ownerElement var="ownerElement" obj="attr"/>
+<nodeName var="ownerElementName" obj="ownerElement"/>
+<assertEquals actual="ownerElementName" expected='"address"' id="attrgetownerelement05" ignoreCase="false"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/createAttributeNS01.xml b/test/testcases/tests/level2/core/createAttributeNS01.xml
new file mode 100644
index 0000000..d50de36
--- /dev/null
+++ b/test/testcases/tests/level2/core/createAttributeNS01.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createAttributeNS01">
+<metadata>
+<title>createAttributeNS01</title>
+<creator>NIST</creator>
+<description>
+ The "createAttributeNS(namespaceURI,qualifiedName)" method for a
+ Document should raise NAMESPACE_ERR DOMException
+ if qualifiedName is malformed.
+
+ Invoke method createAttributeNS(namespaceURI,qualifiedName) on
+ the XMLNS Document with namespaceURI being "http://www.ecommerce.org/",
+ qualifiedName as "prefix::local". Method should raise
+ NAMESPACE_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.ecommerce.org/&quot;"/>
+<var name="malformedName" type="DOMString" value="&quot;prefix::local&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI="namespaceURI" qualifiedName="malformedName"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createAttributeNS02.xml b/test/testcases/tests/level2/core/createAttributeNS02.xml
new file mode 100644
index 0000000..3823f0d
--- /dev/null
+++ b/test/testcases/tests/level2/core/createAttributeNS02.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createAttributeNS02">
+<metadata>
+<title>createAttributeNS02</title>
+<creator>NIST</creator>
+<description>
+ The "createAttributeNS(namespaceURI,qualifiedName)" method for a
+ Document should raise NAMESPACE_ERR DOMException
+ if qualifiedName has a prefix and namespaceURI is null.
+
+ Invoke method createAttributeNS(namespaceURI,qualifiedName) on this document
+ with namespaceURI being null and qualifiedName contains the prefix "person".
+ Method should raise NAMESPACE_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" isNull="true"/>
+<var name="qualifiedName" type="DOMString" value="&quot;prefix:local&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createAttributeNS03.xml b/test/testcases/tests/level2/core/createAttributeNS03.xml
new file mode 100644
index 0000000..df424df
--- /dev/null
+++ b/test/testcases/tests/level2/core/createAttributeNS03.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createAttributeNS03">
+<metadata>
+<title>createAttributeNS03</title>
+<creator>NIST</creator>
+<description>
+ The "createAttributeNS(namespaceURI,qualifiedName)" method for a
+ Document should raise INVALID_CHARACTER_ERR DOMException
+ if qualifiedName contains an illegal character.
+
+ Invoke method createAttributeNS(namespaceURI,qualifiedName) on this document
+ with qualifiedName containing an illegal character from illegalChars[].
+ Method should raise INVALID_CHARACTER_ERR DOMException for all
+ characters in illegalChars[].
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.wedding.com/&quot;"/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="doc" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<var name="illegalQNames" type="List">
+<member>"person:{"</member>
+<member>"person:}"</member>
+<member>"person:~"</member>
+<member>"person:'"</member>
+<member>"person:!"</member>
+<member>"person:@"</member>
+<member>"person:#"</member>
+<member>"person:$"</member>
+<member>"person:%"</member>
+<member>"person:^"</member>
+<member>"person:&amp;"</member>
+<member>"person:*"</member>
+<member>"person:("</member>
+<member>"person:)"</member>
+<member>"person:+"</member>
+<member>"person:="</member>
+<member>"person:["</member>
+<member>"person:]"</member>
+<member>"person:\\"</member>
+<member>"person:/"</member>
+<member>"person:;"</member>
+<member>"person:`"</member>
+<member>"person:&lt;"</member>
+<member>"person:&gt;"</member>
+<member>"person:,"</member>
+<member>"person:a "</member>
+<member>"person:\""</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<for-each collection="illegalQNames" member="qualifiedName">
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/createAttributeNS04.xml b/test/testcases/tests/level2/core/createAttributeNS04.xml
new file mode 100644
index 0000000..d14a3ae
--- /dev/null
+++ b/test/testcases/tests/level2/core/createAttributeNS04.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createAttributeNS04">
+<metadata>
+<title>createAttributeNS04</title>
+<creator>NIST</creator>
+<description>
+ The "createAttributeNS(namespaceURI,qualifiedName)" method for a
+ Document should raise NAMESPACE_ERR DOMException
+ if qualifiedName has the "xml" prefix and namespaceURI is different
+ from "http://www.w3.org/XML/1998/namespace".
+
+ Invoke method createAttributeNS(namespaceURI,qualifiedName) on this document
+ with qualifiedName being "xml:attr1 and namespaceURI equals
+ the string "http://www.w3.org/XML/1998/namespaces" (which differs from the required
+ string "http://www.w3.org/XML/1998/namespace").
+ Method should raise NAMESPACE_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.w3.org/XML/1998/namespaces&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;xml:attr1&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createAttributeNS05.xml b/test/testcases/tests/level2/core/createAttributeNS05.xml
new file mode 100644
index 0000000..9713364
--- /dev/null
+++ b/test/testcases/tests/level2/core/createAttributeNS05.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createAttributeNS05">
+<metadata>
+<title>createAttributeNS05</title>
+<creator>NIST</creator>
+<description>
+ The "createAttributeNS(namespaceURI,qualifiedName)" method for a
+ Document should return a new Attr object given that all parameters are
+ valid and correctly formed.
+
+ Invoke method createAttributeNS(namespaceURI,qualifiedName) on this document with
+ parameters equal "http://www.ecommerce.org/" and "ecom:local"
+ respectively. Method should return a new Attr object whose name is "ecom:local".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1112119403"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.ecommerce.org/&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;econm:local&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<name interface="Attr" obj="newAttr" var="attrName"/>
+<assertEquals actual="attrName" expected="qualifiedName" id="throw_Equals" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/createAttributeNS06.xml b/test/testcases/tests/level2/core/createAttributeNS06.xml
new file mode 100644
index 0000000..133136d
--- /dev/null
+++ b/test/testcases/tests/level2/core/createAttributeNS06.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createAttributeNS06">
+<metadata>
+<title>createAttributeNS06</title>
+<creator>Curt Arnold</creator>
+<description>
+Document.createAttributeNS with an empty qualified name should cause an INVALID_CHARACTER_ERR.
+</description>
+<date qualifier="created">2004-03-09</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=525"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value='"http://www.example.com/"'/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="doc" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI="namespaceURI" qualifiedName='""'/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocument01.xml b/test/testcases/tests/level2/core/createDocument01.xml
new file mode 100644
index 0000000..453a8a8
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocument01.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocument01">
+<metadata>
+<title>createDocument01</title>
+<creator>NIST</creator>
+<description>
+ The "createDocument(namespaceURI,qualifiedName,doctype)" method for a
+ DOMImplementation should raise NAMESPACE_ERR DOMException
+ if parameter qualifiedName is malformed.
+
+ Retrieve the DOMImplementation on the XMLNS Document.
+ Invoke method createDocument(namespaceURI,qualifiedName,doctype)
+ on the retrieved DOMImplementation with namespaceURI being
+ the literal string "http://www.ecommerce.org/", qualifiedName as
+ "prefix::local", and doctype as null. Method should raise
+ NAMESPACE_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Level-2-Core-DOM-createDocument')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.ecommerce.org/&quot;"/>
+<var name="malformedName" type="DOMString" value="&quot;prefix::local&quot;"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="aNewDoc" type="Document"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<createDocument obj="domImpl" var="aNewDoc" namespaceURI="namespaceURI" qualifiedName="malformedName" doctype="docType"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocument02.xml b/test/testcases/tests/level2/core/createDocument02.xml
new file mode 100644
index 0000000..983aaec
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocument02.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocument02">
+<metadata>
+<title>createDocument02</title>
+<creator>NIST</creator>
+<description>
+ The "createDocument(namespaceURI,qualifiedName,doctype)" method for a
+ DOMImplementation should raise NAMESPACE_ERR DOMException
+ if qualifiedName has a prefix and namespaceURI is null.
+
+ Invoke method createDocument(namespaceURI,qualifiedName,doctype) on
+ this domimplementation with namespaceURI being null and qualifiedName
+ equals "k:local". Method should raise NAMESPACE_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Level-2-Core-DOM-createDocument')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" isNull="true"/>
+<var name="qualifiedName" type="DOMString" value="&quot;k:local&quot;"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="aNewDoc" type="Document"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<createDocument obj="domImpl" var="aNewDoc" namespaceURI="namespaceURI" qualifiedName="qualifiedName" doctype="docType"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocument03.xml b/test/testcases/tests/level2/core/createDocument03.xml
new file mode 100644
index 0000000..d3a42b2
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocument03.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocument03">
+<metadata>
+<title>createDocument03</title>
+<creator>NIST</creator>
+<description>
+ The "createDocument(namespaceURI,qualifiedName,doctype)" method for a
+ DOMImplementation should raise WRONG_DOCUMENT_ERR DOMException
+ if parameter doctype has been used with a different document.
+
+ Invoke method createDocument(namespaceURI,qualifiedName,doctype) on
+ this domimplementation where doctype is the type of this document.
+ Method should raise WRONG_DOCUMENT_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Level-2-Core-DOM-createDocument')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.ecommerce.org/schema&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;namespaceURI:x&quot;"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="aNewDoc" type="Document"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<implementation obj="doc" var="domImpl"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<createDocument obj="domImpl" var="aNewDoc" namespaceURI="namespaceURI" qualifiedName="qualifiedName" doctype="docType"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocument04.xml b/test/testcases/tests/level2/core/createDocument04.xml
new file mode 100644
index 0000000..c686b47
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocument04.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocument04">
+<metadata>
+<title>createDocument04</title>
+<creator>NIST</creator>
+<description>
+ The "createDocument(namespaceURI,qualifiedName,doctype)" method for a
+ DOMImplementation should raise WRONG_DOCUMENT_ERR DOMException
+ if parameter doctype was created from a different implementation.
+
+ Invoke method createDocument(namespaceURI,qualifiedName,doctype) on
+ a domimplementation that is different from this domimplementation.
+ Doctype is the type of this document.
+ Method should raise WRONG_DOCUMENT_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Level-2-Core-DOM-createDocument')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.ecommerce.org/schema&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;namespaceURI:x&quot;"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="aNewDoc" type="Document"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<load var="aNewDoc" href="staffNS" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<implementation obj="aNewDoc" var="domImpl"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<createDocument obj="domImpl" var="aNewDoc" namespaceURI="namespaceURI" qualifiedName="qualifiedName" doctype="docType"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocument05.xml b/test/testcases/tests/level2/core/createDocument05.xml
new file mode 100644
index 0000000..cbdae7b
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocument05.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocument05">
+<metadata>
+<title>createDocument05</title>
+<creator>NIST</creator>
+<description>
+ The "createDocument(namespaceURI,qualifiedName,doctype)" method for a
+ DOMImplementation should raise INVALID_CHARACTER_ERR DOMException
+ if parameter qualifiedName contains an illegal character.
+
+ Invoke method createDocument(namespaceURI,qualifiedName,doctype) on
+ this domimplementation with namespaceURI equals "http://www.ecommerce.org/schema",
+ doctype is null and qualifiedName contains an illegal character from
+ illegalChars[]. Method should raise INVALID_CHARACTER_ERR DOMException
+ for all characters in illegalChars[].
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.ecommerce.org/schema&quot;"/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="aNewDoc" type="Document"/>
+<var name="charact" type="DOMString"/>
+<var name="illegalQNames" type="List">
+<member>"namespaceURI:{"</member>
+<member>"namespaceURI:}"</member>
+<member>"namespaceURI:~"</member>
+<member>"namespaceURI:'"</member>
+<member>"namespaceURI:!"</member>
+<member>"namespaceURI:@"</member>
+<member>"namespaceURI:#"</member>
+<member>"namespaceURI:$"</member>
+<member>"namespaceURI:%"</member>
+<member>"namespaceURI:^"</member>
+<member>"namespaceURI:&amp;"</member>
+<member>"namespaceURI:*"</member>
+<member>"namespaceURI:("</member>
+<member>"namespaceURI:)"</member>
+<member>"namespaceURI:+"</member>
+<member>"namespaceURI:="</member>
+<member>"namespaceURI:["</member>
+<member>"namespaceURI:]"</member>
+<member>"namespaceURI:\\"</member>
+<member>"namespaceURI:/"</member>
+<member>"namespaceURI:;"</member>
+<member>"namespaceURI:`"</member>
+<member>"namespaceURI:&lt;"</member>
+<member>"namespaceURI:&gt;"</member>
+<member>"namespaceURI:,"</member>
+<member>"namespaceURI:a "</member>
+<member>"namespaceURI:\""</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<for-each collection="illegalQNames" member="qualifiedName">
+<implementation obj="doc" var="domImpl"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createDocument obj="domImpl" var="aNewDoc" namespaceURI="namespaceURI" qualifiedName="qualifiedName" doctype="docType"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocument06.xml b/test/testcases/tests/level2/core/createDocument06.xml
new file mode 100644
index 0000000..30000ee
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocument06.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocument06">
+<metadata>
+<title>createDocument06</title>
+<creator>NIST</creator>
+<description>
+ The "createDocument(namespaceURI,qualifiedName,doctype)" method for a
+ DOMImplementation should raise NAMESPACE_ERR DOMException
+ if qualifiedName has the "xml" prefix and namespaceURI different from
+ "http://www.w3.org/XML/1998/namespace"
+
+ Invoke method createDocument(namespaceURI,qualifiedName,doctype) on
+ this domimplementation with qualifiedName "xml:local"
+ and namespaceURI as the string
+ "http://www.ecommerce.org/schema" (which is different from the required
+ "http://www.w3.org/XML/1998/namespace"). Method should raise
+ NAMESPACE_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Level-2-Core-DOM-createDocument')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://ecommerce.org/schema&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;xml:local&quot;"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="aNewDoc" type="Document"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<createDocument obj="domImpl" var="aNewDoc" namespaceURI="namespaceURI" qualifiedName="qualifiedName" doctype="docType"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocument07.xml b/test/testcases/tests/level2/core/createDocument07.xml
new file mode 100644
index 0000000..76b1b69
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocument07.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocument07">
+<metadata>
+<title>createDocument07</title>
+<creator>NIST</creator>
+<description>
+ The "createDocument(namespaceURI,qualifiedName,doctype)" method for a
+ DOMImplementation should return a new xml Document object of the
+ specified type with its document element given that all parameters are
+ valid and correctly formed.
+
+ Invoke method createDocument(namespaceURI,qualifiedName,doctype) on
+ this domimplementation. namespaceURI is "http://www.ecommerce.org/schema"
+ qualifiedName is "y:x" and doctype is null.
+ Method should return a new xml Document as specified by the listed parameters.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.ecommerce.org/schema&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;y:x&quot;"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="aNewDoc" type="Document"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<createDocument obj="domImpl" var="aNewDoc" namespaceURI="namespaceURI" qualifiedName="qualifiedName" doctype="docType"/>
+<nodeName var="nodeName" obj="aNewDoc"/>
+<nodeValue var="nodeValue" obj="aNewDoc"/>
+<assertEquals actual="nodeName" expected='"#document"' id="nodeName" ignoreCase="false"/>
+<assertNull actual="nodeValue" id="nodeValue"/>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocument08.xml b/test/testcases/tests/level2/core/createDocument08.xml
new file mode 100644
index 0000000..efe7cd7
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocument08.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocument08">
+<metadata>
+<title>createDocument08</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementation.createDocument with an empty qualified name should cause an INVALID_CHARACTER_ERR.
+</description>
+<date qualifier="created">2004-03-09</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=525"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value='"http://www.example.org/schema"'/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="aNewDoc" type="Document"/>
+<var name="charact" type="DOMString"/>
+<implementation var="domImpl"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createDocument obj="domImpl" var="aNewDoc" namespaceURI="namespaceURI" qualifiedName='""' doctype="docType"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocumentType01.xml b/test/testcases/tests/level2/core/createDocumentType01.xml
new file mode 100644
index 0000000..618c975
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocumentType01.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocumentType01">
+<metadata>
+<title>createDocumentType01</title>
+<creator>NIST</creator>
+<description>
+ The "createDocumentType(qualifiedName,publicId,systemId)" method for a
+ DOMImplementation should raise NAMESPACE_ERR DOMException if
+ qualifiedName is malformed.
+
+ Retrieve the DOMImplementation on the XMLNS Document.
+ Invoke method createDocumentType(qualifiedName,publicId,systemId)
+ on the retrieved DOMImplementation with qualifiedName being the literal
+ string "prefix::local", publicId as "STAFF", and systemId as "staff".
+ Method should raise NAMESPACE_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocType"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Level-2-Core-DOM-createDocType')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="publicId" type="DOMString" value="&quot;STAFF&quot;"/>
+<var name="systemId" type="DOMString" value="&quot;staff.xml&quot;"/>
+<var name="malformedName" type="DOMString" value="&quot;prefix::local&quot;"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newType" type="DocumentType"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<createDocumentType obj="domImpl" var="newType" publicId="publicId" qualifiedName="malformedName" systemId="systemId"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocumentType02.xml b/test/testcases/tests/level2/core/createDocumentType02.xml
new file mode 100644
index 0000000..a64f1c1
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocumentType02.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocumentType02">
+<metadata>
+<title>createDocumentType02</title>
+<creator>NIST</creator>
+<description>
+ The "createDocumentType(qualifiedName,publicId,systemId)" method for a
+ DOMImplementation should raise INVALID_CHARACTER_ERR DOMException if
+ qualifiedName contains an illegal character.
+
+ Invoke method createDocumentType(qualifiedName,publicId,systemId) on
+ this domimplementation with qualifiedName containing an illegal character
+ from illegalChars[]. Method should raise INVALID_CHARACTER_ERR
+ DOMException for all characters in illegalChars[].
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocType"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Level-2-Core-DOM-createDocType')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+</metadata>
+<var name="publicId" type="DOMString" value="&quot;http://www.localhost.com/&quot;"/>
+<var name="systemId" type="DOMString" value="&quot;myDoc.dtd&quot;"/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="illegalQNames" type="List">
+<member>"edi:{"</member>
+<member>"edi:}"</member>
+<member>"edi:~"</member>
+<member>"edi:'"</member>
+<member>"edi:!"</member>
+<member>"edi:@"</member>
+<member>"edi:#"</member>
+<member>"edi:$"</member>
+<member>"edi:%"</member>
+<member>"edi:^"</member>
+<member>"edi:&amp;"</member>
+<member>"edi:*"</member>
+<member>"edi:("</member>
+<member>"edi:)"</member>
+<member>"edi:+"</member>
+<member>"edi:="</member>
+<member>"edi:["</member>
+<member>"edi:]"</member>
+<member>"edi:\\"</member>
+<member>"edi:/"</member>
+<member>"edi:;"</member>
+<member>"edi:`"</member>
+<member>"edi:&lt;"</member>
+<member>"edi:&gt;"</member>
+<member>"edi:,"</member>
+<member>"edi:a "</member>
+<member>"edi:\""</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<for-each collection="illegalQNames" member="qualifiedName">
+<implementation obj="doc" var="domImpl"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createDocumentType obj="domImpl" var="docType" qualifiedName="qualifiedName" publicId="publicId" systemId="systemId"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocumentType03.xml b/test/testcases/tests/level2/core/createDocumentType03.xml
new file mode 100644
index 0000000..45f4a81
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocumentType03.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocumentType03">
+<metadata>
+<title>createDocumentType03</title>
+<creator>NIST</creator>
+<description>
+ The "createDocumentType(qualifiedName,publicId,systemId)" method for a
+ DOMImplementation should return a new DocumentType node
+ given that qualifiedName is valid and correctly formed.
+
+ Invoke method createDocumentType(qualifiedName,publicId,systemId) on
+ this domimplementation with qualifiedName "prefix:myDoc".
+ Method should return a new DocumentType node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocType"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://ecommerce.org/schema&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;prefix:myDoc&quot;"/>
+<var name="publicId" type="DOMString" value="&quot;http://www.localhost.com&quot;"/>
+<var name="systemId" type="DOMString" value="&quot;myDoc.dtd&quot;"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newType" type="DocumentType" isNull="true"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<createDocumentType obj="domImpl" var="newType" qualifiedName="qualifiedName" publicId="publicId" systemId="systemId"/>
+<nodeName var="nodeName" obj="newType"/>
+<assertEquals actual="nodeName" expected='"prefix:myDoc"' ignoreCase="false" id="nodeName"/>
+<nodeValue var="nodeValue" obj="newType"/>
+<assertNull actual="nodeValue" id="nodeValue"/>
+</test>
diff --git a/test/testcases/tests/level2/core/createDocumentType04.xml b/test/testcases/tests/level2/core/createDocumentType04.xml
new file mode 100644
index 0000000..59f1b98
--- /dev/null
+++ b/test/testcases/tests/level2/core/createDocumentType04.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createDocumentType04">
+<metadata>
+<title>createDocumentType04</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementation.createDocumentType with an empty name should cause an INVALID_CHARACTER_ERR.
+</description>
+<date qualifier="created">2004-03-09</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocType"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Level-2-Core-DOM-createDocType')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=525"/>
+</metadata>
+<var name="publicId" type="DOMString" value='"http://www.example.com/"'/>
+<var name="systemId" type="DOMString" value='"myDoc.dtd"'/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<implementation var="domImpl"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createDocumentType obj="domImpl" var="docType" qualifiedName='""' publicId="publicId" systemId="systemId"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createElementNS01.xml b/test/testcases/tests/level2/core/createElementNS01.xml
new file mode 100644
index 0000000..624971b
--- /dev/null
+++ b/test/testcases/tests/level2/core/createElementNS01.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createElementNS01">
+<metadata>
+<title>createElementNS01</title>
+<creator>NIST</creator>
+<description>
+ The "createElementNS(namespaceURI,qualifiedName)" method for a
+ Document should raise NAMESPACE_ERR DOMException if
+ qualifiedName is malformed.
+
+ Invoke method createElementNS(namespaceURI,qualifiedName) on
+ the XMLNS Document with namespaceURI being the literal string
+ "http://www.ecommerce.org/", and qualifiedName as "prefix::local".
+ Method should raise NAMESPACE_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrElNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrElNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.ecommerce.org/&quot;"/>
+<var name="malformedName" type="DOMString" value="&quot;prefix::local&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newElement" type="Element"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<createElementNS obj="doc" var="newElement" namespaceURI="namespaceURI" qualifiedName="malformedName"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createElementNS02.xml b/test/testcases/tests/level2/core/createElementNS02.xml
new file mode 100644
index 0000000..239d277
--- /dev/null
+++ b/test/testcases/tests/level2/core/createElementNS02.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createElementNS02">
+<metadata>
+<title>createElementNS02</title>
+<creator>NIST</creator>
+<description>
+ The "createElementNS(namespaceURI,qualifiedName)" method for a
+ Document should raise NAMESPACE_ERR DOMException if
+ qualifiedName has a prefix and namespaceURI is null.
+
+ Invoke method createElementNS(namespaceURI,qualifiedName) on this document
+ with namespaceURI being null and qualifiedName being "elem:attr1".
+ Method should raise NAMESPACE_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrElNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrElNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" isNull="true"/>
+<var name="qualifiedName" type="DOMString" value="&quot;prefix:local&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newElement" type="Element"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<createElementNS obj="doc" var="newElement" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createElementNS03.xml b/test/testcases/tests/level2/core/createElementNS03.xml
new file mode 100644
index 0000000..dc83604
--- /dev/null
+++ b/test/testcases/tests/level2/core/createElementNS03.xml
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createElementNS03">
+<metadata>
+<title>createElementNS03</title>
+<creator>NIST</creator>
+<description>
+ The "createElementNS(namespaceURI,qualifiedName)" method for a
+ Document should raise INVALID_CHARACTER_ERR DOMException if
+ qualifiedName contains an illegal character.
+
+ Invoke method createElementNS(namespaceURI,qualifiedName) on this document
+ with qualifiedName containing an illegal character from illegalChars[].
+ Method should raise INVALID_CHARACTER_ERR DOMException for all characters
+ in illegalChars[].
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrElNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrElNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.wedding.com/&quot;"/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="doc" type="Document"/>
+<var name="done" type="boolean"/>
+<var name="newElement" type="Element"/>
+<var name="charact" type="DOMString"/>
+<var name="illegalQNames" type="List">
+<member>"person:{"</member>
+<member>"person:}"</member>
+<member>"person:~"</member>
+<member>"person:'"</member>
+<member>"person:!"</member>
+<member>"person:@"</member>
+<member>"person:#"</member>
+<member>"person:$"</member>
+<member>"person:%"</member>
+<member>"person:^"</member>
+<member>"person:&amp;"</member>
+<member>"person:*"</member>
+<member>"person:("</member>
+<member>"person:)"</member>
+<member>"person:+"</member>
+<member>"person:="</member>
+<member>"person:["</member>
+<member>"person:]"</member>
+<member>"person:\\"</member>
+<member>"person:/"</member>
+<member>"person:;"</member>
+<member>"person:`"</member>
+<member>"person:&lt;"</member>
+<member>"person:&gt;"</member>
+<member>"person:,"</member>
+<member>"person:a "</member>
+<member>"person:\""</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<for-each collection="illegalQNames" member="qualifiedName">
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createElementNS obj="doc" var="newElement" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/createElementNS04.xml b/test/testcases/tests/level2/core/createElementNS04.xml
new file mode 100644
index 0000000..9a09210
--- /dev/null
+++ b/test/testcases/tests/level2/core/createElementNS04.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createElementNS04">
+<metadata>
+<title>createElementNS04</title>
+<creator>NIST</creator>
+<description>
+ The "createElementNS(namespaceURI,qualifiedName") method for
+ a Document should raise NAMESPACE_ERR DOMException if the
+ qualifiedName has an "xml" prefix and the namespaceURI is different
+ from http://www.w3.org/XML/1998/namespace".
+
+ Invoke method createElementNS(namespaceURI,qualifiedName) on this document
+ with qualifiedName being "xml:element1" and namespaceURI equals the string
+ "http://www.w3.org/XML/1997/namespace" (which differs from the required
+ string "http://www.w3.org/XML/1998/namespace").
+ Method should raise NAMESPACE_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrElNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrElNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.w3.org/XML/1998/namespaces&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;xml:element1&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newElement" type="Element"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<createElementNS obj="doc" var="newElement" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/createElementNS05.xml b/test/testcases/tests/level2/core/createElementNS05.xml
new file mode 100644
index 0000000..75c62fb
--- /dev/null
+++ b/test/testcases/tests/level2/core/createElementNS05.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createElementNS05">
+<metadata>
+<title>createElementNS05</title>
+<creator>NIST</creator>
+<description>
+ The "createElementNS(namespaceURI,qualifiedName)" method for a
+ Document should return a new Element object given that all parameters
+ are valid and correctly formed.
+
+ Invoke method createElementNS(namespaceURI,qualifiedName on this document
+ with namespaceURI as "http://www.nist.gov" and qualifiedName as "gov:faculty".
+ Method should return a new Element object whose name is "gov:faculty".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-104682815"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;gov:faculty&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newElement" type="Element"/>
+<var name="elementName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createElementNS obj="doc" var="newElement" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<tagName obj="newElement" var="elementName"/>
+<assertEquals actual="elementName" expected="qualifiedName" id="throw_Equals" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/createElementNS06.xml b/test/testcases/tests/level2/core/createElementNS06.xml
new file mode 100644
index 0000000..03ad058
--- /dev/null
+++ b/test/testcases/tests/level2/core/createElementNS06.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createElementNS06">
+<metadata>
+<title>createElementNS06</title>
+<creator>Curt Arnold</creator>
+<description>
+Document.createElementNS with an empty qualified name should cause an INVALID_CHARACTER_ERR.
+</description>
+<date qualifier="created">2004-03-09</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrElNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrElNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=525"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value='"http://www.example.com/"'/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="doc" type="Document"/>
+<var name="done" type="boolean"/>
+<var name="newElement" type="Element"/>
+<var name="charact" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<createElementNS obj="doc" var="newElement" namespaceURI="namespaceURI" qualifiedName='""'/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/documentcreateattributeNS01.xml b/test/testcases/tests/level2/core/documentcreateattributeNS01.xml
new file mode 100644
index 0000000..b6c76f9
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentcreateattributeNS01.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentcreateattributeNS01">
+<metadata>
+<title>documentcreateattributeNS01</title>
+<creator>IBM</creator>
+<description>
+ The method createAttributeNS creates an attribute of the given qualified name and namespace URI
+
+ Invoke the createAttributeNS method on this Document object with a null
+ namespaceURI, and a qualifiedName without a prefix. This should return a valid Attr
+ node object.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attribute" type="Attr"/>
+<var name="namespaceURI" type="DOMString" isNull="true"/>
+<var name="qualifiedName" type="DOMString" value="&quot;test&quot;"/>
+<var name="name" type="DOMString"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createAttributeNS obj="doc" var="attribute" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<nodeName var="nodeName" obj="attribute" />
+<nodeValue var="nodeValue" obj="attribute" />
+<assertEquals actual="nodeName" expected='"test"' id="documentcreateattributeNS01" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/documentcreateattributeNS02.xml b/test/testcases/tests/level2/core/documentcreateattributeNS02.xml
new file mode 100644
index 0000000..dcfa674
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentcreateattributeNS02.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentcreateattributeNS02">
+<metadata>
+<title>documentcreateattributeNS02</title>
+<creator>IBM</creator>
+<description>
+ The method createAttributeNS creates an attribute of the given qualified name and namespace URI
+
+ Invoke the createAttributeNS method on this Document object with a valid values for
+ namespaceURI, and a qualifiedName as below. This should return a valid Attr node.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attribute1" type="Attr"/>
+<var name="attribute2" type="Attr"/>
+<var name="name" type="DOMString"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="prefix" type="DOMString"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createAttributeNS obj="doc" var="attribute1" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:xml"'/>
+<name var="name" obj="attribute1" interface="Attr"/>
+<nodeName var="nodeName" obj="attribute1" />
+<nodeValue var="nodeValue" obj="attribute1" />
+<prefix var="prefix" obj="attribute1" />
+<namespaceURI var="namespaceURI" obj="attribute1" />
+<assertEquals actual="name" expected='"xml:xml"' id="documentcreateattributeNS02_att1_name" ignoreCase="false"/>
+<assertEquals actual="nodeName" expected='"xml:xml"' id="documentcreateattributeNS02_att1_nodeName" ignoreCase="false"/>
+<assertEquals actual="nodeValue" expected='""' id="documentcreateattributeNS02_att1_nodeValue" ignoreCase="false"/>
+<assertEquals actual="prefix" expected='"xml"' id="documentcreateattributeNS02_att1_prefix" ignoreCase="false"/>
+<assertEquals actual="namespaceURI" expected='"http://www.w3.org/XML/1998/namespace"' id="documentcreateattributeNS02_att1_namespaceURI" ignoreCase="false"/>
+
+<createAttributeNS obj="doc" var="attribute2" namespaceURI='"http://www.w3.org/2000/xmlns/"' qualifiedName='"xmlns"'/>
+<name var="name" obj="attribute2" interface="Attr"/>
+<nodeName var="nodeName" obj="attribute2" />
+<nodeValue var="nodeValue" obj="attribute2" />
+<prefix var="prefix" obj="attribute2"/>
+<namespaceURI var="namespaceURI" obj="attribute2"/>
+<assertEquals actual="name" expected='"xmlns"' id="documentcreateattributeNS02_att2_name" ignoreCase="false"/>
+<assertEquals actual="nodeName" expected='"xmlns"' id="documentcreateattributeNS02_att2_nodeName" ignoreCase="false"/>
+<assertEquals actual="nodeValue" expected='""' id="documentcreateattributeNS02_att2_nodeValue" ignoreCase="false"/>
+<assertEquals actual="namespaceURI" expected='"http://www.w3.org/2000/xmlns/"' id="documentcreateattributeNS02_att2_namespaceURI" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/documentcreateattributeNS03.xml b/test/testcases/tests/level2/core/documentcreateattributeNS03.xml
new file mode 100644
index 0000000..ec1f785
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentcreateattributeNS03.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentcreateattributeNS03">
+<metadata>
+<title>documentcreateattributeNS03</title>
+<creator>IBM</creator>
+<description>
+ The method createAttributeNS raises an INVALID_CHARACTER_ERR if the specified
+ qualified name contains an illegal character
+
+ Invoke the createAttributeNS method on this Document object with a valid value for
+ namespaceURI, and qualifiedNames that contain illegal characters. Check if the an
+ INVALID_CHARACTER_ERR was thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attribute" type="Attr"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.w3.org/DOM/Test/Level2&quot;"/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="qualifiedNames" type="List">
+<member>&quot;/&quot;</member>
+<member>&quot;//&quot;</member>
+<member>&quot;\\&quot;</member>
+<member>&quot;;&quot;</member>
+<member>&quot;&amp;&quot;</member>
+<member>&quot;*&quot;</member>
+<member>&quot;]]&quot;</member>
+<member>&quot;>&quot;</member>
+<member>&quot;&lt;&quot;</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<for-each collection="qualifiedNames" member="qualifiedName">
+<assertDOMException id="documentcreateattributeNS03">
+<INVALID_CHARACTER_ERR>
+<createAttributeNS obj="doc" var="attribute" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/documentcreateattributeNS04.xml b/test/testcases/tests/level2/core/documentcreateattributeNS04.xml
new file mode 100644
index 0000000..bb9fcc4
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentcreateattributeNS04.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentcreateattributeNS04">
+<metadata>
+<title>documentcreateattributeNS04</title>
+<creator>IBM</creator>
+<description>
+ The method createAttributeNS raises a NAMESPACE_ERR if the specified qualified name
+ is malformed.
+
+ Invoke the createAttributeNS method on this Document object with a valid value for
+ namespaceURI, and malformed qualifiedNames. Check if the a NAMESPACE_ERR was thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attribute" type="Attr"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.w3.org/DOM/Test/Level2&quot;"/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="qualifiedNames" type="List">
+<member>&quot;_:&quot;</member>
+<member>&quot;:0a&quot;</member>
+<member>&quot;:&quot;</member>
+<member>&quot;a:b:c&quot;</member>
+<member>&quot;_::a&quot;</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<for-each collection="qualifiedNames" member="qualifiedName">
+<assertDOMException id="documentcreateattributeNS04">
+<NAMESPACE_ERR>
+<createAttributeNS obj="doc" var="attribute" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</for-each>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentcreateattributeNS05.xml b/test/testcases/tests/level2/core/documentcreateattributeNS05.xml
new file mode 100644
index 0000000..cf4063e
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentcreateattributeNS05.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentcreateattributeNS05">
+<metadata>
+<title>documentcreateattributeNS05</title>
+<creator>IBM</creator>
+<description>
+ The method createAttributeNS raises a NAMESPACE_ERR if the qualifiedName has a prefix and
+ the namespaceURI is null.
+
+ Invoke the createAttributeNS method on a new Document object with a null value for
+ namespaceURI, and a valid qualifiedName. Check if a NAMESPACE_ERR is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="attribute" type="Attr"/>
+<var name="namespaceURI" type="DOMString" isNull="true"/>
+<var name="qualifiedName" type="DOMString" value='"abc:def"'/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom:doc"' doctype="docType"/>
+<assertDOMException id="documentcreateattributeNS05">
+<NAMESPACE_ERR>
+<createAttributeNS obj="newDoc" var="attribute" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</NAMESPACE_ERR>
+</assertDOMException></test>
diff --git a/test/testcases/tests/level2/core/documentcreateattributeNS06.xml b/test/testcases/tests/level2/core/documentcreateattributeNS06.xml
new file mode 100644
index 0000000..6b96e7c
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentcreateattributeNS06.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentcreateattributeNS06">
+<metadata>
+<title>documentcreateattributeNS06</title>
+<creator>IBM</creator>
+<description>
+ The method createAttributeNS raises a NAMESPACE_ERR if the qualifiedName has a prefix that
+ is "xml" and the namespaceURI is different from "http://www.w3.org/XML/1998/namespace".
+
+ Invoke the createAttributeNS method on a new DOMImplementation object with the qualifiedName
+ as xml:root and namespaceURI as http://www.w3.org/XML/1998 /namespace.
+ Check if the NAMESPACE_ERR exception is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="attribute" type="Attr"/>
+<var name="namespaceURI" type="DOMString" value='"http://www.w3.org/XML/1998 /namespace"'/>
+<var name="qualifiedName" type="DOMString" value='"xml:root"'/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom:doc"' doctype="docType"/>
+<assertDOMException id="documentcreateattributeNS06">
+<NAMESPACE_ERR>
+<createAttributeNS obj="newDoc" var="attribute" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</NAMESPACE_ERR>
+</assertDOMException></test>
diff --git a/test/testcases/tests/level2/core/documentcreateattributeNS07.xml b/test/testcases/tests/level2/core/documentcreateattributeNS07.xml
new file mode 100644
index 0000000..a8eaa41
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentcreateattributeNS07.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentcreateattributeNS07">
+<metadata>
+<title>documentcreateattributeNS07</title>
+<creator>IBM</creator>
+<description>
+ The method createAttributeNS raises a NAMESPACE_ERR if the qualifiedName is xmlns and
+ the namespaceURI is different from http://www.w3.org/2000/xmlns
+
+ Invoke the createAttributeNS method on this DOMImplementation object with
+ the qualifiedName as xmlns and namespaceURI as http://www.W3.org/2000/xmlns.
+ Check if the NAMESPACE_ERR exception is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attribute" type="Attr"/>
+<var name="namespaceURI" type="DOMString" value='"http://www.W3.org/2000/xmlns"'/>
+<var name="qualifiedName" type="DOMString" value='"xmlns"'/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<assertDOMException id="documentcreateattributeNS07">
+<NAMESPACE_ERR>
+<createAttributeNS obj="doc" var="attribute" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</NAMESPACE_ERR>
+</assertDOMException></test>
diff --git a/test/testcases/tests/level2/core/documentcreateelementNS01.xml b/test/testcases/tests/level2/core/documentcreateelementNS01.xml
new file mode 100644
index 0000000..ad9cb2b
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentcreateelementNS01.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentcreateelementNS01">
+<metadata>
+<title>documentcreateelementNS01</title>
+<creator>IBM</creator>
+<description>
+ The method createElementNS creates an element of the given valid qualifiedName and NamespaceURI.
+
+ Invoke the createElementNS method on this Document object with a valid namespaceURI
+ and qualifiedName. Check if a valid Element object is returned with the same node attributes.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrElNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="namespaceURI" type="DOMString" value='"http://www.w3.org/DOM/Test/level2"'/>
+<var name="qualifiedName" type="DOMString" value='"XML:XML"'/>
+<var name="nodeName" type="DOMString"/>
+<var name="nsURI" type="DOMString"/>
+<var name="localName" type="DOMString"/>
+<var name="prefix" type="DOMString"/>
+<var name="tagName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createElementNS obj="doc" var="element" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<nodeName var="nodeName" obj="element" />
+<namespaceURI var="nsURI" obj="element" />
+<localName var="localName" obj="element" />
+<prefix var="prefix" obj="element" />
+<tagName var="tagName" obj="element" />
+<assertEquals actual="nodeName" expected='"XML:XML"' id="documentcreateelementNS01_nodeName" ignoreCase="false"/>
+<assertEquals actual="nsURI" expected='"http://www.w3.org/DOM/Test/level2"' id="documentcreateelementNS01_namespaceURI" ignoreCase="false"/>
+<assertEquals actual="localName" expected='"XML"' id="documentcreateelementNS01_localName" ignoreCase="false"/>
+<assertEquals actual="prefix" expected='"XML"' id="documentcreateelementNS01_prefix" ignoreCase="false"/>
+<assertEquals actual="tagName" expected='"XML:XML"' id="documentcreateelementNS01_tagName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/documentcreateelementNS02.xml b/test/testcases/tests/level2/core/documentcreateelementNS02.xml
new file mode 100644
index 0000000..32f14ae
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentcreateelementNS02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentcreateelementNS02">
+<metadata>
+<title>documentcreateelementNS02</title>
+<creator>IBM</creator>
+<description>
+ The method createElementNS creates an element of the given valid qualifiedName and NamespaceURI.
+
+ Invoke the createElementNS method on this Document object with null values for namespaceURI,
+ and a qualifiedName with an invalid character and check if an INVALID_CHARACTER_ERR is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrElNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="namespaceURI" type="DOMString" isNull="true"/>
+<var name="qualifiedName" type="DOMString" value='"^^"' />
+<load var="doc" href="staffNS" willBeModified="false"/>
+<assertDOMException id="documentcreateelementNS02">
+<INVALID_CHARACTER_ERR>
+<createElementNS obj="doc" var="element" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/documentcreateelementNS05.xml b/test/testcases/tests/level2/core/documentcreateelementNS05.xml
new file mode 100644
index 0000000..42e43b3
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentcreateelementNS05.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentcreateelementNS05">
+<metadata>
+<title>documentcreateelementNS05</title>
+<creator>IBM</creator>
+<description>
+ The method createElementNS raises a NAMESPACE_ERR if the qualifiedName has a prefix and
+ the namespaceURI is null.
+
+ Invoke the createElementNS method on a new Document object with a null value for
+ namespaceURI, and a valid qualifiedName. Check if a NAMESPACE_ERR is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrElNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="namespaceURI" type="DOMString" isNull="true"/>
+<var name="qualifiedName" type="DOMString" value='"null:xml"'/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<assertDOMException id="documentcreateelementNS05">
+<NAMESPACE_ERR>
+<createElementNS obj="doc" var="element" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</NAMESPACE_ERR>
+</assertDOMException></test>
diff --git a/test/testcases/tests/level2/core/documentcreateelementNS06.xml b/test/testcases/tests/level2/core/documentcreateelementNS06.xml
new file mode 100644
index 0000000..415bcde
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentcreateelementNS06.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentcreateelementNS06">
+<metadata>
+<title>documentcreateelementNS06</title>
+<creator>IBM</creator>
+<description>
+ The method createElementNS raises a NAMESPACE_ERR if the qualifiedName
+ has a prefix that is "xml" and the namespaceURI is different
+ from http://www.w3.org/XML/1998/namespace
+
+ Invoke the createElementNS method on this DOMImplementation object with
+ the qualifiedName as xml:root and namespaceURI as http://www.w3.org/xml/1998/namespace
+ Check if the NAMESPACE_ERR exception is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrElNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="element" type="Element"/>
+<var name="namespaceURI" type="DOMString" value='"http://www.w3.org/xml/1998/namespace "'/>
+<var name="qualifiedName" type="DOMString" value='"xml:root"'/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom:doc"' doctype="docType"/>
+<assertDOMException id="documentcreateelementNS06">
+<NAMESPACE_ERR>
+<createElementNS obj="newDoc" var="element" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+</NAMESPACE_ERR>
+</assertDOMException></test>
diff --git a/test/testcases/tests/level2/core/documentgetelementbyid01.xml b/test/testcases/tests/level2/core/documentgetelementbyid01.xml
new file mode 100644
index 0000000..3c51695
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentgetelementbyid01.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentgetelementbyid01">
+<metadata>
+<title>documentgetelementbyid01</title>
+<creator>IBM</creator>
+<description>
+ The method getElementById returns the element whose ID is given by elementId.
+ If not such element exists, returns null.
+
+ Invoke the getElementById method on this Document object with an invalid elementId.
+ This should return a null element.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="elementId" type="DOMString" value='"---"'/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementById var="element" obj="doc" elementId="elementId"/>
+<assertNull actual="element" id="documentgetelementbyid01" />
+</test>
diff --git a/test/testcases/tests/level2/core/documentgetelementsbytagnameNS01.xml b/test/testcases/tests/level2/core/documentgetelementsbytagnameNS01.xml
new file mode 100644
index 0000000..402335c
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentgetelementsbytagnameNS01.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentgetelementsbytagnameNS01">
+<metadata>
+<title>documentgetelementsbytagnameNS01</title>
+<creator>IBM</creator>
+<description>
+ The method getElementsByTagNameNS returns a NodeList of all the Elements with
+ a given local name and namespace URI in the order in which they are encountered
+ in a preorder traversal of the Document tree.
+
+ Invoke the getElementsByTagNameNS method on a new Document object with the values of
+ namespaceURI=* and localName=*. This should return a nodeList of 1 item.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="childList" type="NodeList"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="nullNS" qualifiedName='"root"' doctype="docType"/>
+<getElementsByTagNameNS var="childList" obj="newDoc" namespaceURI ='"*"' localName ='"*"' interface="Document"/>
+<assertSize size="1" collection="childList" id="documentgetelementsbytagnameNS01"/>
+</test>
diff --git a/test/testcases/tests/level2/core/documentgetelementsbytagnameNS02.xml b/test/testcases/tests/level2/core/documentgetelementsbytagnameNS02.xml
new file mode 100644
index 0000000..89d8b51
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentgetelementsbytagnameNS02.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentgetelementsbytagnameNS02">
+<metadata>
+<title>documentgetelementsbytagnameNS02</title>
+<creator>IBM</creator>
+<description>
+ The method getElementsByTagNameNS returns a NodeList of all the Elements with
+ a given local name and namespace URI in the order in which they are encountered
+ in a preorder traversal of the Document tree.
+
+
+ Create a new element having a local name="employeeId" belonging to the namespace "test"
+ and append it to this document. Invoke the getElementsByTagNameNS method on a this
+ Document object with the values of namespaceURI=* and localName="elementId". This
+ should return a nodeList of 6 item. Check the length of the nodeList returned.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="element" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createElementNS var="element" obj="doc" namespaceURI='"test"' qualifiedName='"employeeId"'/>
+<appendChild var="appendedChild" obj="docElem" newChild="element"/>
+<getElementsByTagNameNS var="childList" obj="doc" namespaceURI ='"*"' localName ='"employeeId"' interface="Document"/>
+<assertSize size="6" collection="childList" id="documentgetelementsbytagnameNS02"/>
+</test>
diff --git a/test/testcases/tests/level2/core/documentgetelementsbytagnameNS03.xml b/test/testcases/tests/level2/core/documentgetelementsbytagnameNS03.xml
new file mode 100644
index 0000000..bc08125
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentgetelementsbytagnameNS03.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentgetelementsbytagnameNS03">
+<metadata>
+<title>documentgetelementsbytagnameNS03</title>
+<creator>IBM</creator>
+<description>
+ The method getElementsByTagNameNS returns a NodeList of all the Elements with
+ a given local name and namespace URI in the order in which they are encountered
+ in a preorder traversal of the Document tree.
+
+ Invoke the getElementsByTagNameNS method on a new Document object with the values of
+ namespaceURI=** and localName=**. This should return a nodeList of 0 items.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS var="childList" obj="doc" namespaceURI ='"**"' localName ='"*"' interface="Document"/>
+<assertSize size="0" collection="childList" id="documentgetelementsbytagnameNS03"/>
+</test>
diff --git a/test/testcases/tests/level2/core/documentgetelementsbytagnameNS04.xml b/test/testcases/tests/level2/core/documentgetelementsbytagnameNS04.xml
new file mode 100644
index 0000000..13278e4
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentgetelementsbytagnameNS04.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentgetelementsbytagnameNS04">
+<metadata>
+<title>documentgetelementsbytagnameNS04</title>
+<creator>IBM</creator>
+<description>
+ The method getElementsByTagNameNS returns a NodeList of all the Elements with
+ a given local name and namespace URI in the order in which they are encountered
+ in a preorder traversal of the Document tree.
+
+ Invoke the getElementsByTagNameNS method on a new Document object with the values of
+ namespaceURI="null" and localName="0". This should return a nodeList of 0 items.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS var="childList" obj="doc" namespaceURI ="nullNS" localName ='"0"' interface="Document"/>
+<assertSize size="0" collection="childList" id="documentgetelementsbytagnameNS04"/>
+</test>
diff --git a/test/testcases/tests/level2/core/documentgetelementsbytagnameNS05.xml b/test/testcases/tests/level2/core/documentgetelementsbytagnameNS05.xml
new file mode 100644
index 0000000..c9a4245
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentgetelementsbytagnameNS05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentgetelementsbytagnameNS05">
+<metadata>
+<title>documentgetelementsbytagnameNS05</title>
+<creator>IBM</creator>
+<description>
+ The method getElementsByTagNameNS returns a NodeList of all the Elements with
+ a given local name and namespace URI in the order in which they are encountered
+ in a preorder traversal of the Document tree.
+
+
+ Invoke the getElementsByTagNameNS method on a this Document object with the
+ values of namespaceURI=null and localName="elementId". This
+ should return a nodeList of 0 item. Check the length of the nodeList returned.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS var="childList" obj="doc" namespaceURI ='"null"' localName ='"elementId"' interface="Document"/>
+<assertSize size="0" collection="childList" id="documentgetelementsbytagnameNS05"/>
+</test>
diff --git a/test/testcases/tests/level2/core/documentimportnode01.xml b/test/testcases/tests/level2/core/documentimportnode01.xml
new file mode 100644
index 0000000..9678051
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode01.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode01">
+<metadata>
+<title>documentimportnode01</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=true, import the attribute, "street" of the second
+ element node, from a list of nodes whose local names are "address" and namespaceURI
+ "http://www.nist.gov" into the same document. Check the parentNode, nodeName,
+ nodeType and nodeValue of the imported node to verify if it has been imported correctly.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="importedAttr" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="childList" obj="doc" localName='"address"' namespaceURI='"http://www.nist.gov"' interface="Document"/>
+<item var="element" obj="childList" index="1" interface="NodeList"/>
+<getAttributeNode var="attr" obj="element" name='"street"'/>
+<importNode var="importedAttr" obj="doc" importedNode="attr" deep="false"/>
+<nodeName var="nodeName" obj="importedAttr"/>
+<nodeValue var="nodeValue" obj="importedAttr"/>
+<nodeType var="nodeType" obj="importedAttr"/>
+<!-- Seems like this causes an xslt problem
+<parentNode var="attrsParent" obj="importedAttr"/>
+<assertNull actual="attrsParent" id="documentimportnode01_parentNull"/>
+-->
+<assertEquals expected='"street"' actual="nodeName" id="documentimportnode01_nodeName" ignoreCase="false"/>
+<assertEquals expected="2" actual="nodeType" id="documentimportnode01_nodeType" ignoreCase="false"/>
+<assertEquals expected='"Yes"' actual="nodeValue" id="documentimportnode01_nodeValue" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level2/core/documentimportnode02.xml b/test/testcases/tests/level2/core/documentimportnode02.xml
new file mode 100644
index 0000000..807f1d4
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode02.xml
@@ -0,0 +1,65 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode02">
+<metadata>
+<title>documentimportnode02</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=false, import the attribute, "emp:zone" of the
+ element node which is retreived by its elementId="CANADA", into the another document.
+ Check the parentNode, nodeName, nodeType and nodeValue of the imported node to
+ verify if it has been imported correctly.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docImported" type="Document"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="importedAttr" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="addresses" type="NodeList"/>
+<var name="attrsParent" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="docImported" href="staff" willBeModified="true"/>
+<getElementsByTagNameNS var="addresses" obj="doc" interface="Document" namespaceURI='"http://www.nist.gov"' localName='"address"'/>
+<item var="element" obj="addresses" interface="NodeList" index="1"/>
+<getAttributeNodeNS var="attr" obj="element" namespaceURI='"http://www.nist.gov"' localName='"zone"'/>
+<importNode var="importedAttr" obj="docImported" importedNode="attr" deep="false"/>
+<nodeName var="nodeName" obj="importedAttr"/>
+<nodeType var="nodeType" obj="importedAttr"/>
+<nodeValue var="nodeValue" obj="importedAttr"/>
+<parentNode var="attrsParent" obj="importedAttr" interface="Node"/>
+<assertNull actual="attrsParent" id="documentimportnode02_parentNull"/>
+<assertEquals expected='"emp:zone"' actual="nodeName" id="documentimportnode02_nodeName" ignoreCase="false"/>
+<assertEquals expected="2" actual="nodeType" id="documentimportnode02_nodeType" ignoreCase="false"/>
+<assertEquals expected='"CANADA"' actual="nodeValue" id="documentimportnode02_nodeValue" ignoreCase="false"/>
+</test>
+
+
diff --git a/test/testcases/tests/level2/core/documentimportnode03.xml b/test/testcases/tests/level2/core/documentimportnode03.xml
new file mode 100644
index 0000000..6bc2bd1
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode03.xml
@@ -0,0 +1,62 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode03">
+<metadata>
+<title>documentimportnode03</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=false, import the default Attribute attribute,
+ "defaultAttr" of the second element node whose namespaceURI="http://www.nist.gov" and
+ localName="defaultAttr", into the same document.
+ Check the parentNode, nodeName, nodeType and nodeValue of the imported node to
+ verify if it has been imported correctly. </description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="importedAttr" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="childList" obj="doc" localName='"employee"' namespaceURI='"http://www.nist.gov"' interface="Document"/>
+<item var="element" obj="childList" index="1" interface="NodeList"/>
+<getAttributeNode var="attr" obj="element" name='"defaultAttr"'/>
+<importNode var="importedAttr" obj="doc" importedNode="attr" deep="false"/>
+<nodeName var="nodeName" obj="importedAttr"/>
+<nodeValue var="nodeValue" obj="importedAttr"/>
+<nodeType var="nodeType" obj="importedAttr"/>
+<assertEquals expected='"defaultAttr"' actual="nodeName" id="documentimportnode03_nodeName" ignoreCase="false"/>
+<assertEquals expected="2" actual="nodeType" id="documentimportnode03_nodeType" ignoreCase="false"/>
+<assertEquals expected='"defaultVal"' actual="nodeValue" id="documentimportnode03_nodeValue" ignoreCase="false"/>
+</test>
+
+
diff --git a/test/testcases/tests/level2/core/documentimportnode04.xml b/test/testcases/tests/level2/core/documentimportnode04.xml
new file mode 100644
index 0000000..ade2c9b
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode04.xml
@@ -0,0 +1,67 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode04">
+<metadata>
+<title>documentimportnode04</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=true, import the default Attribute attribute,
+ "defaultAttr" of the second element node whose namespaceURI="http://www.nist.gov" and
+ localName="defaultAttr", into a new document.
+ Check the parentNode, nodeName, nodeType and nodeValue of the imported node to
+ verify if it has been imported correctly.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="importedAttr" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"l2:root"' doctype="docType"/>
+<getElementsByTagNameNS var="childList" obj="doc" localName='"employee"' namespaceURI='"http://www.nist.gov"' interface="Document"/>
+<item var="element" obj="childList" index="1" interface="NodeList"/>
+<getAttributeNode var="attr" obj="element" name='"defaultAttr"'/>
+<importNode var="importedAttr" obj="newDoc" importedNode="attr" deep="true"/>
+<nodeName var="nodeName" obj="importedAttr"/>
+<nodeValue var="nodeValue" obj="importedAttr"/>
+<nodeType var="nodeType" obj="importedAttr"/>
+<assertEquals expected='"defaultAttr"' actual="nodeName" id="documentimportnode04_nodeName" ignoreCase="false"/>
+<assertEquals expected="2" actual="nodeType" id="documentimportnode04_nodeType" ignoreCase="false"/>
+<assertEquals expected='"defaultVal"' actual="nodeValue" id="documentimportnode04_nodeValue" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level2/core/documentimportnode05.xml b/test/testcases/tests/level2/core/documentimportnode05.xml
new file mode 100644
index 0000000..8721cf4
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode05.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode05">
+<metadata>
+<title>documentimportnode05</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=false, import a newly created attribute node,
+ into the another document.
+ Check the nodeName, nodeType and nodeValue namespaceURI of the imported node to
+ verify if it has been imported correctly.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docImported" type="Document"/>
+<var name="attr" type="Attr"/>
+<var name="importedAttr" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="docImported" href="staff" willBeModified="true"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"a_:b0"' />
+<importNode var="importedAttr" obj="docImported" importedNode="attr" deep="false"/>
+<nodeName var="nodeName" obj="importedAttr"/>
+<nodeValue var="nodeValue" obj="importedAttr"/>
+<nodeType var="nodeType" obj="importedAttr"/>
+<namespaceURI var="namespaceURI" obj="importedAttr"/>
+<assertEquals expected='"a_:b0"' actual="nodeName" id="documentimportnode05_nodeName" ignoreCase="false"/>
+<assertEquals expected="2" actual="nodeType" id="documentimportnode05_nodeType" ignoreCase="false"/>
+<assertEquals expected='""' actual="nodeValue" id="documentimportnode05_nodeValue" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/DOM/Test"' actual="namespaceURI" id="documentimportnode05_namespaceURI" ignoreCase="false"/>
+</test>
+
+
diff --git a/test/testcases/tests/level2/core/documentimportnode06.xml b/test/testcases/tests/level2/core/documentimportnode06.xml
new file mode 100644
index 0000000..e2b185d
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode06.xml
@@ -0,0 +1,45 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode06">
+<metadata>
+<title>documentimportnode06</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ A NOT_SUPPORTED_ERR is raised if the type of node being imported is
+ not supported
+
+ Using the method importNode with deep=false, try to import this document object to itself.
+ Since Document nodes cannot be imported, a NOT_SUPPORTED_ERR should be raised.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docImported" type="Document"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<importNode var="docImported" obj="doc" importedNode="doc" deep="false"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/documentimportnode07.xml b/test/testcases/tests/level2/core/documentimportnode07.xml
new file mode 100644
index 0000000..87d650e
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode07.xml
@@ -0,0 +1,48 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode07">
+<metadata>
+<title>documentimportnode07</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ A NOT_SUPPORTED_ERR is raised if the type of node being imported is
+ not supported
+
+ Using the method importNode with deep=true, try to import this Document's
+ DocumentType object. Since DocumentType nodes cannot be imported, a
+ NOT_SUPPORTED_ERR should be raised.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="imported" type="Node"/>
+<var name="docType" type="DocumentType"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<importNode var="imported" obj="doc" importedNode="docType" deep="true"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/documentimportnode08.xml b/test/testcases/tests/level2/core/documentimportnode08.xml
new file mode 100644
index 0000000..f2787da
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode08.xml
@@ -0,0 +1,51 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode08">
+<metadata>
+<title>documentimportnode08</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ A NOT_SUPPORTED_ERR is raised if the type of node being imported is
+ not supported
+
+ Using the method importNode with deep=true, try to import a newly created DOcumentType
+ node. Since DocumentType nodes cannot be imported, a NOT_SUPPORTED_ERR should be raised.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="imported" type="Node"/>
+<var name="docType" type="DocumentType"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="docType" obj="domImpl" qualifiedName='"test:root"' publicId="nullNS" systemId="nullNS"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<importNode var="imported" obj="doc" importedNode="docType" deep="true"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/documentimportnode09.xml b/test/testcases/tests/level2/core/documentimportnode09.xml
new file mode 100644
index 0000000..1e457c3
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode09.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode09">
+<metadata>
+<title>documentimportnode09</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=false, import a newly created DocumentFragment node
+ with the first address element from this Document appended to it into this document.
+ Since deep=false, an empty DocumentFragment should be returned
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="childList" type="NodeList"/>
+<var name="success" type="boolean"/>
+<var name="addressNode" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<var name="importedDocFrag" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createDocumentFragment var="docFragment" obj="doc"/>
+<getElementsByTagNameNS var="childList" obj="doc" localName='"address"' namespaceURI='"*"' interface="Document"/>
+<item var="addressNode" obj="childList" index="0" interface="NodeList"/>
+<appendChild var="appendedChild" obj="docFragment" newChild="addressNode"/>
+<importNode var="importedDocFrag" obj="doc" importedNode="docFragment" deep="false"/>
+<hasChildNodes var="success" obj="importedDocFrag"/>
+<assertFalse actual="success" id="documentimportnode09"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentimportnode10.xml b/test/testcases/tests/level2/core/documentimportnode10.xml
new file mode 100644
index 0000000..8b66b65
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode10.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode10">
+<metadata>
+<title>documentimportnode10</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=false, import a newly created DocumentFragment node
+ with the first address element from this Document appended to it into this document.
+ Since deep=true, a DocumentFragment with its child should be returned
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="childList" type="NodeList"/>
+<var name="success" type="boolean"/>
+<var name="addressNode" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<var name="importedDocFrag" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createDocumentFragment var="docFragment" obj="doc"/>
+<getElementsByTagNameNS var="childList" obj="doc" localName='"address"' namespaceURI='"*"' interface="Document"/>
+<item var="addressNode" obj="childList" index="0" interface="NodeList"/>
+<appendChild var="appendedChild" obj="docFragment" newChild="addressNode"/>
+<importNode var="importedDocFrag" obj="doc" importedNode="docFragment" deep="true"/>
+<hasChildNodes var="success" obj="importedDocFrag"/>
+<assertTrue actual="success" id="documentimportnode10"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentimportnode11.xml b/test/testcases/tests/level2/core/documentimportnode11.xml
new file mode 100644
index 0000000..0a43bb6
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode11.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode11">
+<metadata>
+<title>documentimportnode11</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=false, import this Document's documentElement
+ node. Verify if the node has been imported correctly by its nodeName atttribute and
+ if the original document is not altered by checking if hasChildNodes returns false.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElement" type="Element"/>
+<var name="imported" type="Node"/>
+<var name="success" type="boolean"/>
+<var name="nodeNameOrig" type="DOMString"/>
+<var name="nodeNameImported" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<documentElement var="docElement" obj="doc"/>
+<importNode var="imported" obj="doc" importedNode="docElement" deep="false"/>
+<hasChildNodes var="success" obj="imported"/>
+<assertFalse actual="success" id="documentimportnode11"/>
+<nodeName var="nodeNameImported" obj="imported"/>
+<nodeName var="nodeNameOrig" obj="docElement"/>
+<assertEquals actual="nodeNameOrig" expected="nodeNameImported" id="documentimportnode11_NodeName" ignoreCase="false"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentimportnode12.xml b/test/testcases/tests/level2/core/documentimportnode12.xml
new file mode 100644
index 0000000..b2eea21
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode12.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode12">
+<metadata>
+<title>documentimportnode12</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=true, import the first address element node of this
+ Document. Verify if the node has been imported correctly by checking the length of the
+ this elements childNode list before and after the import.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="imported" type="Node"/>
+<var name="addressElem" type="Node"/>
+<var name="addressElemChildren" type="NodeList"/>
+<var name="importedChildren" type="NodeList"/>
+<var name="addressElemLen" type="int"/>
+<var name="importedLen" type="int"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="childList" obj="doc" namespaceURI='"*"' localName='"address"' interface="Document"/>
+<item var="addressElem" obj="childList" index="0" interface="NodeList"/>
+<importNode var="imported" obj="doc" importedNode="addressElem" deep="true"/>
+<childNodes var="addressElemChildren" obj="addressElem"/>
+<childNodes var="importedChildren" obj="imported"/>
+<length var="addressElemLen" obj="addressElemChildren" interface="NodeList"/>
+<length var="importedLen" obj="importedChildren" interface="NodeList"/>
+<assertEquals actual="addressElemLen" expected="importedLen" id="documentimportnode12" ignoreCase="false"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentimportnode13.xml b/test/testcases/tests/level2/core/documentimportnode13.xml
new file mode 100644
index 0000000..40ee506
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode13.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode13">
+<metadata>
+<title>documentimportnode13</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=false, import the first employee element node of this
+ Document. Verify if the node has been imported correctly by checking the length of the
+ this elements childNode list before and after the import.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="imported" type="Node"/>
+<var name="importedList" type="NodeList"/>
+<var name="employeeElem" type="Node"/>
+<var name="importedLen" type="int"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="childList" obj="doc" namespaceURI='"*"' localName='"employee"' interface="Document"/>
+<item var="employeeElem" obj="childList" index="0" interface="NodeList"/>
+<importNode var="imported" obj="doc" importedNode="employeeElem" deep="false"/>
+<childNodes var="importedList" obj="imported"/>
+<length var="importedLen" obj="importedList" interface="NodeList"/>
+<assertEquals expected="0" actual="importedLen" id="documentimportnode13" ignoreCase="false"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentimportnode14.xml b/test/testcases/tests/level2/core/documentimportnode14.xml
new file mode 100644
index 0000000..85f471c
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode14.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode14">
+<metadata>
+<title>documentimportnode14</title>
+<creator>IBM</creator>
+<description>
+ Using the method importNode with deep=true, import the fourth employee element node of this
+ Document. Verify if the node has been imported correctly by checking
+ if the default attribute present on this node has not been imported
+ and an explicit attribute has been imported.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=402"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="childList" type="NodeList"/>
+<var name="imported" type="Node"/>
+<var name="employeeElem" type="Node"/>
+<var name="attrNode" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<!-- willBeModified set to true just to be safe -->
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="childList" obj="doc" namespaceURI='"*"' localName='"employee"' interface="Document"/>
+<item var="employeeElem" obj="childList" index="3" interface="NodeList"/>
+<implementation var="domImpl"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="nullNS" qualifiedName='"staff"' doctype="nullDocType"/>
+<importNode var="imported" obj="newDoc" importedNode="employeeElem" deep="true"/>
+<getAttributeNodeNS var="attrNode" obj="imported" namespaceURI="nullNS" localName='"defaultAttr"'/>
+<!-- default attribute should not be copied -->
+<assertNull actual="attrNode" id="defaultAttrNotImported"/>
+<!-- explicit attributes should be copied -->
+<getAttributeNS var="attrValue" obj="imported" namespaceURI='"http://www.w3.org/2000/xmlns/"' localName='"emp"'/>
+<assertEquals actual="attrValue" expected='"http://www.nist.gov"'
+ ignoreCase="false" id="explicitAttrImported"/>
+</test>
diff --git a/test/testcases/tests/level2/core/documentimportnode15.xml b/test/testcases/tests/level2/core/documentimportnode15.xml
new file mode 100644
index 0000000..a32299d
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode15.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode15">
+<metadata>
+<title>documentimportnode15</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=true, import a newly created Text node for this
+ Document. Verify if the node has been imported correctly by checking the value of the
+ imported text node.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docImp" type="Document"/>
+<var name="textImport" type="Node"/>
+<var name="textToImport" type="Node"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="docImp" href="staffNS" willBeModified="true"/>
+<createTextNode var="textToImport" obj="doc" data='"Document.importNode test for a TEXT_NODE"'/>
+<importNode var="textImport" obj="doc" importedNode="textToImport" deep="true"/>
+<nodeValue var="nodeValue" obj="textImport"/>
+<assertEquals expected='"Document.importNode test for a TEXT_NODE"' actual="nodeValue" id="documentimportnode15" ignoreCase="false"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentimportnode17.xml b/test/testcases/tests/level2/core/documentimportnode17.xml
new file mode 100644
index 0000000..e74611c
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode17.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode17">
+<metadata>
+<title>documentimportnode17</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=true, import a newly created Comment node for this
+ Document. Verify if the node has been imported correctly by checking the value of the
+ imported Comment node.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docImp" type="Document"/>
+<var name="commentImport" type="Node"/>
+<var name="commentToImport" type="Node"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="docImp" href="staffNS" willBeModified="true"/>
+<createComment var="commentToImport" obj="doc" data='"Document.importNode test for a COMMENT_NODE"'/>
+<importNode var="commentImport" obj="doc" importedNode="commentToImport" deep="true"/>
+<nodeValue var="nodeValue" obj="commentImport"/>
+<assertEquals expected='"Document.importNode test for a COMMENT_NODE"' actual="nodeValue" id="documentimportnode17" ignoreCase="false"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentimportnode18.xml b/test/testcases/tests/level2/core/documentimportnode18.xml
new file mode 100644
index 0000000..3c73bd8
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode18.xml
@@ -0,0 +1,53 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode18">
+<metadata>
+<title>documentimportnode18</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=true, import a newly created PI node for this
+ Document. Verify if the node has been imported correctly by checking the PITarget and
+ PIData values of the imported PI node.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docImp" type="Document"/>
+<var name="piImport" type="ProcessingInstruction"/>
+<var name="piToImport" type="ProcessingInstruction"/>
+<var name="piData" type="DOMString"/>
+<var name="piTarget" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="docImp" href="staffNS" willBeModified="true"/>
+<createProcessingInstruction var="piToImport" obj="doc" target='"Target"' data='"Data"'/>
+<importNode var="piImport" obj="doc" importedNode="piToImport" deep="false"/>
+<target var="piTarget" obj="piImport" interface="ProcessingInstruction"/>
+<data var="piData" obj="piImport" interface="ProcessingInstruction"/>
+<assertEquals expected='"Target"' actual="piTarget" id="documentimportnode18_Target" ignoreCase="false"/>
+<assertEquals expected='"Data"' actual="piData" id="documentimportnode18_Data" ignoreCase="false"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentimportnode19.xml b/test/testcases/tests/level2/core/documentimportnode19.xml
new file mode 100644
index 0000000..0ef04b9
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode19.xml
@@ -0,0 +1,83 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode19">
+<metadata>
+<title>documentimportnode19</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=true/false, import a entity nodes ent2 and ent6
+ from this document to a new document object. Verify if the nodes have been
+ imported correctly by checking the nodeNames of the imported nodes and public and system ids.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docTypeNull" type="DocumentType" isNull="true"/>
+<var name="docImp" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="nodeMap" type="NamedNodeMap"/>
+<var name="entity2" type="Entity"/>
+<var name="entity6" type="Entity"/>
+<var name="entityImp2" type="Entity"/>
+<var name="entityImp6" type="Entity"/>
+<var name="nodeName" type="DOMString"/>
+<var name="systemId" type="DOMString"/>
+<var name="notationName" type="DOMString"/>
+<var name="nodeNameImp" type="DOMString"/>
+<var name="systemIdImp" type="DOMString"/>
+<var name="notationNameImp" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<implementation var="domImpl" obj="doc" />
+<doctype var="docType" obj="doc"/>
+<createDocument var="docImp" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"a:b"' doctype="docTypeNull"/>
+<entities var="nodeMap" obj="docType"/>
+<assertNotNull actual="nodeMap" id="entitiesNotNull"/>
+<getNamedItem var="entity2" obj="nodeMap" name='"ent2"'/>
+<getNamedItem var="entity6" obj="nodeMap" name='"ent6"'/>
+<importNode var="entityImp2" obj="docImp" importedNode="entity2" deep="false"/>
+<importNode var="entityImp6" obj="docImp" importedNode="entity6" deep="true"/>
+<nodeName var="nodeName" obj="entity2" />
+<nodeName var="nodeNameImp" obj="entityImp2" />
+<assertEquals expected="nodeName" actual="nodeNameImp" id="documentimportnode19_Ent2NodeName" ignoreCase="false"/>
+<nodeName var="nodeName" obj="entity6" />
+<nodeName var="nodeNameImp" obj="entityImp6" />
+<assertEquals expected="nodeName" actual="nodeNameImp" id="documentimportnode19_Ent6NodeName" ignoreCase="false"/>
+<systemId var="systemId" obj="entity2" interface="Entity"/>
+<systemId var="systemIdImp" obj="entityImp2" interface="Entity"/>
+<assertEquals expected="systemId" actual="systemIdImp" id="documentimportnode19_Ent2SystemId" ignoreCase="false"/>
+<systemId var="systemId" obj="entity6" interface="Entity"/>
+<systemId var="systemIdImp" obj="entityImp6" interface="Entity"/>
+<assertEquals expected="systemId" actual="systemIdImp" id="documentimportnode19_Ent6SystemId" ignoreCase="false"/>
+<notationName var="notationName" obj="entity2" interface="Entity"/>
+<notationName var="notationNameImp" obj="entityImp2" interface="Entity"/>
+<assertEquals expected="notationName" actual="notationNameImp" id="documentimportnode19_Ent2NotationName" ignoreCase="false"/>
+<notationName var="notationName" obj="entity6" interface="Entity"/>
+<notationName var="notationNameImp" obj="entityImp6" interface="Entity"/>
+<assertEquals expected="notationName" actual="notationNameImp" id="documentimportnode19_Ent6NotationName" ignoreCase="false"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentimportnode20.xml b/test/testcases/tests/level2/core/documentimportnode20.xml
new file mode 100644
index 0000000..ea342cd
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode20.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode20">
+<metadata>
+<title>documentimportnode20</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=true, import a entity node ent4
+ from this document to a new document object. The replacement text of this entity is an element
+ node, a cdata node and a pi. Verify if the nodes have been
+ imported correctly by checking the nodeNames of the imported element node, the data for the
+ cdata nodes and the PItarget and PIData for the pi nodes.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="docImp" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="docTypeNull" type="DocumentType" isNull="true"/>
+<var name="nodeMap" type="NamedNodeMap"/>
+<var name="entity4" type="Entity"/>
+<var name="entityImp4" type="Entity"/>
+<var name="element" type="Element"/>
+<var name="cdata" type="CharacterData"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="childList" type="NodeList"/>
+<var name="elemchildList" type="NodeList"/>
+<var name="ent4Name" type="DOMString"/>
+<var name="ent4ImpName" type="DOMString"/>
+<var name="cdataVal" type="DOMString"/>
+<var name="piTargetVal" type="DOMString"/>
+<var name="piDataVal" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<implementation var="domImpl" obj="doc" />
+<doctype var="docType" obj="doc"/>
+<createDocument var="docImp" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"a:b"' doctype="docTypeNull"/>
+<entities var="nodeMap" obj="docType"/>
+<getNamedItem var="entity4" obj="nodeMap" name='"ent4"'/>
+<importNode var="entityImp4" obj="docImp" importedNode="entity4" deep="true"/>
+<childNodes var="childList" obj="entityImp4" />
+<item var="element" obj="childList" index="0" interface="NodeList"/>
+<childNodes var="elemchildList" obj="element"/>
+<item var="cdata" obj="elemchildList" index="0" interface="NodeList"/>
+<item var="pi" obj="childList" index="1" interface="NodeList"/>
+<nodeName var="ent4Name" obj="entity4"/>
+<nodeName var="ent4ImpName" obj="entityImp4"/>
+<data var="cdataVal" obj="cdata" interface="CharacterData"/>
+<target var="piTargetVal" obj="pi" interface="ProcessingInstruction"/>
+<data var="piDataVal" obj="pi" interface="ProcessingInstruction"/>
+<assertEquals expected="ent4Name" actual="ent4ImpName" id="documentimportnode20_Ent4NodeName" ignoreCase="false"/>
+<assertEquals expected='"Element data"' actual="cdataVal" id="documentimportnode20_Cdata" ignoreCase="false"/>
+<assertEquals expected='"PItarget"' actual="piTargetVal" id="documentimportnode20_PITarget" ignoreCase="false"/>
+<assertEquals expected='"PIdata"' actual="piDataVal" id="documentimportnode20_PIData" ignoreCase="false"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentimportnode21.xml b/test/testcases/tests/level2/core/documentimportnode21.xml
new file mode 100644
index 0000000..cf5dedb
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode21.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode21">
+<metadata>
+<title>documentimportnode21</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=true, retreive the entity refs present in the
+ second element node whose tagName is address and import these nodes into another document.
+ Verify if the nodes have been imported correctly by checking the nodeNames of the
+ imported nodes, since they are imported into a new document which doesnot have thes defined,
+ the imported nodes should not have any children.
+ Now import the entityRef nodes into the same document and verify if the nodes have been
+ imported correctly by checking the nodeNames of the imported nodes, and by checking the
+ value of the replacement text of the imported nodes.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="docTypeNull" type="DocumentType" isNull="true"/>
+<var name="docImp" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="addressList" type="NodeList"/>
+<var name="addressChildList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="entRef2" type="EntityReference"/>
+<var name="entRefImp2" type="EntityReference"/>
+<var name="entRef3" type="EntityReference"/>
+<var name="entRefImp3" type="EntityReference"/>
+<var name="nodeName2" type="DOMString"/>
+<var name="nodeName3" type="DOMString"/>
+<var name="nodeNameImp2" type="DOMString"/>
+<var name="nodeNameImp3" type="DOMString"/>
+<var name="nodes" type="NodeList"/>
+<var name="nodeImp3" type="Node"/>
+<var name="nodeImp2" type="Node"/>
+<var name="nodeValueImp2" type="DOMString"/>
+<var name="nodeValueImp3" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<implementation var="domImpl" obj="doc" />
+<createDocument var="docImp" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"a:b"' doctype="docTypeNull"/>
+<getElementsByTagName var="addressList" obj="doc" tagname='"address"' interface="Document"/>
+<item var="element" obj="addressList" index="1" interface="NodeList"/>
+<childNodes var="addressChildList" obj="element"/>
+<item var="entRef2" obj="addressChildList" index="0" interface="NodeList"/>
+<item var="entRef3" obj="addressChildList" index="2" interface="NodeList"/>
+<importNode var="entRefImp2" obj="docImp" importedNode="entRef2" deep="true"/>
+<importNode var="entRefImp3" obj="docImp" importedNode="entRef3" deep="false"/>
+<nodeName var="nodeName2" obj="entRef2"/>
+<nodeName var="nodeName3" obj="entRef3"/>
+<nodeName var="nodeNameImp2" obj="entRefImp2"/>
+<nodeName var="nodeNameImp3" obj="entRefImp3"/>
+<assertEquals expected="nodeName2" actual="nodeNameImp2" id="documentimportnode21_Ent2NodeName" ignoreCase="false"/>
+<assertEquals expected="nodeName3" actual="nodeNameImp3" id="documentimportnode21_Ent3NodeName" ignoreCase="false"/>
+<importNode var="entRefImp2" obj="doc" importedNode="entRef2" deep="true"/>
+<importNode var="entRefImp3" obj="doc" importedNode="entRef3" deep="false"/>
+<childNodes var="nodes" obj="entRefImp2" interface="Node"/>
+<item var="nodeImp2" obj="nodes" index="0" interface="NodeList"/>
+<nodeValue var="nodeValueImp2" obj="nodeImp2"/>
+<childNodes var="nodes" obj="entRefImp3" interface="Node"/>
+<item var="nodeImp3" obj="nodes" index="0" interface="NodeList"/>
+<nodeValue var="nodeValueImp3" obj="nodeImp3"/>
+<assertEquals actual="nodeValueImp2" expected='"1900 Dallas Road"' id="documentimportnode21_Ent2NodeValue" ignoreCase="false"/>
+<assertEquals actual="nodeValueImp3" expected='"Texas"' id="documentimportnode21_Ent3Nodevalue" ignoreCase="false"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documentimportnode22.xml b/test/testcases/tests/level2/core/documentimportnode22.xml
new file mode 100644
index 0000000..2164ae0
--- /dev/null
+++ b/test/testcases/tests/level2/core/documentimportnode22.xml
@@ -0,0 +1,92 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documentimportnode22">
+<metadata>
+<title>documentimportnode21</title>
+<creator>IBM</creator>
+<description>
+ The importNode method imports a node from another document to this document.
+ The returned node has no parent; (parentNode is null). The source node is not
+ altered or removed from the original document but a new copy of the source node
+ is created.
+
+ Using the method importNode with deep=true/false, import two notaiton nodes into the
+ same and different documnet objects. In each case check if valid public and systemids
+ are returned if any and if none, check if a null value was returned.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docTypeNull" type="DocumentType" isNull="true"/>
+<var name="docImp" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="nodeMap" type="NamedNodeMap"/>
+<var name="notation1" type="Notation"/>
+<var name="notation2" type="Notation"/>
+<var name="notationImp1" type="Notation"/>
+<var name="notationImp2" type="Notation"/>
+<var name="notationImpNew1" type="Notation"/>
+<var name="notationImpNew2" type="Notation"/>
+<var name="publicId1" type="DOMString"/>
+<var name="publicId1Imp" type="DOMString"/>
+<var name="publicId1NewImp" type="DOMString"/>
+<var name="publicId2Imp" type="DOMString"/>
+<var name="publicId2NewImp" type="DOMString"/>
+<var name="systemId1Imp" type="DOMString"/>
+<var name="systemId1NewImp" type="DOMString"/>
+<var name="systemId2" type="DOMString"/>
+<var name="systemId2Imp" type="DOMString"/>
+<var name="systemId2NewImp" type="DOMString"/>
+
+<load var="doc" href="staffNS" willBeModified="true"/>
+<implementation var="domImpl" obj="doc" />
+<doctype var="docType" obj="doc"/>
+<createDocument var="docImp" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"a:b"' doctype="docTypeNull"/>
+<notations var="nodeMap" obj="docType"/>
+<assertNotNull actual="nodeMap" id="notationsNotNull"/>
+<getNamedItem var="notation1" obj="nodeMap" name='"notation1"'/>
+<getNamedItem var="notation2" obj="nodeMap" name='"notation2"'/>
+<importNode var="notationImp1" obj="doc" importedNode="notation1" deep="true"/>
+<importNode var="notationImp2" obj="doc" importedNode="notation2" deep="false"/>
+<importNode var="notationImpNew1" obj="docImp" importedNode="notation1" deep="false"/>
+<importNode var="notationImpNew2" obj="docImp" importedNode="notation2" deep="true"/>
+<publicId var="publicId1" obj="notation1" interface="Notation"/>
+<publicId var="publicId1Imp" obj="notation1" interface="Notation"/>
+<publicId var="publicId1NewImp" obj="notation1" interface="Notation"/>
+<systemId var="systemId1Imp" obj="notation1" interface="Notation"/>
+<systemId var="systemId1NewImp" obj="notation1" interface="Notation"/>
+<publicId var="publicId2Imp" obj="notation2" interface="Notation"/>
+<publicId var="publicId2NewImp" obj="notation2" interface="Notation"/>
+<systemId var="systemId2" obj="notation2" interface="Notation"/>
+<systemId var="systemId2Imp" obj="notation2" interface="Notation"/>
+<systemId var="systemId2NewImp" obj="notation2" interface="Notation"/>
+<assertEquals expected="publicId1" actual="publicId1Imp" id="documentimportnode22_N1PID" ignoreCase="false"/>
+<assertEquals expected="publicId1" actual="publicId1NewImp" id="documentimportnode22_N1NPID" ignoreCase="false"/>
+<assertNull actual="systemId1Imp" id="documentimportnode22_N1SID"/>
+<assertNull actual="systemId1NewImp" id="documentimportnode22_N1NSID" />
+<assertEquals expected="systemId2" actual="systemId2Imp" id="documentimportnode22_N2SID" ignoreCase="false"/>
+<assertEquals expected="systemId2" actual="systemId2NewImp" id="documentimportnode22_N2NSID" ignoreCase="false"/>
+<assertNull actual="publicId2Imp" id="documentimportnode22_N2PID"/>
+<assertNull actual="publicId2Imp" id="documentimportnode22_N2NPID"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/documenttypeinternalSubset01.xml b/test/testcases/tests/level2/core/documenttypeinternalSubset01.xml
new file mode 100644
index 0000000..daf291e
--- /dev/null
+++ b/test/testcases/tests/level2/core/documenttypeinternalSubset01.xml
@@ -0,0 +1,43 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documenttypeinternalSubset01">
+<metadata>
+<title>documenttypeinternalSubset01</title>
+<creator>IBM</creator>
+<description>
+ The method getInternalSubset() returns the internal subset as a string.
+
+ Create a new DocumentType node with null values for publicId and systemId.
+ Verify that its internal subset is null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-Core-DocType-internalSubset"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="internal" type="DOMString"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="docType" obj="domImpl" qualifiedName='"l2:root"' publicId="nullNS" systemId="nullNS" />
+<internalSubset var="internal" obj="docType"/>
+<assertNull actual="internal" id="internalSubsetNull"/>
+</test>
diff --git a/test/testcases/tests/level2/core/documenttypepublicid01.xml b/test/testcases/tests/level2/core/documenttypepublicid01.xml
new file mode 100644
index 0000000..0c9e511
--- /dev/null
+++ b/test/testcases/tests/level2/core/documenttypepublicid01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documenttypepublicid01">
+<metadata>
+<title>documenttypepublicid01</title>
+<creator>IBM</creator>
+<description>
+ The method getInternalSubset() returns the public identifier of the external subset.
+
+ Create a new DocumentType node with the value "PUB" for its publicId.
+ Check the value of the publicId attribute using getPublicId().
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-Core-DocType-publicId"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="publicId" type="DOMString"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="docType" obj="domImpl" qualifiedName='"l2:root"' publicId='"PUB"' systemId="nullNS" />
+<publicId var="publicId" obj="docType" interface="DocumentType"/>
+<assertEquals actual="publicId" expected='"PUB"' id="documenttypepublicid01" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/documenttypesystemid01.xml b/test/testcases/tests/level2/core/documenttypesystemid01.xml
new file mode 100644
index 0000000..9cad9d8
--- /dev/null
+++ b/test/testcases/tests/level2/core/documenttypesystemid01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="documenttypesystemid01">
+<metadata>
+<title>documenttypesystemid01</title>
+<creator>IBM</creator>
+<description>
+ The method getInternalSubset() returns the public identifier of the external subset.
+
+ Create a new DocumentType node with the value "SYS" for its systemId and PUB for
+ its publicId. Check the value of the systemId and pbulicId attributes.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-Core-DocType-systemId"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="publicId" type="DOMString"/>
+<var name="systemId" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="docType" obj="domImpl" qualifiedName='"l2:root"' publicId='"PUB"' systemId='"SYS"' />
+<publicId var="publicId" obj="docType" interface="DocumentType"/>
+<systemId var="systemId" obj="docType" interface="DocumentType"/>
+<assertEquals actual="publicId" expected='"PUB"' id="documenttypepublicid01" ignoreCase="false"/>
+<assertEquals actual="systemId" expected='"SYS"' id="documenttypesystemid01" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/domimplementationcreatedocument03.xml b/test/testcases/tests/level2/core/domimplementationcreatedocument03.xml
new file mode 100644
index 0000000..201d71a
--- /dev/null
+++ b/test/testcases/tests/level2/core/domimplementationcreatedocument03.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="domimplementationcreatedocument03">
+<metadata>
+<title>domimplementationcreatedocument03</title>
+<creator>IBM</creator>
+<description>
+ The createDocument method with valid arguments, should create a DOM Document of
+ the specified type.
+
+ Call the createDocument on this DOMImplementation with
+ createDocument ("http://www.w3.org/DOMTest/L2",see the array below for valid QNames,null).
+ Check if the returned Document object is is empty with no Document Element.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.w3.org/DOMTest/L2&quot;"/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="qualifiedNames" type="List">
+<member>&quot;_:_&quot;</member>
+<member>&quot;_:h0&quot;</member>
+<member>&quot;_:test&quot;</member>
+<member>&quot;l_:_&quot;</member>
+<member>&quot;ns:_0&quot;</member>
+<member>&quot;ns:a0&quot;</member>
+<member>&quot;ns0:test&quot;</member>
+<member>&quot;a.b:c&quot;</member>
+<member>&quot;a-b:c&quot;</member>
+<member>&quot;a-b:c&quot;</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<for-each collection="qualifiedNames" member="qualifiedName">
+<createDocument obj="domImpl" var="newDoc" namespaceURI="namespaceURI" qualifiedName="qualifiedName" doctype="docType"/>
+<assertNotNull actual="newDoc" id="domimplementationcreatedocument03"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/domimplementationcreatedocument04.xml b/test/testcases/tests/level2/core/domimplementationcreatedocument04.xml
new file mode 100644
index 0000000..ee02789
--- /dev/null
+++ b/test/testcases/tests/level2/core/domimplementationcreatedocument04.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="domimplementationcreatedocument04">
+<metadata>
+<title>domimplementationcreatedocument04</title>
+<creator>IBM</creator>
+<description>
+ The createDocument method should throw a NAMESPACE_ERR if the qualifiedName has
+ a prefix and the namespaceURI is null.
+
+ Call the createDocument on this DOMImplementation with null namespaceURI and a
+ qualifiedName that has a namespace prefix using this DOMImplementation.
+ Check if the NAMESPACE_ERR is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="namespaceURI" type="DOMString" isNull="true"/>
+<var name="qualifiedName" type="DOMString" value="&quot;dom:root&quot;"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<assertDOMException id="domimplementationcreatedocument04">
+<NAMESPACE_ERR>
+<createDocument obj="domImpl" var="newDoc" namespaceURI="namespaceURI" qualifiedName="qualifiedName" doctype="docType"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/domimplementationcreatedocument05.xml b/test/testcases/tests/level2/core/domimplementationcreatedocument05.xml
new file mode 100644
index 0000000..2be6ad4
--- /dev/null
+++ b/test/testcases/tests/level2/core/domimplementationcreatedocument05.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="domimplementationcreatedocument05">
+<metadata>
+<title>domimplementationcreatedocument05</title>
+<creator>IBM</creator>
+<description>
+ The createDocument method should throw a NAMESPACE_ERR if the qualifiedName has
+ a prefix that is xml and the namespaceURI is different from
+ http://www..w3.org/XML/1998/namespace.
+
+ Call the createDocument on this DOMImplementation with namespaceURI that is
+ http://www.w3.org/xml/1998/namespace and a qualifiedName that has the prefix xml
+ Check if the NAMESPACE_ERR is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.w3.org/xml/1998/namespace&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;xml:root&quot;"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<assertDOMException id="domimplementationcreatedocument05">
+<NAMESPACE_ERR>
+<createDocument obj="domImpl" var="newDoc" namespaceURI="namespaceURI" qualifiedName="qualifiedName" doctype="docType"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/domimplementationcreatedocument07.xml b/test/testcases/tests/level2/core/domimplementationcreatedocument07.xml
new file mode 100644
index 0000000..926285a
--- /dev/null
+++ b/test/testcases/tests/level2/core/domimplementationcreatedocument07.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="domimplementationcreatedocument07">
+<metadata>
+<title>domimplementationcreatedocument07</title>
+<creator>IBM</creator>
+<description>
+ The createDocument method should raise a NAMESPACE_ERR if the qualifiedName is malformed
+
+ Invoke the createDocument method on this DOMImplementation object with null values
+ for namespaceURI and docType and a malformed qualifiedName.
+ The NAMESPACE_ERR should be raised.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.w3.org/DOMTest/level2&quot;"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<assertDOMException id="domimplementationcreatedocument07">
+<NAMESPACE_ERR>
+<createDocument obj="domImpl" var="newDoc" namespaceURI="namespaceURI" qualifiedName='":"' doctype="docType"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/domimplementationcreatedocumenttype01.xml b/test/testcases/tests/level2/core/domimplementationcreatedocumenttype01.xml
new file mode 100644
index 0000000..14a3ce8
--- /dev/null
+++ b/test/testcases/tests/level2/core/domimplementationcreatedocumenttype01.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="domimplementationcreatedocumenttype01">
+<metadata>
+<title>domimplementationcreatedocumenttype01</title>
+<creator>IBM</creator>
+<description>
+ The method createDocumentType with valid values for qualifiedName, publicId and
+ systemId should create an empty DocumentType node.
+
+ Invoke createDocument on this DOMImplementation with a valid qualifiedName and different
+ publicIds and systemIds. Check if the the DocumentType node was created with its
+ ownerDocument attribute set to null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocument"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDocType" type="DocumentType"/>
+<var name="ownerDocument" type="Document"/>
+<var name="qualifiedName" type="DOMString" value="&quot;test:root&quot;"/>
+<var name="publicId" type="DOMString"/>
+<var name="systemId" type="DOMString"/>
+<var name="publicIds" type="List">
+<member>&quot;1234&quot;</member>
+<member>&quot;test&quot;</member>
+</var>
+<var name="systemIds" type="List">
+<member>&quot;&quot;</member>
+<member>&quot;test&quot;</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<for-each collection="publicIds" member="publicId">
+<for-each collection="systemIds" member="systemId">
+<createDocumentType obj="domImpl" var="newDocType" qualifiedName="qualifiedName" publicId="publicId" systemId="systemId"/>
+<assertNotNull actual="newDocType" id="domimplementationcreatedocumenttype01_newDocType"/>
+<ownerDocument obj="newDocType" var="ownerDocument"/>
+<assertNull actual="ownerDocument" id="domimplementationcreatedocumenttype01_ownerDocument"/>
+</for-each>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/domimplementationcreatedocumenttype02.xml b/test/testcases/tests/level2/core/domimplementationcreatedocumenttype02.xml
new file mode 100644
index 0000000..e534b13
--- /dev/null
+++ b/test/testcases/tests/level2/core/domimplementationcreatedocumenttype02.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="domimplementationcreatedocumenttype02">
+<metadata>
+<title>domimplementationcreatedocumenttype02</title>
+<creator>IBM</creator>
+<description>
+ The method createDocumentType with valid values for qualifiedName, publicId and
+ systemId should create an empty DocumentType node.
+
+ Invoke createDocument on this DOMImplementation with a different valid qualifiedNames
+ and a valid publicId and systemId. Check if the the DocumentType node was created
+ with its ownerDocument attribute set to null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocType"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDocType" type="DocumentType"/>
+<var name="ownerDocument" type="Document"/>
+<var name="publicId" type="DOMString" value="&quot;http://www.w3.org/DOM/Test/dom2.dtd&quot;"/>
+<var name="systemId" type="DOMString" value="&quot;dom2.dtd&quot;"/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="qualifiedNames" type="List">
+<member>&quot;_:_&quot;</member>
+<member>&quot;_:h0&quot;</member>
+<member>&quot;_:test&quot;</member>
+<member>&quot;_:_.&quot;</member>
+<member>&quot;_:a-&quot;</member>
+<member>&quot;l_:_&quot;</member>
+<member>&quot;ns:_0&quot;</member>
+<member>&quot;ns:a0&quot;</member>
+<member>&quot;ns0:test&quot;</member>
+<member>&quot;ns:EEE.&quot;</member>
+<member>&quot;ns:_-&quot;</member>
+<member>&quot;a.b:c&quot;</member>
+<member>&quot;a-b:c.j&quot;</member>
+<member>&quot;a-b:c&quot;</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<for-each collection="qualifiedNames" member="qualifiedName">
+<createDocumentType obj="domImpl" var="newDocType" qualifiedName="qualifiedName" publicId="publicId" systemId="systemId"/>
+<assertNotNull actual="newDocType" id="domimplementationcreatedocumenttype02_newDocType"/>
+<ownerDocument obj="newDocType" var="ownerDocument"/>
+<assertNull actual="ownerDocument" id="domimplementationcreatedocumenttype02_ownerDocument"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/domimplementationcreatedocumenttype04.xml b/test/testcases/tests/level2/core/domimplementationcreatedocumenttype04.xml
new file mode 100644
index 0000000..c65414a
--- /dev/null
+++ b/test/testcases/tests/level2/core/domimplementationcreatedocumenttype04.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="domimplementationcreatedocumenttype04">
+<metadata>
+<title>domimplementationcreatedocumenttype04</title>
+<creator>IBM</creator>
+<description>
+ The method createDocumentType should raise a INVALID_CHARACTER_ERR if the qualifiedName
+ contains an illegal characters.
+
+ Invoke createDocument on this DOMImplementation with qualifiedNames having illegal characters.
+ Check if an INVALID_CHARACTER_ERR is raised in each case.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocType"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDocType" type="DocumentType"/>
+<var name="publicId" type="DOMString" value="&quot;http://www.w3.org/DOM/Test/dom2.dtd&quot;"/>
+<var name="systemId" type="DOMString" value="&quot;dom2.dtd&quot;"/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="qualifiedNames" type="List">
+<member>&quot;{&quot;</member>
+<member>&quot;}&quot;</member>
+<member>&quot;'&quot;</member>
+<member>&quot;~&quot;</member>
+<member>&quot;`&quot;</member>
+<member>&quot;@&quot;</member>
+<member>&quot;#&quot;</member>
+<member>&quot;$&quot;</member>
+<member>&quot;%&quot;</member>
+<member>&quot;^&quot;</member>
+<member>&quot;&amp;&quot;</member>
+<member>&quot;*&quot;</member>
+<member>&quot;(&quot;</member>
+<member>&quot;)&quot;</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<for-each collection="qualifiedNames" member="qualifiedName">
+<assertDOMException id="domimplementationcreatedocumenttype04">
+<INVALID_CHARACTER_ERR>
+<createDocumentType obj="domImpl" var="newDocType" qualifiedName="qualifiedName" publicId="publicId" systemId="systemId"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/domimplementationfeaturecore.xml b/test/testcases/tests/level2/core/domimplementationfeaturecore.xml
new file mode 100644
index 0000000..360ad4f
--- /dev/null
+++ b/test/testcases/tests/level2/core/domimplementationfeaturecore.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="domimplementationfeaturecore">
+ <metadata>
+ <title>domimplementationFeaturecore</title>
+ <creator>NIST</creator>
+ <description>
+ The "feature" parameter in the
+ "hasFeature(feature,version)" method is the package name
+ of the feature. Legal values are XML and HTML and CORE.
+ (Test for feature core, lower case)
+
+ Retrieve the entire DOM document and invoke its
+ "getImplementation()" method. This should create a
+ DOMImplementation object whose "hasFeature(feature,
+ version)" method is invoked with feature equal to "core".
+ The method should return a boolean "true".
+</description>
+ <contributor>Mary Brady</contributor>
+ <date qualifier="created">2001-08-17</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="state" type="boolean"/>
+ <load var="doc" href="staff" willBeModified="false"/>
+ <implementation obj="doc" var="domImpl"/>
+ <hasFeature obj="domImpl" var="state" feature='"core"' version='"2.0"'/>
+ <assertTrue actual="state" id="domimplementationFeaturecoreAssert"/>
+</test>
diff --git a/test/testcases/tests/level2/core/domimplementationfeaturexmlversion2.xml b/test/testcases/tests/level2/core/domimplementationfeaturexmlversion2.xml
new file mode 100644
index 0000000..4f817e2
--- /dev/null
+++ b/test/testcases/tests/level2/core/domimplementationfeaturexmlversion2.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="domimplementationfeaturexmlversion2">
+<metadata>
+<title>domimplementationFeaturexmlVersion2</title>
+<creator>NIST</creator>
+<description>
+ The "feature" parameter in the
+ "hasFeature(feature,version)" method is the package name
+ of the feature. Legal values are XML and HTML.
+ (Test for feature "xml" and version "2.0")
+
+ Retrieve the entire DOM document and invoke its
+ "getImplementation()" method. This should create a
+ DOMImplementation object whose "hasFeature(feature,
+ version)" method is invoked with "feature" equal to "xml".
+ The method should return a boolean "true".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<hasFeature obj="domImpl" var="state" feature="&quot;xml&quot;" version="&quot;2.0&quot;"/>
+<assertTrue actual="state" id="domimplementationFeaturexmlVersion2Assert"/>
+</test>
diff --git a/test/testcases/tests/level2/core/domimplementationhasfeature01.xml b/test/testcases/tests/level2/core/domimplementationhasfeature01.xml
new file mode 100644
index 0000000..476c4fc
--- /dev/null
+++ b/test/testcases/tests/level2/core/domimplementationhasfeature01.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="domimplementationhasfeature01">
+<metadata>
+<title>domimplementationhasfeature01</title>
+<creator>IBM</creator>
+<description>
+ The method "hasFeature(feature,version)" tests if the DOMImplementation implements
+ a specific feature and if so returns true.
+
+ Call the hasFeature method on this DOMImplementation with a combination of features
+ versions as below. Valid feature names are case insensitive and versions "2.0",
+ "1.0" and if the version is not specified, supporting any version of the feature
+ should return true. Check if the value returned value was true.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="version" type="DOMString" value="&quot;&quot;"/>
+<var name="version1" type="DOMString" value="&quot;1.0&quot;"/>
+<var name="version2" type="DOMString" value="&quot;2.0&quot;"/>
+<var name="featureCore" type="DOMString"/>
+<var name="featureXML" type="DOMString"/>
+<var name="success" type="boolean"/>
+<var name="featuresXML" type="List">
+<member>&quot;XML&quot;</member>
+<member>&quot;xmL&quot;</member>
+</var>
+<var name="featuresCore" type="List">
+<member>&quot;Core&quot;</member>
+<member>&quot;CORE&quot;</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<for-each collection="featuresXML" member="featureXML">
+<hasFeature obj="domImpl" var="success" feature="featureXML" version="version"/>
+<assertTrue actual="success" id="domimplementationhasfeature01_XML_1"/>
+<hasFeature obj="domImpl" var="success" feature="featureXML" version="version1"/>
+<assertTrue actual="success" id="domimplementationhasfeature01_XML_2"/>
+</for-each>
+<for-each collection="featuresCore" member="featureCore">
+<hasFeature obj="domImpl" var="success" feature="featureCore" version="version"/>
+<assertTrue actual="success" id="domimplementationhasfeature01_Core_1"/>
+
+<!-- result is indeterminant since Core was not defined in DOM L1 -->
+<hasFeature obj="domImpl" var="success" feature="featureCore" version="version1"/>
+
+<hasFeature obj="domImpl" var="success" feature="featureCore" version="version2"/>
+<assertTrue actual="success" id="domimplementationhasfeature01_Core_3"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/domimplementationhasfeature02.xml b/test/testcases/tests/level2/core/domimplementationhasfeature02.xml
new file mode 100644
index 0000000..5ab08a3
--- /dev/null
+++ b/test/testcases/tests/level2/core/domimplementationhasfeature02.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="domimplementationhasfeature02">
+<metadata>
+<title>domimplementationhasfeature02</title>
+<creator>IBM</creator>
+<description>
+ The method "hasFeature(feature,version)" tests if the DOMImplementation implements
+ a specific feature and if not returns false.
+
+ Call the hasFeature method on this DOMImplementation with a unfimiliar values for
+ feature and version. Check if the value returned was false.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="success" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<hasFeature obj="domImpl" var="success" feature="&quot;Blah Blah&quot;" version="&quot;&quot;"/>
+<assertFalse actual="success" id="domimplementationhasfeature02"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementgetattributenodens01.xml b/test/testcases/tests/level2/core/elementgetattributenodens01.xml
new file mode 100644
index 0000000..8700a69
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementgetattributenodens01.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementgetattributenodens01">
+ <metadata>
+ <title>elementgetattributenodens01</title>
+ <creator>IBM</creator>
+ <description>
+ The method getAttributeNodeNS retrieves an Attr node by local name and namespace URI.
+ Create a new element node and add 2 new attribute nodes to it that have the same
+ local name but different namespaceURIs and prefixes.
+ Retrieve an attribute using namespace and localname and check its value, name and
+ namespaceURI.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElGetAtNodeNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="attribute1" type="Attr"/>
+ <var name="attribute2" type="Attr"/>
+ <var name="newAttribute1" type="Attr"/>
+ <var name="newAttribute2" type="Attr"/>
+ <var name="attribute" type="Attr"/>
+ <var name="attrValue" type="DOMString"/>
+ <var name="attrName" type="DOMString"/>
+ <var name="attNodeName" type="DOMString"/>
+ <var name="attrLocalName" type="DOMString"/>
+ <var name="attrNS" type="DOMString"/>
+ <load var="doc" href="staffNS" willBeModified="false"/>
+ <createElementNS var="element" obj="doc" namespaceURI='"namespaceURI"'
+ qualifiedName='"root"'/>
+ <createAttributeNS var="attribute1" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Level2"' qualifiedName='"l2:att"'/>
+ <setAttributeNodeNS var="newAttribute1" obj="element" newAttr="attribute1"/>
+ <createAttributeNS var="attribute2" obj="doc" namespaceURI='"http://www.w3.org/DOM/Level1"'
+ qualifiedName='"att"'/>
+ <setAttributeNodeNS var="newAttribute2" obj="element" newAttr="attribute2"/>
+ <getAttributeNodeNS var="attribute" obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Level2"' localName='"att"'/>
+ <nodeValue var="attrValue" obj="attribute"/>
+ <name var="attrName" obj="attribute" interface="Attr"/>
+ <nodeName var="attNodeName" obj="attribute"/>
+ <localName var="attrLocalName" obj="attribute"/>
+ <namespaceURI var="attrNS" obj="attribute"/>
+ <assertEquals actual="attrValue" expected='""' id="elementgetattributenodens01_attrValue" ignoreCase="false"/>
+ <assertEquals actual="attrName" expected='"l2:att"' id="elementgetattributenodens01_attrName" ignoreCase="false"/>
+ <assertEquals actual="attNodeName" expected='"l2:att"' id="elementgetattributenodens01_attrNodeName" ignoreCase="false"/>
+ <assertEquals actual="attrLocalName" expected='"att"' id="elementgetattributenodens01_attrLocalName" ignoreCase="false"/>
+ <assertEquals actual="attrNS" expected='"http://www.w3.org/DOM/Level2"' id="elementgetattributenodens01_attrNs" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level2/core/elementgetattributenodens02.xml b/test/testcases/tests/level2/core/elementgetattributenodens02.xml
new file mode 100644
index 0000000..a360258
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementgetattributenodens02.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementgetattributenodens02">
+ <metadata>
+ <title>elementgetattributenodens02</title>
+ <creator>IBM</creator>
+ <description>
+ The method getAttributeNodeNS retrieves an Attr node by local name and namespace URI.
+ Create a new element node and add a new attribute node to it. Using the getAttributeNodeNS,
+ retrieve the newly added attribute node and check its value.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElGetAtNodeNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="attribute" type="Attr"/>
+ <var name="newAttribute1" type="Attr"/>
+ <var name="attrValue" type="DOMString"/>
+ <load var="doc" href="staffNS" willBeModified="false"/>
+ <createElementNS var="element" obj="doc" namespaceURI='"namespaceURI"'
+ qualifiedName='"root"'/>
+ <createAttributeNS var="attribute" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Level2"' qualifiedName='"l2:att"'/>
+ <setAttributeNodeNS var="newAttribute1" obj="element" newAttr="attribute"/>
+ <getAttributeNodeNS var="attribute" obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Level2"' localName='"att"'/>
+ <nodeValue var="attrValue" obj="attribute"/>
+ <assertEquals actual="attrValue" expected='""' id="elementgetattributenodens02" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementgetattributenodens03.xml b/test/testcases/tests/level2/core/elementgetattributenodens03.xml
new file mode 100644
index 0000000..6e87ae0
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementgetattributenodens03.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementgetattributenodens03">
+ <metadata>
+ <title>elementgetattributenodens03</title>
+ <creator>IBM</creator>
+ <description>
+ The method getAttributeNodeNS retrieves an Attr node by local name and namespace URI.
+ Using the getAttributeNodeNS, retrieve and verify the value of the default
+ attribute node.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElGetAtNodeNS"/>
+ <subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <implementationAttribute name="validating" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="attribute" type="Attr"/>
+ <var name="attrValue" type="DOMString"/>
+ <var name="childList" type="NodeList"/>
+ <var name="nullNS" type="DOMString" isNull="true"/>
+ <load var="doc" href="staffNS" willBeModified="false"/>
+ <getElementsByTagNameNS var="childList" obj="doc" localName='"employee"'
+ namespaceURI='"http://www.nist.gov"' interface="Document"/>
+ <item var="element" obj="childList" index="1" interface="NodeList"/>
+ <getAttributeNodeNS var="attribute" obj="element" localName='"defaultAttr"'
+ namespaceURI="nullNS"/>
+ <nodeValue var="attrValue" obj="attribute"/>
+ <assertEquals actual="attrValue" expected='"defaultVal"' id="elementgetattributenodens03" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementgetattributens02.xml b/test/testcases/tests/level2/core/elementgetattributens02.xml
new file mode 100644
index 0000000..23a00d2
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementgetattributens02.xml
@@ -0,0 +1,45 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementgetattributens02">
+ <metadata>
+ <title>elementgetattributens02</title>
+ <creator>IBM</creator>
+ <description>
+ The method getAttributeNS retrieves an attribute value by local name and namespace URI.
+ Using the getAttributeNodeNS, retreive and verify the value of the default
+ attribute node.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElGetAttrNS"/>
+ <subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <implementationAttribute name="validating" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="attrValue" type="DOMString"/>
+ <var name="childList" type="NodeList"/>
+ <var name="nullNS" type="DOMString" isNull="true"/>
+ <load var="doc" href="staffNS" willBeModified="false"/>
+ <getElementsByTagNameNS var="childList" obj="doc" localName='"employee"'
+ namespaceURI='"http://www.nist.gov"' interface="Document"/>
+ <item var="element" obj="childList" index="1" interface="NodeList"/>
+ <getAttributeNS var="attrValue" obj="element" localName='"defaultAttr"' namespaceURI="nullNS"/>
+ <assertEquals actual="attrValue" expected='"defaultVal"' id="elementgetattributens02" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementgetelementsbytagnamens02.xml b/test/testcases/tests/level2/core/elementgetelementsbytagnamens02.xml
new file mode 100644
index 0000000..c070334
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementgetelementsbytagnamens02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementgetelementsbytagnamens02">
+ <metadata>
+ <title>elementgetelementsbytagnamens02</title>
+ <creator>IBM</creator>
+ <description>
+ The method getElementsByTagNameNS returns a NodeList of all the Elements with a given local
+ name and namespace URI in the order in which they are encountered in a preorder traversal
+ of the Document tree.
+ Invoke getElementsByTagNameNS on the documentElement with values for namespaceURI '*' and
+ localName '*'. Verify if this returns a nodeList of 0 elements.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="elementList" type="NodeList"/>
+ <load var="doc" href="staffNS" willBeModified="false"/>
+ <documentElement var="element" obj="doc"/>
+ <getElementsByTagNameNS var="elementList" obj="element"
+ namespaceURI='"**"' localName='"*"' interface="Element" />
+ <assertSize size="0" collection="elementList" id="elementgetelementsbytagnamens02"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementgetelementsbytagnamens04.xml b/test/testcases/tests/level2/core/elementgetelementsbytagnamens04.xml
new file mode 100644
index 0000000..6e3add6
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementgetelementsbytagnamens04.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementgetelementsbytagnamens04">
+ <metadata>
+ <title>elementgetelementsbytagnamens04</title>
+ <creator>IBM</creator>
+ <description>
+ Returns a NodeList of all the Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of the Document tree.
+ Create a new element node ('root') and append three newly created child nodes (all have
+ local name 'child' and defined in different namespaces).
+ Test 1: invoke getElementsByTagNameNS to retrieve one of the children.
+ Test 2: invoke getElementsByTagNameNS with the value of namespace equals to '*', and
+ verify that the node list has length of 3.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+ <subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="child1" type="Element"/>
+ <var name="child2" type="Element"/>
+ <var name="child3" type="Element"/>
+ <var name="appendedChild" type="Node"/>
+ <var name="elementList" type="NodeList"/>
+ <var name="nullNS" type="DOMString" isNull="true"/>
+ <load var="doc" href="staffNS" willBeModified="false"/>
+ <createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM"'
+ qualifiedName='"root"'/>
+ <createElementNS var="child1" obj="doc" namespaceURI='"http://www.w3.org/DOM/Level1"'
+ qualifiedName='"dom:child"'/>
+ <createElementNS var="child2" obj="doc" namespaceURI="nullNS"
+ qualifiedName='"child"'/>
+ <createElementNS var="child3" obj="doc" namespaceURI='"http://www.w3.org/DOM/Level2"'
+ qualifiedName='"dom:child"'/>
+ <appendChild var="appendedChild" obj="element" newChild="child1"/>
+ <appendChild var="appendedChild" obj="element" newChild="child2"/>
+ <appendChild var="appendedChild" obj="element" newChild="child3"/>
+ <getElementsByTagNameNS var="elementList" obj="element" namespaceURI="nullNS"
+ localName='"child"' interface="Element" />
+ <assertSize size="1" collection="elementList" id="elementgetelementsbytagnamens04_1"/>
+ <getElementsByTagNameNS var="elementList" obj="element" namespaceURI='"*"'
+ localName='"child"' interface="Element" />
+ <assertSize size="3" collection="elementList" id="elementgetelementsbytagnamens04_2"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementgetelementsbytagnamens05.xml b/test/testcases/tests/level2/core/elementgetelementsbytagnamens05.xml
new file mode 100644
index 0000000..ff3abc5
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementgetelementsbytagnamens05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementgetelementsbytagnamens05">
+ <metadata>
+ <title>elementgetelementsbytagnamens05</title>
+ <creator>IBM</creator>
+ <description>
+ Returns a NodeList of all the Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of the Document tree.
+ Invoke getElementsByTagNameNS on the documentElement with the following values:
+ namespaceURI: 'http://www.altavista.com'
+ localName: '*'.
+ Verify if this returns a nodeList of 1 elements.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="elementList" type="NodeList"/>
+ <load var="doc" href="staffNS" willBeModified="false"/>
+ <documentElement var="element" obj="doc"/>
+ <getElementsByTagNameNS var="elementList" obj="element"
+ namespaceURI='"http://www.altavista.com"' localName='"*"' interface="Element" />
+ <assertSize size="1" collection="elementList" id="elementgetelementsbytagnamens05"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementhasattribute01.xml b/test/testcases/tests/level2/core/elementhasattribute01.xml
new file mode 100644
index 0000000..a56ab42
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementhasattribute01.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementhasattribute01">
+ <metadata>
+ <title>elementhasattribute01</title>
+ <creator>IBM</creator>
+ <description>
+ The method hasAttribute returns true when an attribute with a given name is specified
+ on this element or has a default value, false otherwise
+ Invoke the hasAttribute method to check if the documentElement has attributres.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeHasAttrs"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="false"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="state" type="boolean"/>
+ <load var="doc" href="staff" willBeModified="false"/>
+ <documentElement var="element" obj="doc"/>
+ <hasAttribute var="state" obj="element" name='""'/>
+ <assertFalse actual="state" id="elementhasattribute01"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementhasattribute02.xml b/test/testcases/tests/level2/core/elementhasattribute02.xml
new file mode 100644
index 0000000..559458c
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementhasattribute02.xml
@@ -0,0 +1,44 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementhasattribute02">
+ <metadata>
+ <title>elementhasattribute02</title>
+ <creator>IBM</creator>
+ <description>
+ The method hasAttribute returns true when an attribute with a given name is specified
+ on this element or has a default value, false otherwise
+ Invoke the hasAttribute method to on an element with default attributes and verify if it
+ returns true.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeHasAttrs"/>
+ </metadata>
+ <implementationAttribute name="validating" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="state" type="boolean"/>
+ <var name="elementList" type="NodeList"/>
+ <load var="doc" href="staffNS" willBeModified="false"/>
+ <getElementsByTagName interface="Document" obj="doc" tagname='"emp:employee"'
+ var="elementList"/>
+ <item var="element" obj="elementList" index="0" interface="NodeList"/>
+ <assertNotNull actual="element" id="empEmployeeNotNull"/>
+ <hasAttribute var="state" obj="element" name='"defaultAttr"'/>
+ <assertTrue actual="state" id="elementhasattribute02"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementhasattribute03.xml b/test/testcases/tests/level2/core/elementhasattribute03.xml
new file mode 100644
index 0000000..c86d2ab
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementhasattribute03.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementhasattribute03">
+ <metadata>
+ <title>elementhasattribute03</title>
+ <creator>IBM</creator>
+ <description>
+ The method hasAttribute returns true when an attribute with a given name is specified
+ on this element or has a default value, false otherwise.
+
+ Create an element Node and an attribute Node. Invoke hasAttribute method
+ to verify that there is no attribute. Append the attribute node to the element node.
+ Invoke the hasAttribute method on the element and verify if it returns true.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeHasAttrs"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="state" type="boolean"/>
+ <var name="attribute" type="Attr"/>
+ <var name="newAttribute" type="Attr"/>
+ <load var="doc" href="staff" willBeModified="false"/>
+ <createElement var="element" obj="doc" tagName='"address"'/>
+ <createAttribute var="attribute" obj="doc" name='"domestic"'/>
+ <hasAttribute var="state" obj="element" name='"domestic"'/>
+ <assertFalse actual="state" id="elementhasattribute03_False"/>
+ <setAttributeNode var="newAttribute" obj="element" newAttr="attribute"/>
+ <hasAttribute var="state" obj="element" name='"domestic"'/>
+ <assertTrue actual="state" id="elementhasattribute03_True"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementhasattribute04.xml b/test/testcases/tests/level2/core/elementhasattribute04.xml
new file mode 100644
index 0000000..d0dd75d
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementhasattribute04.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementhasattribute04">
+ <metadata>
+ <title>elementhasattribute04</title>
+ <creator>IBM</creator>
+ <description>
+ The method hasAttribute returns true when an attribute with a given name is specified
+ on this element or has a default value, false otherwise.
+
+ Create an element Node and an attribute Node and add the attribute node to the element.
+ Invoke the hasAttribute method on the element and verify if the method returns true.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeHasAttrs"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="state" type="boolean"/>
+ <var name="attribute" type="Attr"/>
+ <var name="newAttribute" type="Attr"/>
+ <load var="doc" href="staff" willBeModified="false"/>
+ <createElement var="element" obj="doc" tagName='"address"'/>
+ <createAttribute var="attribute" obj="doc" name='"domestic"'/>
+ <setAttributeNode var="newAttribute" obj="element" newAttr="attribute"/>
+ <hasAttribute var="state" obj="element" name='"domestic"'/>
+ <assertTrue actual="state" id="elementhasattribute04"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementhasattributens01.xml b/test/testcases/tests/level2/core/elementhasattributens01.xml
new file mode 100644
index 0000000..14d33f6
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementhasattributens01.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementhasattributens01">
+ <metadata>
+ <title>elementhasattributens01</title>
+ <creator>IBM</creator>
+ <description>
+ The method hasAttributeNS returns true when an attribute with a given local name
+ and namespace
+ URI is specified on this element or has a default value, false otherwise.
+
+ Retreive the first employee element node. Invoke the hasAttributeNS method to check if it
+ has the xmlns attribute that belongs to the namespace http://www.w3.org/2000/xmlns/.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="state" type="boolean"/>
+ <var name="elementList" type="NodeList"/>
+ <load var="doc" href="staffNS" willBeModified="false"/>
+ <getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"*"' localName='"employee"' interface="Document"/>
+ <item var="element" obj="elementList" index="0" interface="NodeList"/>
+ <hasAttributeNS var="state" obj="element"
+ namespaceURI='"http://www.w3.org/2000/xmlns/"' localName='"xmlns"'/>
+ <assertTrue actual="state" id="elementhasattributens01"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementhasattributens02.xml b/test/testcases/tests/level2/core/elementhasattributens02.xml
new file mode 100644
index 0000000..e75c142
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementhasattributens02.xml
@@ -0,0 +1,51 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementhasattributens02">
+ <metadata>
+ <title>elementhasattributens02</title>
+ <creator>IBM</creator>
+ <description>
+ The method hasAttributeNS returns true when an attribute with a given local
+ name and namespace URI is specified on this element or has a default value,
+ false otherwise.
+
+ Create a new element and attribute node that belong to the same namespace.
+ Add the attribute node to the element node. Check if the newly created element
+ node has an attribute by invoking the hasAttributeNS method with appropriate
+ values for the namespaceURI and localName parameters.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="state" type="boolean"/>
+ <var name="attribute" type="Attr"/>
+ <var name="newAttribute" type="Attr"/>
+ <load var="doc" href="staff" willBeModified="false"/>
+ <createElementNS var="element" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM"' qualifiedName='"address"'/>
+ <createAttributeNS var="attribute" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM"' qualifiedName='"domestic"'/>
+ <setAttributeNode var="newAttribute" obj="element" newAttr="attribute"/>
+ <hasAttributeNS var="state" obj="element"
+ namespaceURI='"http://www.w3.org/DOM"' localName='"domestic"'/>
+ <assertTrue actual="state" id="hasDomesticAttr"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementhasattributens03.xml b/test/testcases/tests/level2/core/elementhasattributens03.xml
new file mode 100644
index 0000000..4579ae6
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementhasattributens03.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementhasattributens03">
+ <metadata>
+ <title>elementhasattributens03</title>
+ <creator>IBM</creator>
+ <description>
+ The method hasAttributeNS returns true when an attribute with a given local name
+ and namespace URI is specified on this element or has a default value,
+ false otherwise.
+
+ Create a new element and an attribute node that has an empty namespace.
+ Add the attribute node to the element node. Check if the newly created element
+ node has an attribute by invoking the hasAttributeNS method with appropriate
+ values for the namespaceURI and localName parameters.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttrNS"/>
+ <subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="state" type="boolean"/>
+ <var name="attribute" type="Attr"/>
+ <var name="newAttribute" type="Attr"/>
+ <var name="nullNS" type="DOMString" isNull="true"/>
+ <load var="doc" href="staff" willBeModified="false"/>
+ <createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM"'
+ qualifiedName='"address"'/>
+ <assertNotNull actual="element" id="createElementNotNull"/>
+ <createAttributeNS var="attribute" obj="doc" namespaceURI='nullNS' qualifiedName='"domestic"'/>
+ <setAttributeNode var="newAttribute" obj="element" newAttr="attribute"/>
+ <hasAttributeNS var="state" obj="element" namespaceURI="nullNS" localName='"domestic"'/>
+ <assertTrue actual="state" id="elementhasattributens03"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementremoveattributens01.xml b/test/testcases/tests/level2/core/elementremoveattributens01.xml
new file mode 100644
index 0000000..ce40dfc
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementremoveattributens01.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementremoveattributens01">
+ <metadata>
+ <title>elementremoveattributens01</title>
+ <creator>IBM</creator>
+ <description>
+ The method removeAttributeNS removes an attribute by local name and namespace URI.
+ Create a new element and add a new attribute node to it.
+ Remove the attribute node using the removeAttributeNodeNS method.
+ Check if the attribute was remove by invoking the hasAttributeNS
+ method on the element and check if it returns false.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElRemAtNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="state" type="boolean"/>
+ <var name="attribute" type="Attr"/>
+ <var name="newAttribute" type="Attr"/>
+ <load var="doc" href="staff" willBeModified="false"/>
+ <createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM"'
+ qualifiedName='"elem"'/>
+ <createAttributeNS var="attribute" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Test/createAttributeNS"' qualifiedName='"attr"'/>
+ <setAttributeNodeNS var="newAttribute" obj="element" newAttr="attribute"/>
+ <removeAttributeNS obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Test/createAttributeNS"' localName='"attr"'/>
+ <hasAttributeNS var="state" obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Test/createAttributeNS"' localName='"attr"'/>
+ <assertFalse actual="state" id="elementremoveattributens01"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributenodens01.xml b/test/testcases/tests/level2/core/elementsetattributenodens01.xml
new file mode 100644
index 0000000..ef953a4
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributenodens01.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributenodens01">
+ <metadata>
+ <title>elementsetattributenodens01</title>
+ <creator>IBM</creator>
+ <description>
+ Testing Element.setAttributeNodeNS: If an attribute with that local name
+ and that namespace URI is already present in the element, it is replaced
+ by the new one.
+
+ Create a new element and two new attribute nodes (in the same namespace
+ and same localNames).
+ Add the two new attribute nodes to the element node using the
+ setAttributeNodeNS method. Check that only one attribute is added, check
+ the value of this attribute.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="attribute1" type="Attr"/>
+ <var name="attribute2" type="Attr"/>
+ <var name="attrNode" type="Attr"/>
+ <var name="attrName" type="DOMString"/>
+ <var name="attrNS" type="DOMString"/>
+ <var name="attrValue" type="DOMString"/>
+ <var name="attributes" type="NamedNodeMap"/>
+ <var name="newAttribute" type="Attr"/>
+ <var name="length" type="int"/>
+ <load var="doc" href="staff" willBeModified="true"/>
+ <createElementNS var="element" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Test/Level2"'
+ qualifiedName='"new:element"'/>
+ <createAttributeNS var="attribute1" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Test/att1"'
+ qualifiedName='"p1:att"'/>
+ <createAttributeNS var="attribute2" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Test/att1"'
+ qualifiedName='"p2:att"'/>
+
+ <value obj="attribute2" value='"value2"' interface="Attr"/>
+
+ <setAttributeNodeNS var="newAttribute" obj="element" newAttr="attribute1"/>
+
+ <setAttributeNodeNS var="newAttribute" obj="element" newAttr="attribute2"/>
+ <getAttributeNodeNS var="attrNode" obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Test/att1"'
+ localName='"att"'/>
+
+ <nodeName var="attrName" obj="attrNode"/>
+ <namespaceURI var="attrNS" obj="attrNode"/>
+ <assertEquals actual="attrName" expected='"p2:att"' id="elementsetattributenodens01_attrName" ignoreCase="false"/>
+ <assertEquals actual="attrNS" expected='"http://www.w3.org/DOM/Test/att1"'
+ id="elementsetattributenodens01_attrNS" ignoreCase="false"/>
+
+ <attributes var="attributes" obj="element"/>
+ <length var="length" obj="attributes" interface="NamedNodeMap"/>
+ <assertEquals actual="length" expected="1" id="length" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributenodens02.xml b/test/testcases/tests/level2/core/elementsetattributenodens02.xml
new file mode 100644
index 0000000..d4c9711
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributenodens02.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributenodens02">
+ <metadata>
+ <title>elementsetattributenodens02</title>
+ <creator>IBM</creator>
+ <description>
+ Test the setAttributeNodeNS method.
+ Retreive the street attribute from the second address element node.
+ Clone it and add it to the first address node. The INUSE_ATTRIBUTE_ERR exception
+ should not be thrown. Check the name and value of the newly added node.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS"/>
+ <subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="element2" type="Element"/>
+ <var name="attribute" type="Attr"/>
+ <var name="attributeCloned" type="Attr"/>
+ <var name="newAttr" type="Attr"/>
+ <var name="elementList" type="NodeList"/>
+ <var name="attrName" type="DOMString"/>
+ <var name="attrValue" type="DOMString"/>
+ <var name="nullNS" type="DOMString" isNull="true"/>
+ <load var="doc" href="staffNS" willBeModified="true"/>
+
+ <getElementsByTagNameNS var="elementList" obj="doc"
+ namespaceURI='"http://www.nist.gov"'
+ localName='"address"' interface="Document"/>
+
+ <item var="element" obj="elementList" index="1" interface="NodeList"/>
+
+ <getAttributeNodeNS var="attribute" obj="element"
+ namespaceURI="nullNS" localName='"street"'/>
+
+ <cloneNode var="attributeCloned" obj="attribute" deep="true"/>
+
+ <item var="element2" obj="elementList" index="2" interface="NodeList"/>
+ <setAttributeNodeNS var="newAttr" obj="element2" newAttr="attributeCloned"/>
+ <nodeName var="attrName" obj="newAttr"/>
+ <nodeValue var="attrValue" obj="newAttr"/>
+ <assertEquals actual="attrName" expected='"street"' id="elementsetattributenodens02_attrName" ignoreCase="false"/>
+ <assertEquals actual="attrValue" expected='"Yes"' id="elementsetattributenodens02_attrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributenodens03.xml b/test/testcases/tests/level2/core/elementsetattributenodens03.xml
new file mode 100644
index 0000000..a3fe92d
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributenodens03.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributenodens03">
+ <metadata>
+ <title>elementsetattributenodens03</title>
+ <creator>IBM</creator>
+ <description>
+ The method setAttributeNodeNS adds a new attribute and raises the
+ INUSE_ATTRIBUTE_ERR exception if the newAttr is already an attribute of
+ another Element object.
+
+ Retreive an attribute node of an existing element node. Attempt to add it to an another
+ element node. Check if the INUSE_ATTRIBUTE_ERR exception is thrown.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element1" type="Element"/>
+ <var name="element2" type="Element"/>
+ <var name="attribute" type="Attr"/>
+ <var name="newAttribute" type="Attr"/>
+ <var name="elementList" type="NodeList"/>
+ <var name="nullNS" type="DOMString" isNull="true"/>
+ <load var="doc" href="staffNS" willBeModified="true"/>
+ <getElementsByTagNameNS var="elementList" obj="doc"
+ namespaceURI='"http://www.nist.gov"'
+ localName='"address"' interface="Document"/>
+ <item var="element1" obj="elementList" index="1" interface="NodeList"/>
+ <getAttributeNodeNS var="attribute" obj="element1"
+ namespaceURI="nullNS" localName='"street"'/>
+
+ <item var="element2" obj="elementList" index="2" interface="NodeList"/>
+ <assertDOMException id="elementsetattributenodens03">
+ <INUSE_ATTRIBUTE_ERR>
+ <setAttributeNodeNS var="newAttribute" obj="element2" newAttr="attribute"/>
+ </INUSE_ATTRIBUTE_ERR>
+ </assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributenodens04.xml b/test/testcases/tests/level2/core/elementsetattributenodens04.xml
new file mode 100644
index 0000000..43fafe6
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributenodens04.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributenodens04">
+ <metadata>
+ <title>elementsetattributenodens04</title>
+ <creator>IBM</creator>
+ <description>
+ The method setAttributeNodeNS Adds a new attribute and raises an INUSE_ATTRIBUTE_ERR
+ if newAttr is already an attribute of another Element object.
+
+ Create two new element nodes and a new attribute node. Attempt to add the same attribute
+ node to the same two element nodes.
+ Check if an INUSE_ATTRIBUTE_ERR is thrown.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element1" type="Element"/>
+ <var name="element2" type="Element"/>
+ <var name="attribute" type="Attr"/>
+ <var name="newAttribute" type="Attr"/>
+ <load var="doc" href="staffNS" willBeModified="true"/>
+ <createElementNS var="element1" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"elem1"'/>
+ <createElementNS var="element2" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"elem2"'/>
+ <createAttributeNS var="attribute" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"attr"'/>
+ <setAttributeNodeNS var="newAttribute" obj="element1" newAttr="attribute"/>
+ <assertDOMException id="elementsetattributenodens04">
+ <INUSE_ATTRIBUTE_ERR>
+ <setAttributeNodeNS var="newAttribute" obj="element2" newAttr="attribute"/>
+ </INUSE_ATTRIBUTE_ERR>
+ </assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributenodens05.xml b/test/testcases/tests/level2/core/elementsetattributenodens05.xml
new file mode 100644
index 0000000..7ab0f7a
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributenodens05.xml
@@ -0,0 +1,53 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributenodens05">
+ <metadata>
+ <title>elementsetattributenodens05</title>
+ <creator>IBM</creator>
+ <description>
+ The method setAttributeNodeNS Adds a new attribute and raises
+ an WRONG_DOCUMENT_ERR if newAttr was created from a different document
+ than the one that created the element.
+ Create new element and attribute nodes in different documents.
+ Attempt to add the attribute node to the element node.
+ Check if an WRONG_DOCUMENT_ERR is thrown.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="docAlt" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="attribute" type="Attr"/>
+ <var name="newAttribute" type="Attr"/>
+ <load var="doc" href="staffNS" willBeModified="true"/>
+ <load var="docAlt" href="staffNS" willBeModified="true"/>
+ <createElementNS var="element" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Test"'
+ qualifiedName='"elem1"'/>
+ <createAttributeNS var="attribute" obj="docAlt"
+ namespaceURI='"http://www.w3.org/DOM/Test"'
+ qualifiedName='"attr"'/>
+ <assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+ <WRONG_DOCUMENT_ERR>
+ <setAttributeNodeNS var="newAttribute" obj="element" newAttr="attribute"/>
+ </WRONG_DOCUMENT_ERR>
+ </assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributenodens06.xml b/test/testcases/tests/level2/core/elementsetattributenodens06.xml
new file mode 100644
index 0000000..186fcf2
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributenodens06.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributenodens06">
+<metadata>
+<title>elementsetattributenodens06</title>
+<creator>IBM</creator>
+<description>
+ The method setAttributeNodeNS Adds a new attribute and raises an WRONG_DOCUMENT_ERR if this node
+ is readonly.
+
+ Attempt to add an attribute node to an element node which is part of the replacement text of
+ a read-only EntityReference node.
+ Check if a NO_MODIFICATION_ALLOWED_ERR is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="attribute" type="Attr"/>
+<var name="attribute2" type="Attr"/>
+<var name="entRef" type="EntityReference"/>
+<var name="elementList" type="NodeList"/>
+<var name="newAttribute" type="Node"/>
+<var name="newChild" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"elem1"'/>
+<createAttributeNS var="attribute" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"attr"'/>
+<createEntityReference var="entRef" obj="doc" name='"ent4"'/>
+<appendChild var="newChild" obj="attribute" newChild="entRef"/>
+<setAttributeNodeNS var="newAttribute" obj="element" newAttr="attribute"/>
+<childNodes var="elementList" obj="entRef"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<createAttributeNS var="attribute2" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"attr2"'/>
+<assertDOMException id="elementsetattributenodens06">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setAttributeNodeNS var="newAttribute" obj="element" newAttr="attribute2"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributens01.xml b/test/testcases/tests/level2/core/elementsetattributens01.xml
new file mode 100644
index 0000000..ab8e3c2
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributens01.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributens01">
+ <metadata>
+ <title>elementsetattributens01</title>
+ <creator>IBM</creator>
+ <description>
+ The method setAttributeNS adds a new attribute.
+ Create a new element and add a new attribute node to it using the setAttributeNS method.
+ Check if the attribute was correctly set by invoking the getAttributeNodeNS method
+ and checking the nodeName and nodeValue of the returned nodes.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="attribute" type="Attr"/>
+ <var name="attrName" type="DOMString"/>
+ <var name="attrValue" type="DOMString"/>
+ <load var="doc" href="staff" willBeModified="true"/>
+ <createElementNS var="element" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM"' qualifiedName='"dom:elem"'/>
+ <setAttributeNS obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Test/setAttributeNS"'
+ qualifiedName ='"attr"' value='"value"'/>
+ <getAttributeNodeNS var="attribute" obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Test/setAttributeNS"'
+ localName='"attr"'/>
+ <nodeName var="attrName" obj="attribute"/>
+ <nodeValue var="attrValue" obj="attribute"/>
+ <assertEquals actual="attrName" expected='"attr"' id="elementsetattributens01_attrName" ignoreCase="false"/>
+ <assertEquals actual="attrValue" expected='"value"' id="elementsetattributens01_attrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributens02.xml b/test/testcases/tests/level2/core/elementsetattributens02.xml
new file mode 100644
index 0000000..b7105f6
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributens02.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributens02">
+ <metadata>
+ <title>elementsetattributens02</title>
+ <creator>IBM</creator>
+ <description>
+ The method setAttributeNS adds a new attribute.
+
+ Retrieve an existing element node with attributes and add a new attribute node to it using
+ the setAttributeNS method. Check if the attribute was correctly set by invoking the
+ getAttributeNodeNS method and checking the nodeName and nodeValue of the returned nodes.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="attribute" type="Attr"/>
+ <var name="elementList" type="NodeList"/>
+ <var name="attrName" type="DOMString"/>
+ <var name="attrValue" type="DOMString"/>
+ <load var="doc" href="staff" willBeModified="true"/>
+ <getElementsByTagNameNS var="elementList" obj="doc"
+ namespaceURI='"*"' localName='"address"' interface="Document"/>
+ <item var="element" obj="elementList" index="0" interface="NodeList"/>
+ <setAttributeNS obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Test/setAttributeNS"'
+ qualifiedName ='"this:street"' value='"Silver Street"'/>
+ <getAttributeNodeNS var="attribute" obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Test/setAttributeNS"' localName='"street"'/>
+ <nodeName var="attrName" obj="attribute"/>
+ <nodeValue var="attrValue" obj="attribute"/>
+ <assertEquals actual="attrName" expected='"this:street"' id="elementsetattributens02_attrName" ignoreCase="false"/>
+ <assertEquals actual="attrValue" expected='"Silver Street"' id="elementsetattributens02_attrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributens03.xml b/test/testcases/tests/level2/core/elementsetattributens03.xml
new file mode 100644
index 0000000..968500c
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributens03.xml
@@ -0,0 +1,57 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributens03">
+ <metadata>
+ <title>elementsetattributens03</title>
+ <creator>IBM</creator>
+ <description>
+ The method setAttributeNS adds a new attribute.
+ Retreive an existing element node with a default attribute node and
+ add two new attribute nodes that have the same local name as the
+ default attribute but different namespaceURI to it using the setAttributeNS method.
+ Check if the attribute was correctly set by invoking the getAttributeNodeNS method
+ and checking the nodeName and nodeValue of the returned nodes.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="attribute" type="Attr"/>
+ <var name="elementList" type="NodeList"/>
+ <var name="attrName" type="DOMString"/>
+ <var name="attrValue" type="DOMString"/>
+ <load var="doc" href="staffNS" willBeModified="true"/>
+ <getElementsByTagName var="elementList" obj="doc" tagname='"emp:employee"' interface="Document"/>
+ <item var="element" obj="elementList" index="0" interface="NodeList"/>
+ <assertNotNull actual="element" id="empEmployeeNotNull"/>
+ <setAttributeNS obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Test/1"'
+ qualifiedName ='"defaultAttr"' value='"default1"'/>
+ <setAttributeNS obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Test/2"'
+ qualifiedName ='"defaultAttr"' value='"default2"'/>
+ <getAttributeNodeNS var="attribute" obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Test/1"' localName='"defaultAttr"'/>
+ <nodeName var="attrName" obj="attribute"/>
+ <nodeValue var="attrValue" obj="attribute"/>
+ <assertEquals actual="attrName" expected='"defaultAttr"' id="elementsetattributens03_attrName" ignoreCase="false"/>
+ <assertEquals actual="attrValue" expected='"default1"' id="elementsetattributens03_attrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributens04.xml b/test/testcases/tests/level2/core/elementsetattributens04.xml
new file mode 100644
index 0000000..1c31860
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributens04.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributens04">
+ <metadata>
+ <title>elementsetattributens04</title>
+ <creator>IBM</creator>
+ <description>
+ The method setAttributeNS adds a new attribute and raises a INVALID_CHARACTER_ERR if
+ the specified qualified name contains an illegal character.
+ Invoke the setAttributeNS method on this Element object with a valid value for
+ namespaceURI, and qualifiedNames that contain illegal characters. Check if the an
+ INVALID_CHARACTER_ERR was thrown.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="qualifiedName" type="DOMString"/>
+ <var name="qualifiedNames" type="List">
+ <member>&quot;/&quot;</member>
+ <member>&quot;//&quot;</member>
+ <member>&quot;\\&quot;</member>
+ <member>&quot;;&quot;</member>
+ <member>&quot;&amp;&quot;</member>
+ <member>&quot;*&quot;</member>
+ <member>&quot;]]&quot;</member>
+ <member>&quot;>&quot;</member>
+ <member>&quot;&lt;&quot;</member>
+ </var>
+ <load var="doc" href="staffNS" willBeModified="true"/>
+ <createElementNS var="element" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Test/L2"'
+ qualifiedName='"dom:elem"'/>
+ <for-each collection="qualifiedNames" member="qualifiedName">
+ <assertDOMException id="elementsetattributens04">
+ <INVALID_CHARACTER_ERR>
+ <setAttributeNS obj="element"
+ namespaceURI='"http://www.w3.org/DOM/Test/L2"'
+ qualifiedName ="qualifiedName" value='"test"'/>
+ </INVALID_CHARACTER_ERR>
+ </assertDOMException>
+ </for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributens05.xml b/test/testcases/tests/level2/core/elementsetattributens05.xml
new file mode 100644
index 0000000..0f32689
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributens05.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributens05">
+ <metadata>
+ <title>elementsetattributens05</title>
+ <creator>IBM</creator>
+ <description>
+ The method setAttributeNS adds a new attribute and raises a NAMESPACE_ERR if the
+ qualifiedName has a prefix and the namespaceURI is null.
+ Invoke the setAttributeNS method on a new Element object with null namespaceURI and a
+ qualifiedName that has a namespace prefix. Check if the NAMESPACE_ERR was thrown.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+ <subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <var name="nullNS" type="DOMString" isNull="true"/>
+ <load var="doc" href="staffNS" willBeModified="true"/>
+ <createElementNS var="element" obj="doc"
+ namespaceURI='"http://www.w3.org/DOM/Test/L2"'
+ qualifiedName='"dom:elem"'/>
+ <assertDOMException id="elementsetattributens05">
+ <NAMESPACE_ERR>
+ <setAttributeNS obj="element" namespaceURI="nullNS"
+ qualifiedName='"dom:root"' value='"test"'/>
+ </NAMESPACE_ERR>
+ </assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributens08.xml b/test/testcases/tests/level2/core/elementsetattributens08.xml
new file mode 100644
index 0000000..17fcccb
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributens08.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributens08">
+ <metadata>
+ <title>elementsetattributens08</title>
+ <creator>IBM</creator>
+ <description>
+ The method setAttributeNS adds a new attribute and raises a NAMESPACE_ERR
+ if the qualifiedName, or its prefix, is "xmlns" and the namespaceURI is
+ different from "http://www.w3.org/2000/xmlns/".
+
+ Invoke the setAttributeNS method on a new Element object with namespaceURI that is
+ http://www.w3.org/DOMTest/level2 and a qualifiedName that has the prefix xmlns and once
+ again with a qualifiedName that is xmlns.
+ Check if the NAMESPACE_ERR was thrown.
+ </description>
+ <contributor>Neil Delima</contributor>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="element" type="Element"/>
+ <load var="doc" href="staffNS" willBeModified="true"/>
+ <createElementNS var="element" obj="doc"
+ namespaceURI='"http://www.w3.org/DOMTest/level2"'
+ qualifiedName='"dom:elem"'/>
+ <assertDOMException id="elementsetattributens08_Err1">
+ <NAMESPACE_ERR>
+ <setAttributeNS obj="element"
+ namespaceURI='"http://www.w3.org/DOMTest/level2"'
+ qualifiedName='"xmlns"' value='"test"'/>
+ </NAMESPACE_ERR>
+ </assertDOMException>
+ <assertDOMException id="elementsetattributens08_Err2">
+ <NAMESPACE_ERR>
+ <setAttributeNS obj="element"
+ namespaceURI='"http://www.w3.org/DOMTest/level2"'
+ qualifiedName='"xmlns:root"' value='"test"'/>
+ </NAMESPACE_ERR>
+ </assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/elementsetattributensurinull.xml b/test/testcases/tests/level2/core/elementsetattributensurinull.xml
new file mode 100644
index 0000000..e7568fe
--- /dev/null
+++ b/test/testcases/tests/level2/core/elementsetattributensurinull.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="elementsetattributensurinull">
+<metadata>
+<title>elementSetAttributeNSURINull</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNS(namespaceURI,qualifiedName,value)" method raises a
+ NAMESPACE_ERR DOMException if the specified
+ qualifiedName has a prefix and the namespaceURI is null.
+
+ Attempt to add a new attribute on the first employee node.
+ An exception should be raised since the "qualifiedName" has a
+ prefix and the namespaceURI is null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElSetAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" isNull="true"/>
+<var name="qualifiedName" type="DOMString" value='"emp:qualifiedName"'/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"employee"'/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<setAttributeNS obj="testAddr" namespaceURI="namespaceURI" qualifiedName="qualifiedName" value='"newValue"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/files/.cvsignore b/test/testcases/tests/level2/core/files/.cvsignore
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/.cvsignore
diff --git a/test/testcases/tests/level2/core/files/CVS/Entries b/test/testcases/tests/level2/core/files/CVS/Entries
new file mode 100644
index 0000000..891b62c
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/CVS/Entries
@@ -0,0 +1,21 @@
+/.cvsignore/1.2/Fri Apr 3 02:47:56 2009//
+/hc_staff.html/1.6/Fri Apr 3 02:47:56 2009//
+/hc_staff.svg/1.4/Fri Apr 3 02:47:56 2009//
+/hc_staff.xhtml/1.6/Fri Apr 3 02:47:56 2009//
+/hc_staff.xml/1.6/Fri Apr 3 02:47:56 2009//
+/internalSubset01.js/1.1/Fri Apr 3 02:47:56 2009/-kb/
+/nodtdstaff.svg/1.2/Fri Apr 3 02:47:56 2009//
+/nodtdstaff.xml/1.1/Fri Apr 3 02:47:56 2009//
+/staff.dtd/1.1/Fri Apr 3 02:47:56 2009//
+/staff.svg/1.2/Fri Apr 3 02:47:56 2009//
+/staff.xml/1.1/Fri Apr 3 02:47:56 2009//
+/staff2.dtd/1.2/Fri Apr 3 02:47:56 2009//
+/staff2.svg/1.1/Fri Apr 3 02:47:56 2009/-kb/
+/staff2.xml/1.1/Fri Apr 3 02:47:56 2009//
+/staffNS.dtd/1.1/Fri Apr 3 02:47:56 2009//
+/staffNS.svg/1.3/Fri Apr 3 02:47:56 2009//
+/staffNS.xml/1.2/Fri Apr 3 02:47:56 2009//
+/svgtest.js/1.2/Fri Apr 3 02:47:56 2009/-kb/
+/svgunit.js/1.2/Fri Apr 3 02:47:56 2009/-kb/
+/xhtml1-strict.dtd/1.5/Fri Apr 3 02:47:56 2009/-kb/
+D
diff --git a/test/testcases/tests/level2/core/files/CVS/Repository b/test/testcases/tests/level2/core/files/CVS/Repository
new file mode 100644
index 0000000..f7019ed
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level2/core/files
diff --git a/test/testcases/tests/level2/core/files/CVS/Root b/test/testcases/tests/level2/core/files/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level2/core/files/CVS/Template b/test/testcases/tests/level2/core/files/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/CVS/Template
diff --git a/test/testcases/tests/level2/core/files/hc_staff.html b/test/testcases/tests/level2/core/files/hc_staff.html
new file mode 100644
index 0000000..9acf750
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/hc_staff.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="svgunit.js"></script><script charset="UTF-8" type="text/javascript" src="svgtest.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level2/core/files/hc_staff.svg b/test/testcases/tests/level2/core/files/hc_staff.svg
new file mode 100644
index 0000000..cd0cc47
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/hc_staff.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST acronym dir CDATA "ltr">
+ <!ATTLIST head xmlns CDATA #IMPLIED>
+ <!ATTLIST body xmlns CDATA #IMPLIED>
+ <!ELEMENT svg (rect, script, head, body)>
+ <!ATTLIST svg xmlns CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #IMPLIED
+ y CDATA #IMPLIED
+ width CDATA #IMPLIED
+ height CDATA #IMPLIED>
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<!-- This is comment number 1.-->
+<svg xmlns='http://www.w3.org/2000/svg'><rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script><head xmlns='http://www.w3.org/1999/xhtml'><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title></head><body xmlns='http://www.w3.org/1999/xhtml'>
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></svg>
diff --git a/test/testcases/tests/level2/core/files/hc_staff.xhtml b/test/testcases/tests/level2/core/files/hc_staff.xhtml
new file mode 100644
index 0000000..2df9a74
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/hc_staff.xhtml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST acronym dir CDATA "ltr">
+]>
+<!-- This is comment number 1.-->
+<html xmlns='http://www.w3.org/1999/xhtml'><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title><script type="text/javascript" src="svgunit.js"/><script charset="UTF-8" type="text/javascript" src="svgtest.js"/><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level2/core/files/hc_staff.xml b/test/testcases/tests/level2/core/files/hc_staff.xml
new file mode 100644
index 0000000..2df9a74
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/hc_staff.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST acronym dir CDATA "ltr">
+]>
+<!-- This is comment number 1.-->
+<html xmlns='http://www.w3.org/1999/xhtml'><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title><script type="text/javascript" src="svgunit.js"/><script charset="UTF-8" type="text/javascript" src="svgtest.js"/><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level2/core/files/internalSubset01.js b/test/testcases/tests/level2/core/files/internalSubset01.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/internalSubset01.js
diff --git a/test/testcases/tests/level2/core/files/nodtdstaff.svg b/test/testcases/tests/level2/core/files/nodtdstaff.svg
new file mode 100644
index 0000000..01aa823
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/nodtdstaff.svg
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100"/>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+</svg>
diff --git a/test/testcases/tests/level2/core/files/nodtdstaff.xml b/test/testcases/tests/level2/core/files/nodtdstaff.xml
new file mode 100644
index 0000000..054a5e1
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/nodtdstaff.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<staff>
+ <employee>
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+</staff>
diff --git a/test/testcases/tests/level2/core/files/staff.dtd b/test/testcases/tests/level2/core/files/staff.dtd
new file mode 100644
index 0000000..02a994d
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/staff.dtd
@@ -0,0 +1,17 @@
+<!ELEMENT employeeId (#PCDATA)>
+<!ELEMENT name (#PCDATA)>
+<!ELEMENT position (#PCDATA)>
+<!ELEMENT salary (#PCDATA)>
+<!ELEMENT address (#PCDATA)>
+<!ELEMENT entElement ( #PCDATA ) >
+<!ELEMENT gender ( #PCDATA | entElement )* >
+<!ELEMENT employee (employeeId, name, position, salary, gender, address) >
+<!ELEMENT staff (employee)+>
+<!ATTLIST entElement
+ attr1 CDATA "Attr">
+<!ATTLIST address
+ domestic CDATA #IMPLIED
+ street CDATA "Yes">
+<!ATTLIST entElement
+ domestic CDATA "MALE" >
+
diff --git a/test/testcases/tests/level2/core/files/staff.svg b/test/testcases/tests/level2/core/files/staff.svg
new file mode 100644
index 0000000..fd67323
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/staff.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg SYSTEM "staff.dtd" [
+ <!ENTITY ent1 "es">
+ <!ENTITY ent2 "1900 Dallas Road">
+ <!ENTITY ent3 "Texas">
+ <!ENTITY ent4 "<entElement domestic='Yes'>Element data</entElement><?PItarget PIdata?>">
+ <!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+ <!ENTITY ent1 "This entity should be discarded">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST employee xmlns CDATA #IMPLIED>
+ <!ELEMENT svg (rect, script, employee+)>
+ <!ATTLIST svg
+ xmlns CDATA #FIXED "http://www.w3.org/2000/svg"
+ name CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ELEMENT script (#PCDATA)>
+ <!ATTLIST script type CDATA #IMPLIED>
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<!-- This is comment number 1.-->
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0002</employeeId>
+ <name>Martha Raynolds<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></name>
+ <position>Secretary</position>
+ <salary>35,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Yes">&ent2; Dallas, &ent3;
+ 98554</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0003</employeeId>
+ <name>Roger
+ Jones</name>
+ <position>Department Manager</position>
+ <salary>100,000</salary>
+ <gender>&ent4;</gender>
+ <address domestic="Yes" street="No">PO Box 27 Irving, texas 98553</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0004</employeeId>
+ <name>Jeny Oconnor</name>
+ <position>Personnel Director</position>
+ <salary>95,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Y&ent1;">27 South Road. Dallas, Texas 98556</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0005</employeeId>
+ <name>Robert Myers</name>
+ <position>Computer Specialist</position>
+ <salary>90,000</salary>
+ <gender>male</gender>
+ <address street="Yes">1821 Nordic. Road, Irving Texas 98558</address>
+ </employee>
+ </svg>
diff --git a/test/testcases/tests/level2/core/files/staff.xml b/test/testcases/tests/level2/core/files/staff.xml
new file mode 100644
index 0000000..f89c510
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/staff.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE staff SYSTEM "staff.dtd" [
+ <!ENTITY ent1 "es">
+ <!ENTITY ent2 "1900 Dallas Road">
+ <!ENTITY ent3 "Texas">
+ <!ENTITY ent4 "<entElement domestic='Yes'>Element data</entElement><?PItarget PIdata?>">
+ <!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+ <!ENTITY ent1 "This entity should be discarded">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+]>
+<!-- This is comment number 1.-->
+<staff>
+ <employee>
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0002</employeeId>
+ <name>Martha Raynolds<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></name>
+ <position>Secretary</position>
+ <salary>35,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Yes">&ent2; Dallas, &ent3;
+ 98554</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0003</employeeId>
+ <name>Roger
+ Jones</name>
+ <position>Department Manager</position>
+ <salary>100,000</salary>
+ <gender>&ent4;</gender>
+ <address domestic="Yes" street="No">PO Box 27 Irving, texas 98553</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0004</employeeId>
+ <name>Jeny Oconnor</name>
+ <position>Personnel Director</position>
+ <salary>95,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Y&ent1;">27 South Road. Dallas, Texas 98556</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0005</employeeId>
+ <name>Robert Myers</name>
+ <position>Computer Specialist</position>
+ <salary>90,000</salary>
+ <gender>male</gender>
+ <address street="Yes">1821 Nordic. Road, Irving Texas 98558</address>
+ </employee>
+ </staff>
diff --git a/test/testcases/tests/level2/core/files/staff2.dtd b/test/testcases/tests/level2/core/files/staff2.dtd
new file mode 100644
index 0000000..0bac8f2
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/staff2.dtd
@@ -0,0 +1,24 @@
+<!ELEMENT employeeId (#PCDATA)>
+<!ELEMENT name (#PCDATA)>
+<!ELEMENT position (#PCDATA)>
+<!ELEMENT salary (#PCDATA)>
+<!ELEMENT address (#PCDATA)>
+<!ELEMENT gender ( #PCDATA)>
+<!ELEMENT employee (employeeId, name, position, salary, gender, address) >
+<!ATTLIST employee xmlns CDATA #IMPLIED>
+<!ELEMENT staff (employee)+>
+<!ELEMENT svg (rect, script, employee+)>
+<!ATTLIST svg
+ xmlns CDATA #FIXED "http://www.w3.org/2000/svg"
+ name CDATA #IMPLIED>
+<!ELEMENT rect EMPTY>
+<!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script type CDATA #IMPLIED>
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "internalSubset01.js">
+
diff --git a/test/testcases/tests/level2/core/files/staff2.svg b/test/testcases/tests/level2/core/files/staff2.svg
new file mode 100644
index 0000000..6f89dad
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/staff2.svg
@@ -0,0 +1,13 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg SYSTEM "staff2.dtd" []>
+<!-- This is comment number 1.-->
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+ <employee xmlns="http://www.example.com">
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address>1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ </svg>
diff --git a/test/testcases/tests/level2/core/files/staff2.xml b/test/testcases/tests/level2/core/files/staff2.xml
new file mode 100644
index 0000000..d3d9a13
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/staff2.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE staff SYSTEM "staff2.dtd" []>
+<!-- This is comment number 1.-->
+<staff>
+ <employee>
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address>1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ </staff>
diff --git a/test/testcases/tests/level2/core/files/staffNS.dtd b/test/testcases/tests/level2/core/files/staffNS.dtd
new file mode 100644
index 0000000..7643773
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/staffNS.dtd
@@ -0,0 +1,45 @@
+<!ELEMENT staff (employee+,emp:employee,employee) >
+<!ELEMENT employee (employeeId,name,position,salary,gender,address) >
+<!ATTLIST employee xmlns CDATA #IMPLIED>
+<!ATTLIST employee xmlns:dmstc CDATA #IMPLIED>
+<!ATTLIST employee xmlns:emp2 CDATA #IMPLIED>
+
+<!ELEMENT employeeId (#PCDATA) >
+
+<!ELEMENT name (#PCDATA) >
+
+<!ELEMENT position (#PCDATA) >
+
+<!ELEMENT salary (#PCDATA) >
+
+<!ELEMENT entElement1 (#PCDATA) >
+<!ELEMENT gender (#PCDATA | entElement1)* >
+<!ATTLIST entElement1 xmlns:local1 CDATA #IMPLIED >
+
+<!ELEMENT address (#PCDATA) >
+<!ATTLIST address dmstc:domestic CDATA #IMPLIED>
+<!ATTLIST address street CDATA #IMPLIED>
+<!ATTLIST address domestic CDATA #IMPLIED>
+<!ATTLIST address xmlns CDATA #IMPLIED>
+
+<!ELEMENT emp:employee (emp:employeeId,nm:name,emp:position,emp:salary,emp:gender,emp:address) >
+<!ATTLIST emp:employee xmlns:emp CDATA #IMPLIED>
+<!ATTLIST emp:employee xmlns:nm CDATA #IMPLIED>
+<!ATTLIST emp:employee defaultAttr CDATA 'defaultVal'>
+
+<!ELEMENT emp:employeeId (#PCDATA) >
+
+<!ELEMENT nm:name (#PCDATA) >
+
+<!ELEMENT emp:position (#PCDATA) >
+
+<!ELEMENT emp:salary (#PCDATA) >
+
+<!ELEMENT emp:gender (#PCDATA) >
+
+<!ELEMENT emp:address (#PCDATA) >
+<!ATTLIST emp:address emp:domestic CDATA #IMPLIED>
+<!ATTLIST emp:address street CDATA #IMPLIED>
+<!ATTLIST emp:address emp:zone ID #IMPLIED>
+<!ATTLIST emp:address emp:district CDATA 'DISTRICT'>
+<!ATTLIST emp:address emp:local1 CDATA 'FALSE'>
diff --git a/test/testcases/tests/level2/core/files/staffNS.svg b/test/testcases/tests/level2/core/files/staffNS.svg
new file mode 100644
index 0000000..7a7c26e
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/staffNS.svg
@@ -0,0 +1,73 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg PUBLIC "STAFF" "staffNS.dtd"
+[
+ <!ENTITY ent1 "es">
+ <!ENTITY ent2 "1900 Dallas Road">
+ <!ENTITY ent3 "Texas">
+ <!ENTITY ent4 "<entElement1 xmlns:local1='www.xyz.com'>Element data</entElement1><?PItarget PIdata?>">
+ <!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+ <!ENTITY ent6 PUBLIC "uri" "file" NDATA notation2>
+ <!ENTITY ent1 "This entity should be discarded">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ELEMENT svg (rect, script, employee+, emp:employee, employee*)>
+ <!ATTLIST svg
+ xmlns CDATA #FIXED "http://www.w3.org/2000/svg"
+ name CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ELEMENT script (#PCDATA)>
+ <!ATTLIST script type CDATA #IMPLIED>
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<!-- This is comment number 1.-->
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+ <employee xmlns="http://www.nist.gov" xmlns:dmstc="http://www.usa.com">
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address dmstc:domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ <employee xmlns:dmstc="http://www.usa.com" xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2/Files">
+ <employeeId>EMP0002</employeeId>
+ <name>Martha Raynolds
+<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></name>
+ <position>Secretary</position>
+ <salary>35,000</salary>
+ <gender>Female</gender>
+ <address dmstc:domestic="Yes" street="Yes">&ent2; Dallas, &ent3;
+ 98554</address>
+ </employee>
+ <employee xmlns:dmstc="http://www.netzero.com" xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2/Files">
+ <employeeId>EMP0003</employeeId>
+ <name>Roger
+ Jones</name>
+ <position>Department Manager</position>
+ <salary>100,000</salary>
+ <gender>&ent4;</gender>
+ <address dmstc:domestic="Yes" street="No">PO Box 27 Irving, texas 98553</address>
+ </employee>
+ <emp:employee xmlns:emp="http://www.nist.gov" xmlns:nm="http://www.altavista.com" > <emp:employeeId>EMP0004</emp:employeeId>
+ <nm:name>Jeny Oconnor</nm:name>
+ <emp:position>Personnel Director</emp:position>
+ <emp:salary>95,000</emp:salary>
+ <emp:gender>Female</emp:gender>
+ <emp:address emp:domestic="Yes" street="Y&ent1;" emp:zone="CANADA" emp:local1="TRUE">27 South Road. Dallas, texas 98556</emp:address>
+ </emp:employee>
+ <employee xmlns:emp2="http://www.nist.gov" xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2/Files">
+ <employeeId>EMP0005</employeeId>
+ <name>Robert Myers</name>
+ <position>Computer Specialist</position>
+ <salary>90,000</salary>
+ <gender>male</gender>
+ <address street="Yes" xmlns="http://www.nist.gov">1821 Nordic. Road, Irving Texas 98558</address>
+ </employee>
+ </svg>
diff --git a/test/testcases/tests/level2/core/files/staffNS.xml b/test/testcases/tests/level2/core/files/staffNS.xml
new file mode 100644
index 0000000..1cb1459
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/staffNS.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE staff PUBLIC "STAFF" "staffNS.dtd"
+[
+ <!ENTITY ent1 "es">
+ <!ENTITY ent2 "1900 Dallas Road">
+ <!ENTITY ent3 "Texas">
+ <!ENTITY ent4 "<entElement1 xmlns:local1='www.xyz.com'>Element data</entElement1><?PItarget PIdata?>">
+ <!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+ <!ENTITY ent6 PUBLIC "uri" "file" NDATA notation2>
+ <!ENTITY ent1 "This entity should be discarded">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+]>
+<!-- This is comment number 1.-->
+<staff>
+ <employee xmlns="http://www.nist.gov" xmlns:dmstc="http://www.usa.com">
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address dmstc:domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ <employee xmlns:dmstc="http://www.usa.com">
+ <employeeId>EMP0002</employeeId>
+ <name>Martha Raynolds
+<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></name>
+ <position>Secretary</position>
+ <salary>35,000</salary>
+ <gender>Female</gender>
+ <address dmstc:domestic="Yes" street="Yes">&ent2; Dallas, &ent3;
+ 98554</address>
+ </employee>
+ <employee xmlns:dmstc="http://www.netzero.com">
+ <employeeId>EMP0003</employeeId>
+ <name>Roger
+ Jones</name>
+ <position>Department Manager</position>
+ <salary>100,000</salary>
+ <gender>&ent4;</gender>
+ <address dmstc:domestic="Yes" street="No">PO Box 27 Irving, texas 98553</address>
+ </employee>
+ <emp:employee xmlns:emp="http://www.nist.gov" xmlns:nm="http://www.altavista.com" > <emp:employeeId>EMP0004</emp:employeeId>
+ <nm:name>Jeny Oconnor</nm:name>
+ <emp:position>Personnel Director</emp:position>
+ <emp:salary>95,000</emp:salary>
+ <emp:gender>Female</emp:gender>
+ <emp:address emp:domestic="Yes" street="Y&ent1;" emp:zone="CANADA" emp:local1="TRUE">27 South Road. Dallas, texas 98556</emp:address>
+ </emp:employee>
+ <employee xmlns:emp2="http://www.nist.gov">
+ <employeeId>EMP0005</employeeId>
+ <name>Robert Myers</name>
+ <position>Computer Specialist</position>
+ <salary>90,000</salary>
+ <gender>male</gender>
+ <address street="Yes" xmlns="http://www.nist.gov">1821 Nordic. Road, Irving Texas 98558</address>
+ </employee>
+ </staff>
diff --git a/test/testcases/tests/level2/core/files/svgtest.js b/test/testcases/tests/level2/core/files/svgtest.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/svgtest.js
diff --git a/test/testcases/tests/level2/core/files/svgunit.js b/test/testcases/tests/level2/core/files/svgunit.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/svgunit.js
diff --git a/test/testcases/tests/level2/core/files/xhtml1-strict.dtd b/test/testcases/tests/level2/core/files/xhtml1-strict.dtd
new file mode 100644
index 0000000..fefb77f
--- /dev/null
+++ b/test/testcases/tests/level2/core/files/xhtml1-strict.dtd
@@ -0,0 +1,65 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This is a radically simplified DTD for use in the DOM Test Suites
+due to a XML non-conformance of one implementation in processing
+parameter entities. When that non-conformance is resolved,
+this DTD can be replaced by the normal DTD for XHTML.
+
+-->
+
+
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (meta,title,script*)>
+<!ELEMENT meta EMPTY>
+<!ATTLIST meta
+ http-equiv CDATA #IMPLIED
+ content CDATA #IMPLIED>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT body (p*)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|em|strong|code|sup|var|acronym|abbr)*>
+<!ATTLIST p
+ xmlns:dmstc CDATA #IMPLIED
+ xmlns:nm CDATA #IMPLIED
+ xmlns:emp2 CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT em (#PCDATA)>
+<!ELEMENT span (#PCDATA)>
+<!ELEMENT strong (#PCDATA)>
+<!ELEMENT code (#PCDATA)>
+<!ELEMENT sup (#PCDATA)>
+<!ELEMENT var (#PCDATA|span)*>
+<!ELEMENT acronym (#PCDATA)>
+<!ATTLIST acronym
+ title CDATA #IMPLIED
+ class CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT abbr (#PCDATA)>
+<!ATTLIST abbr
+ title CDATA #IMPLIED
+ class CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ type CDATA #IMPLIED
+ src CDATA #IMPLIED
+ charset CDATA #IMPLIED>
diff --git a/test/testcases/tests/level2/core/getAttributeNS01.xml b/test/testcases/tests/level2/core/getAttributeNS01.xml
new file mode 100644
index 0000000..347f967
--- /dev/null
+++ b/test/testcases/tests/level2/core/getAttributeNS01.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getAttributeNS01">
+<metadata>
+<title>getAttributeNS01</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributeNS(namespaceURI,localName)" method retrieves an
+ attribute value by local name and NamespaceURI.
+
+ Retrieve the first "emp:address" element.
+ The value returned by the "getAttributeNS()" method should be the
+ value "DISTRICT" since the attribute has a default value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElGetAttrNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=238"/>
+</metadata>
+<!-- test requires namespace awareness and validation -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="localName" type="DOMString" value="&quot;district&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;emp:district&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;emp:address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<getAttributeNS obj="testAddr" var="attrValue" namespaceURI="namespaceURI" localName="localName"/>
+<assertEquals actual="attrValue" expected='"DISTRICT"' id="attrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getAttributeNS02.xml b/test/testcases/tests/level2/core/getAttributeNS02.xml
new file mode 100644
index 0000000..bc7c65f
--- /dev/null
+++ b/test/testcases/tests/level2/core/getAttributeNS02.xml
@@ -0,0 +1,55 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getAttributeNS02">
+<metadata>
+<title>getAttributeNS02</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributeNS(namespaceURI,localName)" method retrieves an
+ attribute value by local name and NamespaceURI.
+
+ Retrieve the first "emp:address" element.
+ Create a new attribute with the "createAttributeNS()" method.
+ Add the new attribute with the "setAttributeNS()" method.
+ The value returned by the "getAttributeNS()" method should be the
+ empty string since the attribute does not have a default value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElGetAttrNS"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="localName" type="DOMString" value="&quot;district&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;emp:district&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newAttribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="districtAttr" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createAttributeNS obj="doc" var="newAttribute" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;emp:address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<setAttributeNodeNS obj="testAddr" var="districtAttr" newAttr="newAttribute"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;emp:address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<getAttributeNS obj="testAddr" var="attrValue" namespaceURI="namespaceURI" localName="localName"/>
+<assertEquals actual="attrValue" expected="&quot;&quot;" id="throw_Equals" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getAttributeNS03.xml b/test/testcases/tests/level2/core/getAttributeNS03.xml
new file mode 100644
index 0000000..4e24f22
--- /dev/null
+++ b/test/testcases/tests/level2/core/getAttributeNS03.xml
@@ -0,0 +1,48 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getAttributeNS03">
+<metadata>
+<title>getAttributeNS03</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributeNS(namespaceURI,localName)" method retrieves an
+ attribute value by local name and NamespaceURI.
+
+ Retrieve the first "emp:address" element.
+ The value returned by the "getAttributeNS()" method for the emp:domestic attribute
+ should be the empty string since the attribute does not have a specified value
+ because it was removed by the "removeAttributeNS()" method.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElGetAttrNS"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="localName" type="DOMString" value="&quot;domestic&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;emp:address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<removeAttributeNS obj="testAddr" namespaceURI="namespaceURI" localName="localName"/>
+<getAttributeNS obj="testAddr" var="attrValue" namespaceURI="namespaceURI" localName="localName"/>
+<assertEquals actual="attrValue" expected="&quot;&quot;" id="throw_Equals" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getAttributeNS04.xml b/test/testcases/tests/level2/core/getAttributeNS04.xml
new file mode 100644
index 0000000..8d6c7ad
--- /dev/null
+++ b/test/testcases/tests/level2/core/getAttributeNS04.xml
@@ -0,0 +1,53 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getAttributeNS04">
+<metadata>
+<title>getAttributeNS04</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributeNS(namespaceURI,localName)" method retrieves an
+ attribute value by local name and NamespaceURI.
+
+ Retrieve the first "emp:address" element.
+ Create a new attribute with the "createAttributeNS()" method.
+ Add the new attribute and value with the "setAttributeNS()" method.
+ The value returned by the "getAttributeNS()" method should be
+ the string "NewValue" since the attribute had a specified value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElGetAttrNS"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="localName" type="DOMString" value="&quot;blank&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;emp:blank&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newAttribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="districtAttr" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createAttributeNS obj="doc" var="newAttribute" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;emp:address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<setAttributeNS obj="testAddr" namespaceURI="namespaceURI" qualifiedName="qualifiedName" value="&quot;NewValue&quot;"/>
+<getAttributeNS obj="testAddr" var="attrValue" namespaceURI="namespaceURI" localName="localName"/>
+<assertEquals actual="attrValue" expected="&quot;NewValue&quot;" id="throw_Equals" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getAttributeNS05.xml b/test/testcases/tests/level2/core/getAttributeNS05.xml
new file mode 100644
index 0000000..54265fc
--- /dev/null
+++ b/test/testcases/tests/level2/core/getAttributeNS05.xml
@@ -0,0 +1,47 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getAttributeNS05">
+<metadata>
+<title>getAttributeNS05</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributeNS(namespaceURI,localName)" method retrieves an
+ attribute value by local name and NamespaceURI.
+
+ Retrieve the first emp:address element node
+ and retrieve the emp:domestic attribute. The method returns an
+ Attr value as a string, the "value" can be examined to ensure the
+ proper attribute value was retrieved.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElGetAttrNS"/>
+</metadata>
+<!-- test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="attrValue" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"emp:address"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<getAttributeNS obj="testAddr" var="attrValue" namespaceURI='"http://www.nist.gov"' localName='"domestic"'/>
+<assertEquals actual="attrValue" expected='"Yes"' id="attrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getAttributeNodeNS01.xml b/test/testcases/tests/level2/core/getAttributeNodeNS01.xml
new file mode 100644
index 0000000..9ab3e7a
--- /dev/null
+++ b/test/testcases/tests/level2/core/getAttributeNodeNS01.xml
@@ -0,0 +1,48 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getAttributeNodeNS01">
+<metadata>
+<title>getAttributeNodeNS01</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributeNodeNS(namespaceURI,localName)" method retrieves an
+ attribute node by local name and NamespaceURI.
+
+ Retrieve the first emp:address element node.
+ The getAttributeNodeNS method returns an
+ Attr node, the "value" can be examined to ensure the
+ proper attribute node was retrieved. This attribute
+ value should be null since there is no such attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElGetAtNodeNS"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="localName" type="DOMString" value="&quot;invalidlocalname&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="attribute" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;emp:address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<getAttributeNodeNS obj="testAddr" var="attribute" namespaceURI="namespaceURI" localName="localName"/>
+<assertNull actual="attribute" id="throw_Null"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getAttributeNodeNS02.xml b/test/testcases/tests/level2/core/getAttributeNodeNS02.xml
new file mode 100644
index 0000000..86dfb38
--- /dev/null
+++ b/test/testcases/tests/level2/core/getAttributeNodeNS02.xml
@@ -0,0 +1,49 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getAttributeNodeNS02">
+<metadata>
+<title>getAttributeNodeNS02</title>
+<creator>NIST</creator>
+<description>
+ The "getAttributeNodeNS(namespaceURI,localName)" method retrieves an
+ attribute node by local name and NamespaceURI.
+
+ Retrieve the first emp:address element node.
+ The getAttributeNodeNS method returns an
+ Attr node, the "value" can be examined to ensure the
+ proper attribute node was retrieved.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-F68D095"/>
+</metadata>
+<!-- this test requires a namespace aware processor -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="attribute" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"emp:address"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<getAttributeNodeNS obj="testAddr" var="attribute" namespaceURI='"http://www.nist.gov"' localName='"domestic"'/>
+<nodeName obj="attribute" var="attrName"/>
+<assertEquals actual="attrName" expected='"emp:domestic"' id="attrName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementById01.xml b/test/testcases/tests/level2/core/getElementById01.xml
new file mode 100644
index 0000000..8992311
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementById01.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementById01">
+<metadata>
+<title>getElementById01</title>
+<creator>NIST</creator>
+<description>
+ The "getElementById(elementId)" method for a
+ Document should return an element whose ID matches elementId.
+
+ Invoke method getElementById(elementId) on this document
+ with elementId equals "CANADA". Method should return an element
+ whose tag name is "emp:address".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-104682815"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=383"/>
+</metadata>
+<!-- unless validating, parser is not assured of knowing what attributes
+are of type ID -->
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="tagname" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementById interface="Document" obj="doc" var="element" elementId="&quot;CANADA&quot;"/>
+<tagName obj="element" var="tagname"/>
+<assertEquals actual="tagname" expected="&quot;emp:address&quot;" id="throw_Equals" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementById02.xml b/test/testcases/tests/level2/core/getElementById02.xml
new file mode 100644
index 0000000..8fe1eb2
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementById02.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementById02">
+<metadata>
+<title>getElementById02</title>
+<creator>NIST</creator>
+<description>
+
+ The "getElementById(elementId)" method for a
+ Document should return null if elementId does not identify any
+ elements in this document.
+
+ Invoke method getElementById(elementId) on this document
+ with elementId equals "Cancun". Method should return null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementById interface="Document" obj="doc" var="element" elementId="&quot;Cancun&quot;"/>
+<assertNull actual="element" id="throw_Null"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS01.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS01.xml
new file mode 100644
index 0000000..68e93ac
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS01.xml
@@ -0,0 +1,42 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS01">
+<metadata>
+<title>getElementsByTagNameNS01</title>
+<creator>NIST</creator>
+<description>
+ Invoke method getElementsByTagNameNS(namespaceURI,localName) on this document
+ with namespaceURI and localName as "*" and check size of returned node list.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;*&quot;"/>
+<var name="localName" type="DOMString" value="&quot;*&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS interface="Document" obj="doc" var="newList" namespaceURI="namespaceURI" localName="localName"/>
+<if><contentType type="image/svg+xml"/>
+<assertSize collection="newList" size="39" id="listLength_svg"/>
+<else>
+<assertSize collection="newList" size="37" id="listLength"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS02.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS02.xml
new file mode 100644
index 0000000..31aee93
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS02.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS02">
+<metadata>
+<title>getElementsByTagNameNS02</title>
+<creator>NIST</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method for a
+ Document should return a new NodeList of all Elements with a given
+ localName and namespaceURI in the order they were encountered in a preorder
+ traversal of the document tree.
+
+ Invoke method getElementsByTagNameNS(namespaceURI,localName) on this document
+ with namespaceURI being " " and localName is "employee".
+ Method should return a new NodeList containing five Elements.
+ Retrieve the FOURTH element whose name should be "emp:employee".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+</metadata>
+<!-- this test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newList" type="NodeList"/>
+<var name="newElement" type="Element"/>
+<var name="prefix" type="DOMString"/>
+<var name="lname" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS interface="Document" obj="doc" var="newList" namespaceURI='"*"' localName='"employee"'/>
+<assertSize collection="newList" size="5" id="employeeCount"/>
+<item interface="NodeList" obj="newList" var="newElement" index="3"/>
+<prefix obj="newElement" var="prefix"/>
+<assertEquals actual="prefix" expected='"emp"' id="prefix" ignoreCase="false"/>
+<localName obj="newElement" var="lname"/>
+<assertEquals actual="lname" expected='"employee"' id="lname" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS03.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS03.xml
new file mode 100644
index 0000000..0040ddc
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS03.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS03">
+<metadata>
+<title>getElementsByTagNameNS03</title>
+<creator>NIST</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method returns a NodeList
+ of all descendant Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of this Element tree.
+
+ Create a NodeList of all the descendant elements
+ using the "http://www.nist.gov" as the namespaceURI and the special value " " as the
+ localName.
+ The method should return a NodeList of elements that have "http://www.nist.gov
+ as a namespace URI.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+</metadata>
+<!-- test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>"employee"</member>
+<member>"employeeId"</member>
+<member>"name"</member>
+<member>"position"</member>
+<member>"salary"</member>
+<member>"gender"</member>
+<member>"address"</member>
+<member>"emp:employee"</member>
+<member>"emp:employeeId"</member>
+<member>"emp:position"</member>
+<member>"emp:salary"</member>
+<member>"emp:gender"</member>
+<member>"emp:address"</member>
+<member>"address"</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS interface="Document" obj="doc" namespaceURI='"http://www.nist.gov"' localName='"*"' var="elementList"/>
+<for-each collection="elementList" member="child">
+<nodeName obj="child" var="childName"/>
+<append collection="result" item="childName"/>
+</for-each>
+<assertEquals actual="result" expected="expectedResult" id="nodeNames" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS04.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS04.xml
new file mode 100644
index 0000000..1c440d5
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS04.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS04">
+<metadata>
+<title>getElementsByTagNameNS04</title>
+<creator>NIST</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method returns a NodeList
+ of all descendant Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of this Element tree.
+
+ Create a NodeList of all the descendant elements
+ using the special value " " as the namespaceURI and "address" as the
+ localName.
+ The method should return a NodeList of Elements that have
+ "address" as the local name.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>"address"</member>
+<member>"address"</member>
+<member>"address"</member>
+<member>"emp:address"</member>
+<member>"address"</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS interface="Document" obj="doc" namespaceURI='"*"' localName='"address"' var="elementList"/>
+<for-each collection="elementList" member="child">
+<nodeName obj="child" var="childName"/>
+<append collection="result" item="childName"/>
+</for-each>
+<assertEquals actual="result" expected="expectedResult" id="nodeNames" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS05.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS05.xml
new file mode 100644
index 0000000..db45514
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS05.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS05">
+<metadata>
+<title>getElementsByTagNameNS05</title>
+<creator>NIST</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method returns a NodeList
+ of all descendant Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of this Element tree.
+
+ Create a NodeList of all the descendant elements
+ using the "http://www.nist.gov" as the namespaceURI and "nomatch" as the
+ localName.
+ The method should return a NodeList whose length is
+ "0".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="localName" type="DOMString" value="&quot;nomatch&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS interface="Document" obj="doc" namespaceURI="namespaceURI" localName="localName" var="elementList"/>
+<assertSize collection="elementList" size="0" id="throw_Size"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS06.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS06.xml
new file mode 100644
index 0000000..3d72c88
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS06.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS06">
+<metadata>
+<title>getElementsByTagNameNS06</title>
+<creator>NIST</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method returns a NodeList
+ of all descendant Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of this Element tree.
+
+ Create a NodeList of all the descendant elements
+ using the "http://www.nomatch.com" as the namespaceURI and "address" as the
+ localName.
+ The method should return a NodeList whose length is
+ "0".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+</metadata>
+<!-- test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS interface="Document" obj="doc" namespaceURI='"http://www.nomatch.com"' localName='"address"' var="elementList"/>
+<assertSize collection="elementList" size="0" id="matchSize"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS07.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS07.xml
new file mode 100644
index 0000000..28e5323
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS07.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS07">
+<metadata>
+<title>getElementsByTagNameNS07</title>
+<creator>NIST</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method returns a NodeList
+ of all descendant Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of this Element tree.
+
+ Create a NodeList of all the descendant elements
+ using the string "http://www.nist.gov" as the namespaceURI and "address" as the
+ localName.
+ The method should return a NodeList whose length is
+ "3".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS interface="Document" obj="doc" namespaceURI='"http://www.nist.gov"' localName='"address"' var="elementList"/>
+<assertSize collection="elementList" size="3" id="addresses"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS08.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS08.xml
new file mode 100644
index 0000000..0b42bb4
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS08.xml
@@ -0,0 +1,47 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS08">
+<metadata>
+<title>getElementsByTagNameNS08</title>
+<creator>Curt Arnold</creator>
+<description>
+ Element.getElementsByTagNameNS('*','*') should return all child
+ elements. There is some contention on whether this should match
+ unqualified elements, this test reflects the interpretation that
+ '*' should match elements in all namespaces and unqualified elements.
+
+ Derived from getElementsByTagNameNS01 which tests similar functionality
+ on the Document interface.
+</description>
+<date qualifier="created">2001-02-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1938918D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="newList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<getElementsByTagNameNS interface="Element" obj="docElem" var="newList" namespaceURI='"*"' localName='"*"'/>
+<if><contentType type="image/svg+xml"/>
+<assertSize collection="newList" size="38" id="listSize_svg"/>
+<else>
+<assertSize collection="newList" size="36" id="listSize"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS09.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS09.xml
new file mode 100644
index 0000000..7fcee81
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS09.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS09">
+<metadata>
+<title>getElementsByTagNameNS09</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method for a
+ Element should return a new NodeList of all descendant Elements with a given
+ localName and namespaceURI in the order they were encountered in a preorder
+ traversal of the document tree.
+
+ Invoke method getElementsByTagNameNS(namespaceURI,localName) on the document
+ element with namespaceURI being "*" and localName is "employee".
+ Method should return a new NodeList containing five Elements.
+ Retrieve the FOURTH element whose name should be "emp:employee".
+
+ Derived from getElementsByTagNameNS02 and reflects its interpretation
+ that namespace="*" matches namespace unqualified tagnames.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2001-02-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1938918D"/>
+</metadata>
+<!-- this test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newList" type="NodeList"/>
+<var name="newElement" type="Element"/>
+<var name="prefix" type="DOMString"/>
+<var name="lname" type="DOMString"/>
+<var name="docElem" type="Element"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<getElementsByTagNameNS interface="Element" obj="docElem" var="newList" namespaceURI='"*"' localName='"employee"'/>
+<assertSize collection="newList" size="5" id="employeeCount"/>
+<item interface="NodeList" obj="newList" var="newElement" index="3"/>
+<prefix obj="newElement" var="prefix"/>
+<assertEquals actual="prefix" expected='"emp"' id="prefix" ignoreCase="false"/>
+<localName obj="newElement" var="lname"/>
+<assertEquals actual="lname" expected='"employee"' id="lname" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS10.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS10.xml
new file mode 100644
index 0000000..956e965
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS10.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS10">
+<metadata>
+<title>getElementsByTagNameNS10</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method returns a NodeList
+ of all descendant Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of this Element tree.
+
+ Create a NodeList of all the descendant elements of the document element
+ using the "http://www.nist.gov" as the namespaceURI and the special value "*" as the
+ localName.
+ The method should return a NodeList of elements that have "http://www.nist.gov
+ as a namespace URI.
+
+ Derived from getElementsByTagNameNS03
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-02-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1938918D"/>
+</metadata>
+<!-- test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>"employee"</member>
+<member>"employeeId"</member>
+<member>"name"</member>
+<member>"position"</member>
+<member>"salary"</member>
+<member>"gender"</member>
+<member>"address"</member>
+<member>"emp:employee"</member>
+<member>"emp:employeeId"</member>
+<member>"emp:position"</member>
+<member>"emp:salary"</member>
+<member>"emp:gender"</member>
+<member>"emp:address"</member>
+<member>"address"</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<getElementsByTagNameNS interface="Element" obj="docElem" namespaceURI='"http://www.nist.gov"' localName='"*"' var="elementList"/>
+<for-each collection="elementList" member="child">
+<nodeName obj="child" var="childName"/>
+<append collection="result" item="childName"/>
+</for-each>
+<assertEquals actual="result" expected="expectedResult" id="nodeNames" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS11.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS11.xml
new file mode 100644
index 0000000..3dd2c36
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS11.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS11">
+<metadata>
+<title>getElementsByTagNameNS11</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method returns a NodeList
+ of all descendant Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of this Element tree.
+
+ Create a NodeList of all the descendant elements
+ using the special value "*" as the namespaceURI and "address" as the
+ localName.
+ The method should return a NodeList of Elements that have
+ "address" as the local name.
+
+ This test is derived from getElementsByTagNameNS04
+</description>
+<date qualifier="created">2002-02-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1938918D"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>"address"</member>
+<member>"address"</member>
+<member>"address"</member>
+<member>"emp:address"</member>
+<member>"address"</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<getElementsByTagNameNS interface="Element" obj="docElem" namespaceURI='"*"' localName='"address"' var="elementList"/>
+<for-each collection="elementList" member="child">
+<nodeName obj="child" var="childName"/>
+<append collection="result" item="childName"/>
+</for-each>
+<assertEquals actual="result" expected="expectedResult" id="nodeNames" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS12.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS12.xml
new file mode 100644
index 0000000..705ee6f
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS12.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS12">
+<metadata>
+<title>getElementsByTagNameNS12</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method returns a NodeList
+ of all descendant Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of this Element tree.
+
+ Create a NodeList of all the descendant elements
+ using the "http://www.nist.gov" as the namespaceURI and "nomatch" as the
+ localName.
+ The method should return a NodeList whose length is "0".
+
+ This test is a modification of getElementsByTagName05
+</description>
+<date qualifier="created">2001-02-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1938918D"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<getElementsByTagNameNS interface="Element" obj="docElem" namespaceURI='"http://www.nist.gov"' localName='"nomatch"' var="elementList"/>
+<assertSize collection="elementList" size="0" id="size"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS13.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS13.xml
new file mode 100644
index 0000000..f806876
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS13.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS13">
+<metadata>
+<title>getElementsByTagNameNS13</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method returns a NodeList
+ of all descendant Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of this Element tree.
+
+ Create a NodeList of all the descendant elements
+ using the "http://www.nomatch.com" as the namespaceURI and "address" as the
+ localName.
+ The method should return a NodeList whose length is
+ "0".
+</description>
+<date qualifier="created">2001-02-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1938918D"/>
+</metadata>
+<!-- test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<getElementsByTagNameNS interface="Element" obj="docElem" namespaceURI='"http://www.nomatch.com"' localName='"address"' var="elementList"/>
+<assertSize collection="elementList" size="0" id="matchSize"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getElementsByTagNameNS14.xml b/test/testcases/tests/level2/core/getElementsByTagNameNS14.xml
new file mode 100644
index 0000000..bd6ed47
--- /dev/null
+++ b/test/testcases/tests/level2/core/getElementsByTagNameNS14.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getElementsByTagNameNS14">
+<metadata>
+<title>getElementsByTagNameNS14</title>
+<creator>Curt Arnold</creator>
+<description>
+ The "getElementsByTagNameNS(namespaceURI,localName)" method returns a NodeList
+ of all descendant Elements with a given local name and namespace URI in the
+ order in which they are encountered in a preorder traversal of this Element tree.
+
+ Create a NodeList of all the descendant elements
+ using the string "http://www.nist.gov" as the namespaceURI and "address" as the
+ localName.
+ The method should return a NodeList whose length is
+ "3".
+</description>
+<date qualifier="created">2002-02-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1938918D"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<getElementsByTagNameNS interface="Element" obj="docElem" namespaceURI='"http://www.nist.gov"' localName='"address"' var="elementList"/>
+<assertSize collection="elementList" size="3" id="addresses"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getNamedItemNS01.xml b/test/testcases/tests/level2/core/getNamedItemNS01.xml
new file mode 100644
index 0000000..aaecc27
--- /dev/null
+++ b/test/testcases/tests/level2/core/getNamedItemNS01.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getNamedItemNS01">
+<metadata>
+<title>getNamedItemNS01</title>
+<creator>NIST</creator>
+<description>
+ The "getNamedItemNS(namespaceURI,localName)" method for a
+ NamedNodeMap should return a node specified by localName and namespaceURI
+
+ Retrieve a list of elements with tag name "address".
+ Access the second element from the list and get its attributes.
+ Try to retrieve the attribute node with local name "domestic"
+ and namespace uri "http://www.usa.com" with
+ method getNamedItemNS(namespaceURI,localName).
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-F68D095"/>
+</metadata>
+<!-- this test requires the parser to be namespace aware -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"address"'/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="1"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItemNS obj="attributes" var="domesticAttr" namespaceURI='"http://www.usa.com"' localName='"domestic"'/>
+<nodeName obj="domesticAttr" var="attrName"/>
+<assertEquals actual="attrName" expected='"dmstc:domestic"' id="attrName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getNamedItemNS02.xml b/test/testcases/tests/level2/core/getNamedItemNS02.xml
new file mode 100644
index 0000000..33347d4
--- /dev/null
+++ b/test/testcases/tests/level2/core/getNamedItemNS02.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getNamedItemNS02">
+<metadata>
+<title>getNamedItemNS02</title>
+<creator>NIST</creator>
+<description>
+ The "getNamedItemNS(namespaceURI,localName)" method for a
+ NamedNodeMap should return null
+ if parameters do not identify any node in this map.
+
+ Retrieve a list of elements with tag name "address".
+ Access the second element from the list and get its attributes.
+ Try to retrieve an attribute node with local name "domest"
+ and namespace uri "http://www.usa.com" with
+ method getNamedItemNS(namespaceURI,localName).
+ This should return null because "domest" does not match any local names in this map.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getNamedItemNS"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.usa.com&quot;"/>
+<var name="localName" type="DOMString" value="&quot;domest&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="newAttr" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testEmployee" index="1"/>
+<attributes obj="testEmployee" var="attributes"/>
+<getNamedItemNS obj="attributes" var="newAttr" namespaceURI="namespaceURI" localName="localName"/>
+<assertNull actual="newAttr" id="throw_Null"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getNamedItemNS03.xml b/test/testcases/tests/level2/core/getNamedItemNS03.xml
new file mode 100644
index 0000000..e3a993a
--- /dev/null
+++ b/test/testcases/tests/level2/core/getNamedItemNS03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2003-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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getNamedItemNS03">
+<metadata>
+<title>getNamedItemNS03</title>
+<creator>Curt Arnold</creator>
+<description>
+Entity nodes are not namespaced and should not be retrievable using
+getNamedItemNS.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2003-11-26</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getNamedItemNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entities" obj="docType"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<getNamedItemNS var="entity" obj="entities" namespaceURI="nullNS" localName='"ent1"'/>
+<assertNull actual="entity" id="entityNull"/>
+</test>
diff --git a/test/testcases/tests/level2/core/getNamedItemNS04.xml b/test/testcases/tests/level2/core/getNamedItemNS04.xml
new file mode 100644
index 0000000..cf38dba
--- /dev/null
+++ b/test/testcases/tests/level2/core/getNamedItemNS04.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="getNamedItemNS04">
+<metadata>
+<title>getNamedItemNS04</title>
+<creator>Curt Arnold</creator>
+<description>
+Notation nodes are not namespaced and should not be retrievable using
+getNamedItemNS.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2003-11-26</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getNamedItemNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<notations var="notations" obj="docType"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItemNS var="notation" obj="notations" namespaceURI="nullNS" localName='"notation1"'/>
+<assertNull actual="notation" id="notationNull"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hasAttribute01.xml b/test/testcases/tests/level2/core/hasAttribute01.xml
new file mode 100644
index 0000000..1a2e35e
--- /dev/null
+++ b/test/testcases/tests/level2/core/hasAttribute01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasAttribute01">
+<metadata>
+<title>hasAttribute01</title>
+<creator>NIST</creator>
+<description>
+ The "hasAttribute()" method for an Element should
+ return true if the element has an attribute with the given name.
+
+ Retrieve the first "address" element and the "hasAttribute()" method
+ should return false since the element does not have a default value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testNode" type="Element"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testNode" index="4"/>
+<hasAttribute obj="testNode" var="state" name="&quot;domestic&quot;"/>
+<assertFalse actual="state" id="throw_False"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hasAttribute02.xml b/test/testcases/tests/level2/core/hasAttribute02.xml
new file mode 100644
index 0000000..431a898
--- /dev/null
+++ b/test/testcases/tests/level2/core/hasAttribute02.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasAttribute02">
+<metadata>
+<title>hasAttribute02</title>
+<creator>NIST</creator>
+<description>
+ The "hasAttribute()" method for an Element should
+ return true if the element has an attribute with the given name.
+
+ Retrieve the first "address" element and the "hasAttribute()" method
+ should return true since the attribute "street" has a default value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttr"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=238"/>
+</metadata>
+<!-- only mandatory for validating parsers -->
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testNode" type="Element"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testNode" index="0"/>
+<hasAttribute obj="testNode" var="state" name="&quot;street&quot;"/>
+<assertTrue actual="state" id="throw_True"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hasAttribute03.xml b/test/testcases/tests/level2/core/hasAttribute03.xml
new file mode 100644
index 0000000..44f39c1
--- /dev/null
+++ b/test/testcases/tests/level2/core/hasAttribute03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasAttribute03">
+<metadata>
+<title>hasAttribute03</title>
+<creator>NIST</creator>
+<description>
+ The "hasAttribute()" method for an Element should
+ return false if the element does not have an attribute with the given name.
+
+ Retrieve the first "address" element and the "hasAttribute()" method
+ should return false since the element does not have "nomatch" as an attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testNode" type="Element"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testNode" index="0"/>
+<hasAttribute obj="testNode" var="state" name="&quot;nomatch&quot;"/>
+<assertFalse actual="state" id="throw_False"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hasAttribute04.xml b/test/testcases/tests/level2/core/hasAttribute04.xml
new file mode 100644
index 0000000..df58285
--- /dev/null
+++ b/test/testcases/tests/level2/core/hasAttribute04.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasAttribute04">
+<metadata>
+<title>hasAttribute04</title>
+<creator>NIST</creator>
+<description>
+ The "hasAttribute()" method for an Element should
+ return true if the element has an attribute with the given name.
+
+ Retrieve the first "address" element and the "hasAttribute()" method
+ should return true since the element has "domestic" as an attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttr"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=238"/>
+</metadata>
+<!-- only mandatory for validating parsers -->
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testNode" type="Element"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"address"'/>
+<item interface="NodeList" obj="elementList" var="testNode" index="0"/>
+<hasAttribute obj="testNode" var="state" name='"dmstc:domestic"'/>
+<assertTrue actual="state" id="hasDomesticAttr"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hasAttributeNS01.xml b/test/testcases/tests/level2/core/hasAttributeNS01.xml
new file mode 100644
index 0000000..bbf2a74
--- /dev/null
+++ b/test/testcases/tests/level2/core/hasAttributeNS01.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasAttributeNS01">
+<metadata>
+<title>hasAttributeNS01</title>
+<creator>NIST</creator>
+<description>
+
+ The "hasAttributeNS()" method for an Element should
+ return false if the element does not have an attribute with the given local name
+ and/or a namespace URI specified on this element or does not have a default value.
+
+ Retrieve the first "address" element and the "hasAttributeNS()" method
+ should return false since the element has "nomatch" as the local name
+ and "http://www.usa.com" as the namespace URI.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttrNS"/>
+</metadata>
+<var name="localName" type="DOMString" value="&quot;nomatch&quot;"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.usa.com&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testNode" type="Element"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testNode" index="0"/>
+<hasAttributeNS obj="testNode" var="state" namespaceURI="namespaceURI" localName="localName"/>
+<assertFalse actual="state" id="throw_False"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hasAttributeNS02.xml b/test/testcases/tests/level2/core/hasAttributeNS02.xml
new file mode 100644
index 0000000..7eee70b
--- /dev/null
+++ b/test/testcases/tests/level2/core/hasAttributeNS02.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasAttributeNS02">
+<metadata>
+<title>hasAttributeNS02</title>
+<creator>NIST</creator>
+<description>
+ The "hasAttributeNS()" method for an Element should
+ return false if the element does not have an attribute with the given local name
+ and/or namespace URI specified on this element or does not have a default value.
+
+ Retrieve the first "address" element and the "hasAttributeNS()" method
+ should return false since the element has "domestic" as the local name
+ and "http://www.nomatch.com" as the namespace URI.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttrNS"/>
+</metadata>
+<var name="localName" type="DOMString" value="&quot;domestic&quot;"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nomatch.com&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testNode" type="Element"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testNode" index="0"/>
+<hasAttributeNS obj="testNode" var="state" namespaceURI="namespaceURI" localName="localName"/>
+<assertFalse actual="state" id="throw_False"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hasAttributeNS03.xml b/test/testcases/tests/level2/core/hasAttributeNS03.xml
new file mode 100644
index 0000000..a7ea952
--- /dev/null
+++ b/test/testcases/tests/level2/core/hasAttributeNS03.xml
@@ -0,0 +1,47 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasAttributeNS03">
+<metadata>
+<title>hasAttributeNS03</title>
+<creator>NIST</creator>
+<description>
+ The "hasAttributeNS()" method for an Element should
+ return false if the element does not have an attribute with the given local name
+ and/or namespace URI specified on this element or does not have a default value.
+
+ Retrieve the first "emp:address" element.
+ The boolean value returned by the "hasAttributeNS()" should be false
+ since the attribute does not have a default value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttrNS"/>
+</metadata>
+<var name="localName" type="DOMString" value="&quot;blank&quot;"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testNode" type="Element"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;emp:address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testNode" index="0"/>
+<assertNotNull actual="testNode" id="empAddrNotNull"/>
+<hasAttributeNS obj="testNode" var="state" namespaceURI="namespaceURI" localName="localName"/>
+<assertFalse actual="state" id="throw_False"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hasAttributeNS04.xml b/test/testcases/tests/level2/core/hasAttributeNS04.xml
new file mode 100644
index 0000000..dd3362f
--- /dev/null
+++ b/test/testcases/tests/level2/core/hasAttributeNS04.xml
@@ -0,0 +1,50 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasAttributeNS04">
+<metadata>
+<title>hasAttributeNS04</title>
+<creator>NIST</creator>
+<description>
+ The "hasAttributeNS()" method for an Element should
+ return true if the attribute with the given local name
+ and namespace URI has a default value.
+
+ Retrieve the first "emp:address" element.
+ The boolean value returned by the "hasAttributeNS()" should be true
+ since the attribute has a default value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttrNS"/>
+</metadata>
+<!-- test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<var name="localName" type="DOMString" value="&quot;district&quot;"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testNode" type="Element"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;emp:address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testNode" index="0"/>
+<assertNotNull actual="testNode" id="empAddressNotNull"/>
+<hasAttributeNS obj="testNode" var="state" namespaceURI="namespaceURI" localName="localName"/>
+<assertTrue actual="state" id="hasAttribute"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hasAttributeNS05.xml b/test/testcases/tests/level2/core/hasAttributeNS05.xml
new file mode 100644
index 0000000..b94bae7
--- /dev/null
+++ b/test/testcases/tests/level2/core/hasAttributeNS05.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasAttributeNS05">
+<metadata>
+<title>hasAttributeNS05</title>
+<creator>NIST</creator>
+<description>
+ The "hasAttributeNS()" method for an Element should
+ return true if the element has an attribute with the given local name
+ and the namespace URI is specified on this element or has a default value.
+
+ Retrieve the first "address" element and the "hasAttributeNS()" method
+ should return true since the element has "domestic" as the local name
+ and "http://www.usa.com" as the namespace URI.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttrNS"/>
+</metadata>
+<!-- test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="localName" type="DOMString" value="&quot;domestic&quot;"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.usa.com&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testNode" type="Element"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testNode" index="0"/>
+<hasAttributeNS obj="testNode" var="state" namespaceURI="namespaceURI" localName="localName"/>
+<assertTrue actual="state" id="hasAttribute"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hasAttributes01.xml b/test/testcases/tests/level2/core/hasAttributes01.xml
new file mode 100644
index 0000000..c653e89
--- /dev/null
+++ b/test/testcases/tests/level2/core/hasAttributes01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasAttributes01">
+<metadata>
+<title>hasAttributes01</title>
+<creator>NIST</creator>
+<description>
+ The "hasAttributes()" method for a node should
+ return false if the node does not have an attribute.
+
+ Retrieve the first "name" node and invoke the "hasAttributes()" method.
+ The method should return false since the node does not have an attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeHasAttrs"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addrList" type="NodeList"/>
+<var name="addrNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;name&quot;" var="addrList"/>
+<item interface="NodeList" obj="addrList" index="0" var="addrNode"/>
+<hasAttributes obj="addrNode" var="state"/>
+<assertFalse actual="state" id="throw_False"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hasAttributes02.xml b/test/testcases/tests/level2/core/hasAttributes02.xml
new file mode 100644
index 0000000..86c647e
--- /dev/null
+++ b/test/testcases/tests/level2/core/hasAttributes02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasAttributes02">
+<metadata>
+<title>hasAttributes02</title>
+<creator>NIST</creator>
+<description>
+ The "hasAttributes()" method for a node should
+ return true if the node has attributes.
+
+ Retrieve the first address node and the "hasAttributes()" method
+ should return true since the node has "domestic" as an attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeHasAttrs"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addrList" type="NodeList"/>
+<var name="addrNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;address&quot;" var="addrList"/>
+<item interface="NodeList" obj="addrList" index="0" var="addrNode"/>
+<hasAttributes obj="addrNode" var="state"/>
+<assertTrue actual="state" id="throw_True"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hc_entitiesremovenameditemns1.xml b/test/testcases/tests/level2/core/hc_entitiesremovenameditemns1.xml
new file mode 100644
index 0000000..0a7a944
--- /dev/null
+++ b/test/testcases/tests/level2/core/hc_entitiesremovenameditemns1.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hc_entitiesremovenameditemns1">
+<metadata>
+<title>hc_entitiesremovenameditemns1</title>
+<creator>Curt Arnold</creator>
+<description>
+An attempt to add remove an entity using removeNamedItemNS should result in
+a NO_MODIFICATION_ERR or a NOT_FOUND_ERR.
+</description>
+<date qualifier="created">2004-01-11</date>
+<!-- DocumentType.entities -->
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1788794630"/>
+<!-- NamedNodeMap.removeNamedItemNS -->
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-removeNamedItemNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<if><not><contentType type="text/html"/></not>
+ <assertNotNull actual="docType" id="docTypeNotNull"/>
+ <entities var="entities" obj="docType"/>
+ <assertNotNull actual="entities" id="entitiesNotNull"/>
+ <try>
+ <removeNamedItemNS var="retval" obj="entities" namespaceURI='"http://www.w3.org/1999/xhtml"' localName='"alpha"'/>
+ <fail id="throw_NO_MOD_OR_NOT_FOUND_ERR"/>
+ <catch>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ <DOMException code="NOT_FOUND_ERR"/>
+ </catch>
+ </try>
+</if>
+</test>
diff --git a/test/testcases/tests/level2/core/hc_entitiessetnameditemns1.xml b/test/testcases/tests/level2/core/hc_entitiessetnameditemns1.xml
new file mode 100644
index 0000000..9a446d7
--- /dev/null
+++ b/test/testcases/tests/level2/core/hc_entitiessetnameditemns1.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hc_entitiessetnameditemns1">
+<metadata>
+<title>hc_entitiessetnameditemns1</title>
+<creator>Curt Arnold</creator>
+<description>
+An attempt to add an element to the named node map returned by entities should
+result in a NO_MODIFICATION_ERR or HIERARCHY_REQUEST_ERR.
+</description>
+<date qualifier="created">2004-01-11</date>
+<!-- DocumentType.entities -->
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1788794630"/>
+<!-- NamedNodeMap.setNamedItemNS -->
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<var name="retval" type="Node"/>
+<var name="elem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<if><not><contentType type="text/html"/></not>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities var="entities" obj="docType"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"br"'/>
+<try>
+ <setNamedItemNS var="retval" obj="entities" arg="elem"/>
+ <fail id="throw_HIER_OR_NO_MOD_ERR"/>
+ <catch>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ </catch>
+</try>
+</if>
+</test>
diff --git a/test/testcases/tests/level2/core/hc_namednodemapinvalidtype1.xml b/test/testcases/tests/level2/core/hc_namednodemapinvalidtype1.xml
new file mode 100644
index 0000000..d7f33df
--- /dev/null
+++ b/test/testcases/tests/level2/core/hc_namednodemapinvalidtype1.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hc_namednodemapinvalidtype1">
+<metadata>
+<title>hc_namednodemapinvalidtype1</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempt to insert an element into an attribute list,
+should raise a HIERARCHY_REQUEST_ERR.
+</description>
+
+<date qualifier="created">2004-01-09</date>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])"/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788"/>
+<subject resource="http://www.w3.org/2000/11/DOM-Level-2-errata#core-4"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="docElem" type="Element"/>
+<var name="newElem" type="Element"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<attributes var="attributes" obj="docElem"/>
+<createElement var="newElem" obj="doc" tagName='"html"'/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+ <HIERARCHY_REQUEST_ERR>
+ <setNamedItem var="retval" obj="attributes" arg="newElem"/>
+ </HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/hc_nodedocumentfragmentnormalize1.xml b/test/testcases/tests/level2/core/hc_nodedocumentfragmentnormalize1.xml
new file mode 100644
index 0000000..af0a505
--- /dev/null
+++ b/test/testcases/tests/level2/core/hc_nodedocumentfragmentnormalize1.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hc_nodedocumentfragmentnormalize1">
+<metadata>
+<title>hc_nodedocumentfragmentnormalize1</title>
+<creator>Curt Arnold</creator>
+<description>
+Create a document fragment with two adjacent text nodes, normalize and see if the text nodes
+were combined.
+</description>
+
+<date qualifier="created">2004-01-10</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-B63ED1A3"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="txtNode" type="Text"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="docFragment"/>
+<createTextNode var="txtNode" obj="doc" data='"foo"'/>
+<appendChild var="retval" obj="docFragment" newChild="txtNode"/>
+<createTextNode var="txtNode" obj="doc" data='"bar"'/>
+<appendChild var="retval" obj="docFragment" newChild="txtNode"/>
+<normalize obj="docFragment"/>
+<firstChild var="txtNode" obj="docFragment" interface="Node"/>
+<nodeValue obj="txtNode" var="nodeValue"/>
+<assertEquals actual="nodeValue" expected='"foobar"' id="normalizedNodeValue" ignoreCase="false"/>
+<nextSibling var="retval" obj="txtNode" interface="Node"/>
+<assertNull actual="retval" id="singleChild"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hc_nodedocumentfragmentnormalize2.xml b/test/testcases/tests/level2/core/hc_nodedocumentfragmentnormalize2.xml
new file mode 100644
index 0000000..12dbfb5
--- /dev/null
+++ b/test/testcases/tests/level2/core/hc_nodedocumentfragmentnormalize2.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hc_nodedocumentfragmentnormalize2">
+<metadata>
+<title>hc_nodedocumentfragmentnormalize1</title>
+<creator>Curt Arnold</creator>
+<description>
+Create a document fragment with an empty text node, after normalization there should be no child nodes.
+were combined.
+</description>
+
+<date qualifier="created">2004-01-10</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-F68D095"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-B63ED1A3"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="txtNode" type="Text"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment obj="doc" var="docFragment"/>
+<createTextNode var="txtNode" obj="doc" data='""'/>
+<appendChild var="retval" obj="docFragment" newChild="txtNode"/>
+<normalize obj="docFragment"/>
+<firstChild var="txtNode" obj="docFragment" interface="Node"/>
+<assertNull actual="txtNode" id="noChild"/>
+</test>
diff --git a/test/testcases/tests/level2/core/hc_notationsremovenameditemns1.xml b/test/testcases/tests/level2/core/hc_notationsremovenameditemns1.xml
new file mode 100644
index 0000000..3268481
--- /dev/null
+++ b/test/testcases/tests/level2/core/hc_notationsremovenameditemns1.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hc_notationsremovenameditemns1">
+<metadata>
+<title>hc_notationsremovenameditemns1</title>
+<creator>Curt Arnold</creator>
+<description>
+An attempt to add remove an notation using removeNamedItemNS should result in
+a NO_MODIFICATION_ERR or a NOT_FOUND_ERR.
+</description>
+<date qualifier="created">2004-01-11</date>
+<!-- DocumentType.notations -->
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D46829EF"/>
+<!-- NamedNodeMap.removeNamedItemNS -->
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-removeNamedItemNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<if><not><contentType type="text/html"/></not>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations var="notations" obj="docType"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<try>
+ <removeNamedItemNS var="retval" obj="notations" namespaceURI='"http://www.w3.org/1999/xhtml"' localName='"alpha"'/>
+ <fail id="throw_NO_MOD_OR_NOT_FOUND_ERR"/>
+ <catch>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ <DOMException code="NOT_FOUND_ERR"/>
+ </catch>
+</try>
+</if>
+</test>
diff --git a/test/testcases/tests/level2/core/hc_notationssetnameditemns1.xml b/test/testcases/tests/level2/core/hc_notationssetnameditemns1.xml
new file mode 100644
index 0000000..354401b
--- /dev/null
+++ b/test/testcases/tests/level2/core/hc_notationssetnameditemns1.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hc_notationssetnameditemns1">
+<metadata>
+<title>hc_notationssetnameditemns1</title>
+<creator>Curt Arnold</creator>
+<description>
+An attempt to add an element to the named node map returned by notations should
+result in a NO_MODIFICATION_ERR or HIERARCHY_REQUEST_ERR.
+</description>
+<date qualifier="created">2004-01-11</date>
+<!-- DocumentType.notations -->
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D46829EF"/>
+<!-- NamedNodeMap.setNamedItemNS -->
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<var name="retval" type="Node"/>
+<var name="elem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<if><not><contentType type="text/html"/></not>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<notations var="notations" obj="docType"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"br"'/>
+<try>
+ <setNamedItemNS var="retval" obj="notations" arg="elem"/>
+ <fail id="throw_HIER_OR_NO_MOD_ERR"/>
+ <catch>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ </catch>
+</try>
+</if>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode01.xml b/test/testcases/tests/level2/core/importNode01.xml
new file mode 100644
index 0000000..007170d
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode01.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode01">
+<metadata>
+<title>importNode01</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Attr.
+ The ownerElement is set to null. Specified flag is set to true.
+ Children is imported.
+
+ Create a new attribute whose name is "elem:attr1" in a different document.
+ Create a child Text node with value "importedText" for the attribute node above.
+ Invoke method importNode(importedNode,deep) on this document with
+ importedNode being the newly created attribute.
+ Method should return a node whose name matches "elem:attr1" and a child node
+ whose value equals "importedText".
+ The returned node should belong to this document whose systemId is "staff.dtd"
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<var name="importedChild" type="Text"/>
+<var name="aNode" type="Node"/>
+<var name="ownerDocument" type="Document"/>
+<var name="attrOwnerElement" type="Element"/>
+<var name="docType" type="DocumentType"/>
+<var name="system" type="DOMString"/>
+<var name="specified" type="boolean"/>
+<var name="childList" type="NodeList"/>
+<var name="nodeName" type="DOMString"/>
+<var name="child" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>"elem:attr1"</member>
+<member>"importedText"</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<createAttribute obj="aNewDoc" var="newAttr" name='"elem:attr1"'/>
+<createTextNode obj="aNewDoc" var="importedChild" data='"importedText"'/>
+<appendChild obj="newAttr" var="aNode" newChild="importedChild"/>
+<importNode obj="doc" var="aNode" importedNode="newAttr" deep="false"/>
+<ownerDocument obj="aNode" var="ownerDocument"/>
+<doctype obj="ownerDocument" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="system"/>
+<assertNotNull actual="aNode" id="aNode"/>
+<assertURIEquals actual="system" file='"staffNS.dtd"' id="systemId"/>
+<ownerElement obj="aNode" var="attrOwnerElement"/>
+<assertNull actual="attrOwnerElement" id="ownerElement"/>
+<specified obj="aNode" var="specified"/>
+<assertTrue actual="specified" id="specified"/>
+<childNodes obj="aNode" var="childList"/>
+<assertSize collection="childList" size="1" id="childList"/>
+<nodeName obj="aNode" var="nodeName"/>
+<assertEquals actual="nodeName" id="nodeName" ignoreCase="false" expected='"elem:attr1"'/>
+<firstChild interface="Node" obj="aNode" var="child"/>
+<nodeValue obj="child" var="childValue"/>
+<assertEquals actual="childValue" id="childValue" ignoreCase="false" expected='"importedText"'/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode02.xml b/test/testcases/tests/level2/core/importNode02.xml
new file mode 100644
index 0000000..7ec1b19
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode02.xml
@@ -0,0 +1,55 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode02">
+<metadata>
+<title>importNode02</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type CData_Section.
+
+ Create a CDATASection node with value being the string "this is CDATASection data" in
+ a different document. Invoke method importNode(importedNode,deep) on
+ this document. Method should return a CDATASection node whose value matches
+ the above string. The returned node should belong to this document whose systemId is "staff.dtd"
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="cDataSec" type="CDATASection"/>
+<var name="aNode" type="Node"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="system" type="DOMString"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<createCDATASection obj="aNewDoc" var="cDataSec" data='"this is CDATASection data"'/>
+<importNode obj="doc" var="aNode" importedNode="cDataSec" deep="false"/>
+<ownerDocument obj="aNode" var="ownerDocument"/>
+<assertNotNull actual="ownerDocument" id="ownerDocumentNotNull"/>
+<doctype obj="ownerDocument" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="system"/>
+<assertURIEquals actual="system" file='"staffNS.dtd"' id="dtdSystemId"/>
+<nodeValue obj="aNode" var="value"/>
+<assertEquals actual="value" expected='"this is CDATASection data"' id="nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode03.xml b/test/testcases/tests/level2/core/importNode03.xml
new file mode 100644
index 0000000..630e3ff
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode03.xml
@@ -0,0 +1,56 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode03">
+<metadata>
+<title>importNode03</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Comment.
+
+ Create a comment node with value being the string "this is a comment" in
+ a different document. Invoke method importNode(importedNode,deep) on
+ this document. Method should return a comment node whose value matches
+ the above string. The returned node should belong to this document whose
+ systemId is "staff.dtd"
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="comment" type="Comment"/>
+<var name="aNode" type="Node"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="system" type="DOMString"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<createComment obj="aNewDoc" var="comment" data='"this is a comment"'/>
+<importNode obj="doc" var="aNode" importedNode="comment" deep="false"/>
+<ownerDocument obj="aNode" var="ownerDocument"/>
+<assertNotNull actual="ownerDocument" id="ownerDocumentNotNull"/>
+<doctype obj="ownerDocument" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="system"/>
+<assertURIEquals actual="system" file='"staffNS.dtd"' id="systemId"/>
+<nodeValue obj="aNode" var="value"/>
+<assertEquals actual="value" expected='"this is a comment"' id="nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode04.xml b/test/testcases/tests/level2/core/importNode04.xml
new file mode 100644
index 0000000..69e12e9
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode04.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode04">
+<metadata>
+<title>importNode04</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Document_Fragment.
+
+ Create a DocumentFragment in a different document.
+ Create a Comment child node for the Document Fragment.
+ Invoke method importNode(importedNode,deep) on this document
+ with importedNode being the newly created DocumentFragment.
+ Method should return a node of type DocumentFragment whose child has
+ comment value "descendant1".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="comment" type="Comment"/>
+<var name="aNode" type="Node"/>
+<var name="children" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<load var="aNewDoc" href="staff" willBeModified="true"/>
+<createDocumentFragment obj="aNewDoc" var="docFrag"/>
+<createComment obj="aNewDoc" var="comment" data='"descendant1"'/>
+<appendChild obj="docFrag" var="aNode" newChild="comment"/>
+<importNode obj="doc" var="aNode" importedNode="docFrag" deep="true"/>
+<childNodes obj="aNode" var="children"/>
+<assertSize collection="children" size="1" id="throw_Size"/>
+<firstChild interface="Node" obj="aNode" var="child"/>
+<nodeValue obj="child" var="childValue"/>
+<assertEquals actual="childValue" expected='"descendant1"' id="descendant1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode05.xml b/test/testcases/tests/level2/core/importNode05.xml
new file mode 100644
index 0000000..2cd83de
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode05.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode05">
+<metadata>
+<title>importNode05</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Element.
+
+ Retrieve element "emp:address" from staffNS.xml document.
+ Invoke method importNode(importedNode,deep) on this document
+ with importedNode being the element from above and deep is false.
+ Method should return an element node whose name matches "emp:address"
+ and whose children are not imported. The returned node should
+ belong to this document whose systemId is "staff.dtd"
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="aNode" type="Node"/>
+<var name="hasChild" type="boolean"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="system" type="DOMString"/>
+<var name="name" type="DOMString"/>
+<var name="addresses" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName var="addresses" obj="aNewDoc" interface="Document" tagname='"emp:address"'/>
+<item var="element" obj="addresses" interface="NodeList" index="0"/>
+<assertNotNull actual="element" id="empAddressNotNull"/>
+<importNode obj="doc" var="aNode" importedNode="element" deep="false"/>
+<hasChildNodes obj="aNode" var="hasChild"/>
+<assertFalse actual="hasChild" id="hasChild"/>
+<ownerDocument obj="aNode" var="ownerDocument"/>
+<doctype obj="ownerDocument" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="system"/>
+<assertURIEquals actual="system" file='"staffNS.dtd"' id="dtdSystemId"/>
+<nodeName obj="aNode" var="name"/>
+<assertEquals actual="name" expected='"emp:address"' id="nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode06.xml b/test/testcases/tests/level2/core/importNode06.xml
new file mode 100644
index 0000000..c7999ad
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode06.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode06">
+<metadata>
+<title>importNode06</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Element.
+
+ Retrieve element "emp:address" from staffNS.xml document.
+ Invoke method importNode(importedNode,deep) on this document
+ with importedNode being the element from above and deep is true.
+ Method should return an element node whose name matches "emp:address" and
+ whose descendant is imported.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="aNode" type="Node"/>
+<var name="hasChild" type="boolean"/>
+<var name="name" type="DOMString"/>
+<var name="child" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="addresses" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName var="addresses" obj="aNewDoc" interface="Document" tagname='"emp:address"'/>
+<item var="element" obj="addresses" interface="NodeList" index="0"/>
+<assertNotNull actual="element" id="empAddressNotNull"/>
+<importNode obj="doc" var="aNode" importedNode="element" deep="true"/>
+<hasChildNodes obj="aNode" var="hasChild"/>
+<assertTrue actual="hasChild" id="throw_True"/>
+<nodeName obj="aNode" var="name"/>
+<assertEquals actual="name" expected='"emp:address"' id="nodeName" ignoreCase="false"/>
+<firstChild interface="Node" obj="aNode" var="child"/>
+<nodeValue obj="child" var="value"/>
+<assertEquals actual="value" expected='"27 South Road. Dallas, texas 98556"' id="nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode07.xml b/test/testcases/tests/level2/core/importNode07.xml
new file mode 100644
index 0000000..fb2e562
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode07.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode07">
+<metadata>
+<title>importNode07</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Element.
+ If this document defines default attributes for this element name (importedNode),
+ those default attributes are assigned.
+
+ Create an element whose name is "emp:employee" in a different document.
+ Invoke method importNode(importedNode,deep) on this document which
+ defines default attribute for the element name "emp:employee".
+ Method should return an the imported element with an assigned default attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=238"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="aNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="name" type="DOMString"/>
+<var name="attr" type="Node"/>
+<var name="lname" type="DOMString"/>
+<var name="namespaceURI" type="DOMString" value='"http://www.nist.gov"'/>
+<var name="qualifiedName" type="DOMString" value='"emp:employee"'/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staff" willBeModified="true"/>
+<createElementNS obj="aNewDoc" var="element" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<importNode obj="doc" var="aNode" importedNode="element" deep="false"/>
+<attributes obj="aNode" var="attributes"/>
+<assertSize collection="attributes" size="1" id="throw_Size"/>
+<nodeName obj="aNode" var="name"/>
+<assertEquals actual="name" expected='"emp:employee"' ignoreCase="false" id="nodeName"/>
+<item interface="NamedNodeMap" obj="attributes" var="attr" index="0"/>
+<localName obj="attr" var="lname"/>
+<assertEquals actual="lname" expected='"defaultAttr"' ignoreCase="false" id="lname"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode08.xml b/test/testcases/tests/level2/core/importNode08.xml
new file mode 100644
index 0000000..626de46
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode08.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode08">
+<metadata>
+<title>importNode08</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Document_Fragment.
+
+ Create a DocumentFragment in a different document.
+ Invoke method importNode(importedNode,deep) on this document
+ with importedNode being the newly created DocumentFragment.
+ Method should return an empty DocumentFragment that belongs
+ to this document whose systemId is "staff.dtd"
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-Core-DocType-systemId"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="aNode" type="Node"/>
+<var name="hasChild" type="boolean"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="system" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<createDocumentFragment obj="aNewDoc" var="docFrag"/>
+<importNode obj="doc" var="aNode" importedNode="docFrag" deep="false"/>
+<hasChildNodes obj="aNode" var="hasChild"/>
+<assertFalse actual="hasChild" id="hasChild"/>
+<ownerDocument obj="aNode" var="ownerDocument"/>
+<doctype obj="ownerDocument" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="system"/>
+<assertURIEquals actual="system" file='"staffNS.dtd"' id="system"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode09.xml b/test/testcases/tests/level2/core/importNode09.xml
new file mode 100644
index 0000000..5d07022
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode09.xml
@@ -0,0 +1,68 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode09">
+<metadata>
+<title>importNode09</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Entity.
+
+ Retrieve entity "ent6" from staffNS.xml document.
+ Invoke method importNode(importedNode,deep) on this document.
+ Method should return a node of type Entity whose publicId, systemId and
+ notationName attributes are copied.
+ The returned node should belong to this document whose systemId is "staff.dtd"
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="doc1Type" type="DocumentType"/>
+<var name="entityList" type="NamedNodeMap"/>
+<var name="entity2" type="Entity"/>
+<var name="entity1" type="Entity"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="system" type="DOMString"/>
+<var name="entityName" type="DOMString"/>
+<var name="publicVal" type="DOMString"/>
+<var name="notationName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<doctype obj="aNewDoc" var="docType"/>
+<entities obj="docType" var="entityList"/>
+<assertNotNull actual="entityList" id="entitiesNotNull"/>
+<getNamedItem obj="entityList" var="entity2" name='"ent6"'/>
+<importNode obj="doc" var="entity1" importedNode="entity2" deep="false"/>
+<ownerDocument obj="entity1" var="ownerDocument"/>
+<doctype obj="ownerDocument" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="system"/>
+<assertURIEquals actual="system" file='"staffNS.dtd"' id="dtdSystemId"/>
+<nodeName obj="entity1" var="entityName"/>
+<assertEquals actual="entityName" expected='"ent6"' ignoreCase="false" id="entityName"/>
+<publicId interface="Entity" obj="entity1" var="publicVal"/>
+<assertEquals actual="publicVal" expected='"uri"' ignoreCase="false" id="entityPublicId"/>
+<systemId interface="Entity" obj="entity1" var="system"/>
+<assertURIEquals actual="system" file='"file"' id="entitySystemId"/>
+<notationName obj="entity1" var="notationName"/>
+<assertEquals actual="notationName" expected='"notation2"' ignoreCase="false" id="notationName"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode10.xml b/test/testcases/tests/level2/core/importNode10.xml
new file mode 100644
index 0000000..1e5de0f
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode10.xml
@@ -0,0 +1,59 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode10">
+<metadata>
+<title>importNode10</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Entity_Reference.
+ Only the EntityReference is copied, regardless of deep's value.
+
+ Create an entity reference whose name is "entRef1" in a different document.
+ Give it value "entRef1Value".
+ Invoke method importNode(importedNode,deep) on this document with importedNode
+ being "entRef1".
+ Method should return a node of type Entity_Reference (whose value is null) that
+ belongs to this document whose systemId is "staff.dtd".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="entRef" type="EntityReference"/>
+<var name="aNode" type="Node"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="system" type="DOMString"/>
+<var name="name" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<createEntityReference obj="aNewDoc" var="entRef" name='"entRef1"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<nodeValue obj="entRef" value='"entRef1Value"'/>
+<importNode obj="doc" var="aNode" importedNode="entRef" deep="false"/>
+<ownerDocument obj="aNode" var="ownerDocument"/>
+<doctype obj="ownerDocument" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="system"/>
+<assertURIEquals actual="system" file='"staffNS.dtd"' id="systemId"/>
+<nodeName obj="aNode" var="name"/>
+<assertEquals actual="name" expected='"entRef1"' id="nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode11.xml b/test/testcases/tests/level2/core/importNode11.xml
new file mode 100644
index 0000000..68ea4fb
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode11.xml
@@ -0,0 +1,57 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode11">
+<metadata>
+<title>importNode11</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Entity_Reference.
+ Only the EntityReference is copied, regardless of deep's value.
+ If the Document provides a definition for the entity name, its value is assigned.
+
+ Create an entity reference whose name is "ent3" in a different document.
+ Invoke method importNode(importedNode,deep) on this document with importedNode
+ being "ent3".
+ Method should return a node of type Entity_Reference whose first child's value is "Texas" as defined
+ in this document.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="entRef" type="EntityReference"/>
+<var name="aNode" type="Node"/>
+<var name="name" type="DOMString"/>
+<var name="child" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<load var="aNewDoc" href="staff" willBeModified="true"/>
+<createEntityReference obj="aNewDoc" var="entRef" name='"ent3"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<importNode obj="doc" var="aNode" importedNode="entRef" deep="true"/>
+<nodeName obj="aNode" var="name"/>
+<assertEquals actual="name" id="entityName" expected='"ent3"' ignoreCase="false"/>
+<firstChild interface="Node" obj="aNode" var="child"/>
+<assertNotNull id="child" actual="child"/>
+<nodeValue obj="child" var="childValue"/>
+<assertEquals actual="childValue" id="childValue" expected='"Texas"' ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode12.xml b/test/testcases/tests/level2/core/importNode12.xml
new file mode 100644
index 0000000..b5522b1
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode12.xml
@@ -0,0 +1,65 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode12">
+<metadata>
+<title>importNode12</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Entity.
+
+ Retrieve entity "ent4" from staffNS.xml document.
+ Invoke method importNode(importedNode,deep) on this document with deep as false.
+ Method should return a node of type Entity whose descendant is copied.
+ The returned node should belong to this document whose systemId is "staffNS.dtd"
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="doc1Type" type="DocumentType"/>
+<var name="entityList" type="NamedNodeMap"/>
+<var name="entity2" type="Entity"/>
+<var name="entity1" type="Entity"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="system" type="DOMString"/>
+<var name="entityName" type="DOMString"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<doctype obj="aNewDoc" var="doc1Type"/>
+<entities obj="doc1Type" var="entityList"/>
+<assertNotNull actual="entityList" id="entitiesNotNull"/>
+<getNamedItem obj="entityList" var="entity2" name='"ent4"'/>
+<importNode obj="doc" var="entity1" importedNode="entity2" deep="true"/>
+<ownerDocument obj="entity1" var="ownerDocument"/>
+<doctype obj="ownerDocument" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="system"/>
+<assertURIEquals actual="system" file='"staffNS.dtd"' id="systemId"/>
+<nodeName obj="entity1" var="entityName"/>
+<assertEquals actual="entityName" expected='"ent4"' id="entityName" ignoreCase="false"/>
+<firstChild interface="Node" obj="entity1" var="child"/>
+<assertNotNull actual="child" id="notnull"/>
+<nodeName obj="child" var="childName"/>
+<assertEquals actual="childName" expected='"entElement1"' id="childName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode13.xml b/test/testcases/tests/level2/core/importNode13.xml
new file mode 100644
index 0000000..e60e4e4
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode13.xml
@@ -0,0 +1,62 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode13">
+<metadata>
+<title>importNode13</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Notation.
+
+ Retrieve notation named "notation1" from document staffNS.xml.
+ Invoke method importNode(importedNode,deep) where importedNode
+ contains the retrieved notation and deep is false. Method should
+ return a node of type notation whose name is "notation1".
+ The returned node should belong to this document whose systemId is "staff.dtd"
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="doc1Type" type="DocumentType"/>
+<var name="notationList" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="aNode" type="Notation"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="system" type="DOMString"/>
+<var name="publicVal" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<doctype obj="aNewDoc" var="doc1Type"/>
+<notations obj="doc1Type" var="notationList"/>
+<assertNotNull actual="notationList" id="notationsNotNull"/>
+<getNamedItem obj="notationList" var="notation" name='"notation1"'/>
+<importNode obj="doc" var="aNode" importedNode="notation" deep="false"/>
+<ownerDocument obj="aNode" var="ownerDocument"/>
+<doctype obj="ownerDocument" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="system"/>
+<assertURIEquals actual="system" file='"staffNS.dtd"' id="systemId"/>
+<publicId interface="Notation" obj="aNode" var="publicVal"/>
+<assertEquals actual="publicVal" expected='"notation1File"' id="publicId" ignoreCase="false"/>
+<systemId interface="Notation" obj="aNode" var="system"/>
+<assertNull actual="system" id="notationSystemId"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode14.xml b/test/testcases/tests/level2/core/importNode14.xml
new file mode 100644
index 0000000..995d107
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode14.xml
@@ -0,0 +1,59 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode14">
+<metadata>
+<title>importNode14</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Processing Instruction.
+
+ Create a processing instruction with target as "target1" and data as "data1"
+ in a different document. Invoke method importNode(importedNode,deep) on this document.
+ Method should return a processing instruction whose target and data match the given
+ parameters. The returned PI should belong to this document whose systemId is "staff.dtd".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="aNode" type="ProcessingInstruction"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="system" type="DOMString"/>
+<var name="target" type="DOMString"/>
+<var name="data" type="DOMString"/>
+<var name="result" type="List"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<createProcessingInstruction obj="aNewDoc" var="pi" target='"target1"' data='"data1"'/>
+<importNode obj="doc" var="aNode" importedNode="pi" deep="false"/>
+<ownerDocument obj="aNode" var="ownerDocument"/>
+<assertNotNull actual="ownerDocument" id="ownerDocumentNotNull"/>
+<doctype obj="ownerDocument" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="system"/>
+<assertURIEquals actual="system" file='"staffNS.dtd"' id="systemId"/>
+<target interface="ProcessingInstruction" obj="aNode" var="target"/>
+<assertEquals actual="target" expected='"target1"' id="piTarget" ignoreCase="false"/>
+<data interface="ProcessingInstruction" obj="aNode" var="data"/>
+<assertEquals actual="data" expected='"data1"' id="piData" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode15.xml b/test/testcases/tests/level2/core/importNode15.xml
new file mode 100644
index 0000000..fd157aa
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode15.xml
@@ -0,0 +1,56 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode15">
+<metadata>
+<title>importNode15</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should import the given importedNode into that Document.
+ The importedNode is of type Text.
+
+ Create a text node with value being the string "this is text data" in
+ a different document. Invoke method importNode(importedNode,deep) on
+ this document. Method should return a text node whose value matches
+ the above string. The returned node should belong to this document
+ whose systemId is "staff.dtd"
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="aNewDoc" type="Document"/>
+<var name="text" type="Text"/>
+<var name="aNode" type="Node"/>
+<var name="ownerDocument" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="system" type="DOMString"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="aNewDoc" href="staffNS" willBeModified="true"/>
+<createTextNode obj="aNewDoc" var="text" data='"this is text data"'/>
+<importNode obj="doc" var="aNode" importedNode="text" deep="false"/>
+<ownerDocument obj="aNode" var="ownerDocument"/>
+<assertNotNull actual="ownerDocument" id="ownerDocumentNotNull"/>
+<doctype obj="ownerDocument" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="system"/>
+<assertURIEquals actual="system" file='"staffNS.dtd"' id="systemId"/>
+<nodeValue obj="aNode" var="value"/>
+<assertEquals actual="value" expected='"this is text data"' id="nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode16.xml b/test/testcases/tests/level2/core/importNode16.xml
new file mode 100644
index 0000000..b0522c4
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode16.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode16">
+<metadata>
+<title>importNode16</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should raise NOT_SUPPORTED_ERR DOMException if
+ the type of node being imported is DocumentType.
+
+ Retrieve document staff.xml and get its type.
+ Invoke method importNode(importedNode,deep) where importedNode
+ contains the document type of the staff.xml.
+ Method should raise NOT_SUPPORT_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NOT_SUPPORTED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Core-Document-importNode')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_SUPPORTED_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="anotherDoc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="node" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="anotherDoc" href="staffNS" willBeModified="true"/>
+<doctype obj="anotherDoc" var="docType"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<importNode obj="doc" var="node" importedNode="docType" deep="false"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/importNode17.xml b/test/testcases/tests/level2/core/importNode17.xml
new file mode 100644
index 0000000..954735f
--- /dev/null
+++ b/test/testcases/tests/level2/core/importNode17.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="importNode17">
+<metadata>
+<title>importNode17</title>
+<creator>NIST</creator>
+<description>
+ The "importNode(importedNode,deep)" method for a
+ Document should raise NOT_SUPPORTED_ERR DOMException if
+ the type of node being imported is Document.
+
+ Retrieve staff.xml document.
+ Invoke method importNode(importedNode,deep) where importedNode
+ contains staff.xml and deep is true.
+ Method should raise NOT_SUPPORTED_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NOT_SUPPORTED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Core-Document-importNode"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Core-Document-importNode')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_SUPPORTED_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="anotherDoc" type="Document"/>
+<var name="node" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="anotherDoc" href="staffNS" willBeModified="true"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<importNode obj="doc" var="node" importedNode="anotherDoc" deep="false"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/internalSubset01.xml b/test/testcases/tests/level2/core/internalSubset01.xml
new file mode 100644
index 0000000..59902c5
--- /dev/null
+++ b/test/testcases/tests/level2/core/internalSubset01.xml
@@ -0,0 +1,42 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="internalSubset01">
+<metadata>
+<title>internalSubset01</title>
+<creator>NIST</creator>
+<description>
+ The "getInternalSubset()" method returns
+ the internal subset as a string or null if there is none.
+ This does not contain the delimiting brackets.
+
+ Retrieve the documenttype.
+ Apply the "getInternalSubset()" method. Null is returned since there
+ is not an internal subset.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-07-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-Core-DocType-internalSubset"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="internal" type="DOMString"/>
+<load var="doc" href="staff2" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<internalSubset obj="docType" var="internal"/>
+<assertNull actual="internal" id="internalSubsetNull"/>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported01.xml b/test/testcases/tests/level2/core/isSupported01.xml
new file mode 100644
index 0000000..9d31d1f
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported01.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported01">
+<metadata>
+<title>isSupported01</title>
+<creator>NIST</creator>
+<description>
+ The "feature" parameter in the
+ isSupported(feature,version)" method is the name
+ of the feature and the version is the version number of the
+ feature to test. XXX is NOT a legal value for the feature parameter.
+ The method should return "false" since XXX is not a valid feature.
+
+ Retrieve the root node of the DOM document by invoking
+ the "getDocumentElement()" method. This should create a
+ node object on which the "isSupported(feature,version)"
+ method is invoked with "feature" equal to "XXX" and version to "1.0".
+ The method should return a boolean "false" since XXX is not a valid feature.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<isSupported obj="rootNode" feature="&quot;XXX&quot;" version="&quot;1.0&quot;" var="state"/>
+<assertFalse actual="state" id="throw_False"/>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported02.xml b/test/testcases/tests/level2/core/isSupported02.xml
new file mode 100644
index 0000000..3d7444d
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported02.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported02">
+<metadata>
+<title>isSupported02</title>
+<creator>NIST</creator>
+<description>
+ The "feature" parameter in the
+ isSupported(feature,version)" method is the name
+ of the feature and the version is the version number of the
+ feature to test. XML is a legal value for the feature parameter.
+ The method should return "false" since 9.0 is not a valid version.
+
+ Retrieve the root node of the DOM document by invoking
+ the "getDocumentElement()" method. This should create a
+ node object on which the "isSupported(feature,version)"
+ method is invoked with "feature" equal to "XML" and version to "9.0".
+ The method should return a boolean "false" since 9.0 is not a valid version.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<isSupported obj="rootNode" feature="&quot;XML&quot;" version="&quot;9.0&quot;" var="state"/>
+<assertFalse actual="state" id="throw_False"/>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported04.xml b/test/testcases/tests/level2/core/isSupported04.xml
new file mode 100644
index 0000000..18dfd28
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported04.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported04">
+<metadata>
+<title>isSupported04</title>
+<creator>NIST</creator>
+<description>
+ The "feature" parameter in the
+ isSupported(feature,version)" method is the name
+ of the feature and the version is the version number of the
+ feature to test. XML is a legal value for the feature parameter
+ (Test for xml, lower case).
+ Legal values for the version parameter are 1.0 and 2.0
+ (Test for 1.0).
+
+ Retrieve the root node of the DOM document by invoking
+ the "getDocumentElement()" method. This should create a
+ node object on which the "isSupported(feature,version)"
+ method is invoked with "feature" equal to "xml" and the version equal to 1.0.
+ The method should return a boolean "true".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<isSupported obj="rootNode" feature="&quot;xml&quot;" version="&quot;1.0&quot;" var="state"/>
+<assertTrue actual="state" id="throw_True"/>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported05.xml b/test/testcases/tests/level2/core/isSupported05.xml
new file mode 100644
index 0000000..0339f8f
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported05.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported05">
+<metadata>
+<title>isSupported05</title>
+<creator>NIST</creator>
+<description>
+ The "feature" parameter in the
+ isSupported(feature,version)" method is the name
+ of the feature and the version is the version number of the
+ feature to test. Core is a legal value for the feature parameter
+ (Test for core, lower case).
+ Legal values for the version parameter are 1.0 and 2.0
+ (Test for 2.0).
+
+ Retrieve the root node of the DOM document by invoking
+ the "getDocumentElement()" method. This should create a
+ node object on which the "isSupported(feature,version)"
+ method is invoked with "feature" equal to "core" and the version equal to 2.0.
+ The method should return a boolean "true".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<isSupported obj="rootNode" feature="&quot;core&quot;" version="&quot;2.0&quot;" var="state"/>
+<assertTrue actual="state" id="throw_True"/>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported06.xml b/test/testcases/tests/level2/core/isSupported06.xml
new file mode 100644
index 0000000..23a2063
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported06.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported06">
+<metadata>
+<title>isSupported06</title>
+<creator>NIST</creator>
+<description>
+ The "feature" parameter in the
+ isSupported(feature,version)" method is the name
+ of the feature and the version is the version number of the
+ feature to test. XML is a legal value for the feature parameter
+ (Test for xml, lower case).
+ Legal values for the version parameter are 1.0 and 2.0
+ (Test for 2.0).
+
+ Retrieve the root node of the DOM document by invoking
+ the "getDocumentElement()" method. This should create a
+ node object on which the "isSupported(feature,version)"
+ method is invoked with "feature" equal to "xml" and the version equal to 2.0.
+ The method should return a boolean "true".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<isSupported obj="rootNode" feature="&quot;xml&quot;" version="&quot;2.0&quot;" var="state"/>
+<assertTrue actual="state" id="throw_True"/>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported07.xml b/test/testcases/tests/level2/core/isSupported07.xml
new file mode 100644
index 0000000..21f8ccb
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported07.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported07">
+<metadata>
+<title>isSupported07</title>
+<creator>NIST</creator>
+<description>
+ The "feature" parameter in the
+ isSupported(feature,version)" method is the name
+ of the feature and the version is the version number of the
+ feature to test. XML is a legal value for the feature parameter
+ (Test for XML).
+ If the version is not specified, supporting any version of the
+ method to return true.
+
+ Retrieve the root node of the DOM document by invoking
+ the "getDocumentElement()" method. This should create a
+ node object on which the "isSupported(feature,version)"
+ method is invoked with "feature" equal to "XML" and the version equal blank.
+ The method should return a boolean "true".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<isSupported obj="rootNode" feature="&quot;XML&quot;" version="&quot;&quot;" var="state"/>
+<assertTrue actual="state" id="throw_True"/>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported09.xml b/test/testcases/tests/level2/core/isSupported09.xml
new file mode 100644
index 0000000..f7c4685
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported09.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported09">
+<metadata>
+<title>isSupported09</title>
+<creator>NIST</creator>
+<description>
+ The "feature" parameter in the
+ isSupported(feature,version)" method is the name
+ of the feature and the version is the version number of the
+ feature to test. XML is a legal value for the feature parameter
+ (Test for XML, upper case).
+ Legal values for the version parameter are 1.0 and 2.0
+ (Test for 1.0).
+
+ Retrieve the root node of the DOM document by invoking
+ the "getDocumentElement()" method. This should create a
+ node object on which the "isSupported(feature,version)"
+ method is invoked with "feature" equal to "XML" and the version equal to 1.0.
+ The method should return a boolean "true".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<isSupported obj="rootNode" feature="&quot;XML&quot;" version="&quot;1.0&quot;" var="state"/>
+<assertTrue actual="state" id="throw_True"/>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported10.xml b/test/testcases/tests/level2/core/isSupported10.xml
new file mode 100644
index 0000000..8cfc69d
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported10.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported10">
+<metadata>
+<title>isSupported10</title>
+<creator>NIST</creator>
+<description>
+ The "feature" parameter in the
+ isSupported(feature,version)" method is the name
+ of the feature and the version is the version number of the
+ feature to test. CORE is a legal value for the feature parameter
+ (Test for CORE, upper case).
+ Legal values for the version parameter are 1.0 and 2.0
+ (Test for 2.0).
+
+ Retrieve the root node of the DOM document by invoking
+ the "getDocumentElement()" method. This should create a
+ node object on which the "isSupported(feature,version)"
+ method is invoked with "feature" equal to "CORE" and the version equal to 2.0.
+ The method should return a boolean "true".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<isSupported obj="rootNode" feature="&quot;CORE&quot;" version="&quot;2.0&quot;" var="state"/>
+<assertTrue actual="state" id="throw_True"/>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported11.xml b/test/testcases/tests/level2/core/isSupported11.xml
new file mode 100644
index 0000000..fb9f90c
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported11.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported11">
+<metadata>
+<title>isSupported11</title>
+<creator>NIST</creator>
+<description>
+ The "feature" parameter in the
+ isSupported(feature,version)" method is the name
+ of the feature and the version is the version number of the
+ feature to test. XML is a legal value for the feature parameter
+ (Test for XML, upper case).
+ Legal values for the version parameter are 1.0 and 2.0
+ (Test for 2.0).
+
+ Retrieve the root node of the DOM document by invoking
+ the "getDocumentElement()" method. This should create a
+ node object on which the "isSupported(feature,version)"
+ method is invoked with "feature" equal to "XML" and the version equal to 2.0.
+ The method should return a boolean "true".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<isSupported obj="rootNode" feature="&quot;XML&quot;" version="&quot;2.0&quot;" var="state"/>
+<assertTrue actual="state" id="throw_True"/>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported12.xml b/test/testcases/tests/level2/core/isSupported12.xml
new file mode 100644
index 0000000..11d737e
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported12.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported12">
+<metadata>
+<title>isSupported12</title>
+<creator>NIST</creator>
+<description>
+ The "feature" parameter in the
+ isSupported(feature,version)" method is the name
+ of the feature and the version is the version number of the
+ feature to test. CORE is a legal value for the feature parameter
+ (Test for CORE, upper case).
+ Legal values for the version parameter are 1.0 and 2.0
+ (Test for 1.0).
+
+ Retrieve the root node of the DOM document by invoking
+ the "getDocumentElement()" method. This should create a
+ node object on which the "isSupported(feature,version)"
+ method is invoked with "feature" equal to "CORE" and the version equal to 1.0.
+ The method should return a boolean "true".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="features" type="List">
+<member>"Core"</member>
+<member>"XML"</member>
+<member>"HTML"</member>
+<member>"Views"</member>
+<member>"StyleSheets"</member>
+<member>"CSS"</member>
+<member>"CSS2"</member>
+<member>"Events"</member>
+<member>"UIEvents"</member>
+<member>"MouseEvents"</member>
+<member>"MutationEvents"</member>
+<member>"HTMLEvents"</member>
+<member>"Range"</member>
+<member>"Traversal"</member>
+<member>"bogus.bogus.bogus"</member>
+</var>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="featureElement" type="DOMString"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<!--- All XML implementations must support core -->
+<isSupported obj="rootNode" feature='"Core"' version='"2.0"' var="state"/>
+<assertTrue actual="state" id="Core2"/>
+<for-each collection="features" member="featureElement">
+<isSupported obj="rootNode" feature="featureElement" version='"1.0"' var="state"/>
+</for-each>
+<for-each collection="features" member="featureElement">
+<isSupported obj="rootNode" feature="featureElement" version='"2.0"' var="state"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported13.xml b/test/testcases/tests/level2/core/isSupported13.xml
new file mode 100644
index 0000000..6327f17
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported13.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported13">
+<metadata>
+<title>isSupported13</title>
+<creator>Curt Arnold</creator>
+<description>
+Calls isSupported("Core","") should return true for all implementations (by extension of core-14).
+</description>
+<date qualifier="created">2001-11-27</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/2000/11/DOM-Level-2-errata#core-14"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="state" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<isSupported obj="rootNode" feature='"Core"' version='""' var="state"/>
+<assertTrue actual="state" id="Core"/>
+</test>
diff --git a/test/testcases/tests/level2/core/isSupported14.xml b/test/testcases/tests/level2/core/isSupported14.xml
new file mode 100644
index 0000000..eef6601
--- /dev/null
+++ b/test/testcases/tests/level2/core/isSupported14.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="isSupported14">
+<metadata>
+<title>isSupported14</title>
+<creator>Curt Arnold</creator>
+<description>
+Calls isSupported("Core",null) should return true for all implementations (by extension of core-14).
+</description>
+<date qualifier="created">2001-11-27</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/2000/11/DOM-Level-2-errata#core-14"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="rootNode" type="Node"/>
+<var name="state" type="boolean"/>
+<var name="nullString" type="DOMString" isNull="true"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="rootNode"/>
+<isSupported obj="rootNode" feature='"Core"' version="nullString" var="state"/>
+<assertTrue actual="state" id="Core"/>
+</test>
diff --git a/test/testcases/tests/level2/core/localName01.xml b/test/testcases/tests/level2/core/localName01.xml
new file mode 100644
index 0000000..053feb4
--- /dev/null
+++ b/test/testcases/tests/level2/core/localName01.xml
@@ -0,0 +1,50 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="localName01">
+<metadata>
+<title>localName01</title>
+<creator>NIST</creator>
+<description>
+ The "getLocalName()" method for a Node
+ returns the local part of the qualified name of this node,
+ and for nodes of any type other than ELEMENT_NODE and ATTRIBUTE_NODE
+ and nodes created with a DOM Level 1 method, this is null.
+
+ Retrieve the first emp:address node and get the attributes of this node."
+ Then apply the getLocalName() method to the emp:domestic attribute.
+ The method should return "domestic".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSLocalN"/>
+</metadata>
+<!-- this test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="Attr"/>
+<var name="localName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"emp:address"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<getAttributeNode obj="testAddr" name='"emp:domestic"' var="addrAttr"/>
+<localName obj="addrAttr" var="localName"/>
+<assertEquals actual="localName" expected='"domestic"' id="localName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/localName02.xml b/test/testcases/tests/level2/core/localName02.xml
new file mode 100644
index 0000000..8eba945
--- /dev/null
+++ b/test/testcases/tests/level2/core/localName02.xml
@@ -0,0 +1,43 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="localName02">
+<metadata>
+<title>localName02</title>
+<creator>NIST</creator>
+<description>
+ The "getLocalName()" method for a Node
+ returns the local part of the qualified name of this node,
+ and for nodes of any type other than ELEMENT_NODE and ATTRIBUTE_NODE
+ and nodes created with a DOM Level 1 method, this is null.
+
+ Create an new Element with the createElement() method.
+ Invoke the "getLocalName()" method on the newly created element
+ node will cause "null" to be returned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSLocalN"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="createdNode" type="Node"/>
+<var name="localName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createElement obj="doc" tagName="&quot;test:employee&quot;" var="createdNode"/>
+<localName obj="createdNode" var="localName"/>
+<assertNull actual="localName" id="localNameNull"/>
+</test>
diff --git a/test/testcases/tests/level2/core/localName03.xml b/test/testcases/tests/level2/core/localName03.xml
new file mode 100644
index 0000000..42fcebe
--- /dev/null
+++ b/test/testcases/tests/level2/core/localName03.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="localName03">
+<metadata>
+<title>localName03</title>
+<creator>NIST</creator>
+<description>
+ The "getLocalName()" method for a Node
+ returns the local part of the qualified name of this node,
+ and for nodes of any type other than ELEMENT_NODE and ATTRIBUTE_NODE
+ and nodes created with a DOM Level 1 method, this is null.
+
+ Retrieve the first employeeId node and get the first child of this node.
+ Since the first child is Text node invoking the "getLocalName()"
+ method will cause "null" to be returned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSLocalN"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="textNode" type="Node"/>
+<var name="localName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employeeId"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<firstChild interface="Node" obj="testEmployee" var="textNode"/>
+<localName obj="textNode" var="localName"/>
+<assertNull actual="localName" id="textNodeLocalName"/>
+</test>
diff --git a/test/testcases/tests/level2/core/localName04.xml b/test/testcases/tests/level2/core/localName04.xml
new file mode 100644
index 0000000..a0016ee
--- /dev/null
+++ b/test/testcases/tests/level2/core/localName04.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="localName04">
+<metadata>
+<title>localName04</title>
+<creator>NIST</creator>
+<description>
+ The "getLocalName()" method for a Node
+ returns the local part of the qualified name of this node,
+ and for nodes of any type other than ELEMENT_NODE and ATTRIBUTE_NODE
+ and nodes created with a DOM Level 1 method, this is null.
+
+ Retrieve the first employee node and invoke the "getLocalName()"
+ method. The method should return "employee".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSLocalN"/>
+</metadata>
+<!-- this test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="employeeLocalName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<localName obj="testEmployee" var="employeeLocalName"/>
+<assertEquals actual="employeeLocalName" expected='"employee"' id="lname" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/metadata.xml b/test/testcases/tests/level2/core/metadata.xml
new file mode 100644
index 0000000..63bac43
--- /dev/null
+++ b/test/testcases/tests/level2/core/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+Copyright (c) 2001 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 metadata SYSTEM "dom2.dtd">
+
+<!-- This file contains additional metadata about DOM L2 Core tests.
+ Allowing additional documentation without modifying the tests themselves. -->
+<metadata xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2">
+</metadata>
diff --git a/test/testcases/tests/level2/core/namednodemapgetnameditemns01.xml b/test/testcases/tests/level2/core/namednodemapgetnameditemns01.xml
new file mode 100644
index 0000000..8cd23ff
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapgetnameditemns01.xml
@@ -0,0 +1,54 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapgetnameditemns01">
+<metadata>
+<title>namednodemapgetnameditemns01</title>
+<creator>IBM</creator>
+<description>
+ Using the method getNamedItemNS, retreive the entity "ent1" and notation "notation1"
+ from a NamedNodeMap of this DocumentTypes entities and notations.
+ Both should be null since entities and notations are not namespaced.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getNamedItemNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=407"/>
+<subject resource="http://lists.w3.org/Archives/Member/w3c-dom-ig/2003Nov/0016.html"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="notation" type="Notation"/>
+<var name="entityName" type="DOMString"/>
+<var name="notationName" type="DOMString"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entities" obj="docType"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<notations var="notations" obj="docType"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItemNS var="entity" obj="entities" namespaceURI="nullNS" localName='"ent1"'/>
+<assertNull actual="entity" id="entityNull"/>
+<getNamedItemNS var="notation" obj="notations" namespaceURI="nullNS" localName='"notation1"'/>
+<assertNull actual="notation" id="notationNull"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapgetnameditemns02.xml b/test/testcases/tests/level2/core/namednodemapgetnameditemns02.xml
new file mode 100644
index 0000000..3c778d3
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapgetnameditemns02.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapgetnameditemns02">
+<metadata>
+<title>namednodemapgetnameditemns02</title>
+<creator>IBM</creator>
+<description>
+ The method getNamedItemNS retrieves a node specified by local name and namespace URI.
+
+ Using the method getNamedItemNS, retreive an attribute node having namespaceURI=http://www.nist.gov
+ and localName=domestic, from a NamedNodeMap of attribute nodes, for the second element
+ whose namespaceURI=http://www.nist.gov and localName=address. Verify if the attr node
+ has been retreived successfully by checking its nodeName atttribute.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getNamedItemNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Node"/>
+<var name="attribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"http://www.nist.gov"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<getNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.nist.gov"' localName='"domestic"'/>
+<nodeName var="attrName" obj="attribute"/>
+<assertEquals actual="attrName" expected='"emp:domestic"' id="namednodemapgetnameditemns02" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapgetnameditemns03.xml b/test/testcases/tests/level2/core/namednodemapgetnameditemns03.xml
new file mode 100644
index 0000000..6dd138b
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapgetnameditemns03.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapgetnameditemns03">
+<metadata>
+<title>namednodemapgetnameditemns03</title>
+<creator>IBM</creator>
+<description>
+ The method getNamedItemNS retrieves a node specified by local name and namespace URI.
+
+ Create a new Element node and add 2 new attribute nodes having the same local name but different
+ namespace names and namespace prefixes to it. Using the getNamedItemNS retreive the second attribute node.
+ Verify if the attr node has been retreived successfully by checking its nodeName atttribute.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getNamedItemNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Node"/>
+<var name="attribute" type="Attr"/>
+<var name="newAttr1" type="Attr"/>
+<var name="newAttr2" type="Attr"/>
+<var name="newAttribute" type="Attr"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"root"'/>
+<createAttributeNS var="newAttr1" obj="doc" namespaceURI='"http://www.w3.org/DOM/L1"' qualifiedName='"L1:att"'/>
+<setAttributeNodeNS var="newAttribute" obj="element" newAttr="newAttr1"/>
+<createAttributeNS var="newAttr2" obj="doc" namespaceURI='"http://www.w3.org/DOM/L2"' qualifiedName='"L2:att"'/>
+<setAttributeNodeNS var="newAttribute" obj="element" newAttr="newAttr2"/>
+<attributes var="attributes" obj="element"/>
+<getNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.w3.org/DOM/L2"' localName='"att"'/>
+<nodeName var="attrName" obj="attribute"/>
+<assertEquals actual="attrName" expected='"L2:att"' id="namednodemapgetnameditemns03" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapgetnameditemns04.xml b/test/testcases/tests/level2/core/namednodemapgetnameditemns04.xml
new file mode 100644
index 0000000..16eac08
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapgetnameditemns04.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapgetnameditemns04">
+<metadata>
+<title>namednodemapgetnameditemns04</title>
+<creator>IBM</creator>
+<description>
+ The method getNamedItemNS retrieves a node specified by local name and namespace URI.
+
+ Retreive the second address element node having localName=adrress.
+ Create a new attribute node having the same name as an existing node but different namespaceURI
+ and add it to this element. Using the getNamedItemNS retreive the newly created attribute
+ node from a nodemap of attributes of the retreive element node.
+ Verify if the attr node has been retreived successfully by checking its nodeName atttribute.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getNamedItemNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Element"/>
+<var name="attribute" type="Attr"/>
+<var name="newAttr1" type="Attr"/>
+<var name="newAttribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"*"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<createAttributeNS var="newAttr1" obj="doc" namespaceURI='"http://www.w3.org/DOM/L1"' qualifiedName='"street"'/>
+<setAttributeNodeNS var="newAttribute" obj="element" newAttr="newAttr1"/>
+<attributes var="attributes" obj="element"/>
+<getNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.w3.org/DOM/L1"' localName='"street"'/>
+<nodeName var="attrName" obj="attribute"/>
+<assertEquals actual="attrName" expected='"street"' id="namednodemapgetnameditemns04" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapgetnameditemns05.xml b/test/testcases/tests/level2/core/namednodemapgetnameditemns05.xml
new file mode 100644
index 0000000..402f464
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapgetnameditemns05.xml
@@ -0,0 +1,46 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapgetnameditemns05">
+<metadata>
+<title>namednodemapgetnameditemns05</title>
+<creator>IBM</creator>
+<description>
+ The method getNamedItemNS retrieves a node specified by local name and namespace URI.
+
+ Retreieve the second address element and its attribute into a named node map.
+ Try retreiving the street attribute from the namednodemap using the
+ default namespace uri and the street attribute name. Since the default
+ namespace doesnot apply to attributes this should return null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getNamedItemNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Node"/>
+<var name="attribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"*"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<getNamedItemNS var="attribute" obj="attributes" namespaceURI='"*"' localName='"street"'/>
+<assertNull actual="attribute" id="namednodemapgetnameditemns05"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapgetnameditemns06.xml b/test/testcases/tests/level2/core/namednodemapgetnameditemns06.xml
new file mode 100644
index 0000000..d72ffef
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapgetnameditemns06.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapgetnameditemns06">
+<metadata>
+<title>namednodemapgetnameditemns06</title>
+<creator>IBM</creator>
+<description>
+ Retreive the second address element node having localName=adrress. Retreive the attributes
+ of this element into 2 nodemaps. Create a new attribute node and add it to this element.
+ Since NamedNodeMaps are live each one should get updated, using the getNamedItemNS retreive
+ the newly created attribute from each node map.
+ Verify if the attr node has been retreived successfully by checking its nodeName atttribute.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getNamedItemNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributesMap1" type="NamedNodeMap"/>
+<var name="attributesMap2" type="NamedNodeMap"/>
+<var name="element" type="Element"/>
+<var name="attribute" type="Attr"/>
+<var name="newAttr1" type="Attr"/>
+<var name="newAttribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"*"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributesMap1" obj="element"/>
+<attributes var="attributesMap2" obj="element"/>
+<createAttributeNS var="newAttr1" obj="doc" namespaceURI='"http://www.w3.org/DOM/L1"' qualifiedName='"street"'/>
+<setAttributeNodeNS var="newAttribute" obj="element" newAttr="newAttr1"/>
+<getNamedItemNS var="attribute" obj="attributesMap1" namespaceURI='"http://www.w3.org/DOM/L1"' localName='"street"'/>
+<nodeName var="attrName" obj="attribute"/>
+<assertEquals actual="attrName" expected='"street"' id="namednodemapgetnameditemnsMap106" ignoreCase="false"/>
+<getNamedItemNS var="attribute" obj="attributesMap2" namespaceURI='"http://www.w3.org/DOM/L1"' localName='"street"'/>
+<nodeName var="attrName" obj="attribute"/>
+<assertEquals actual="attrName" expected='"street"' id="namednodemapgetnameditemnsMap206" ignoreCase="false"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/namednodemapremovenameditemns01.xml b/test/testcases/tests/level2/core/namednodemapremovenameditemns01.xml
new file mode 100644
index 0000000..c16ccf4
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapremovenameditemns01.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapremovenameditemns01">
+<metadata>
+<title>namednodemapremovenameditemns01</title>
+<creator>IBM</creator>
+<description>
+ The method removeNamedItemNS removes a node specified by local name and namespace
+
+ Retreive an attribute node and then remove from the NamedNodeMap. Verify if the attribute
+ node was actually remove from the node map.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D58B193"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Node"/>
+<var name="attribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"http://www.nist.gov"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<removeNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.nist.gov"' localName='"domestic"'/>
+<getNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.nist.gov"' localName='"domestic"'/>
+<assertNull actual="attribute" id="namednodemapremovenameditemns01"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapremovenameditemns02.xml b/test/testcases/tests/level2/core/namednodemapremovenameditemns02.xml
new file mode 100644
index 0000000..3ba6e08
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapremovenameditemns02.xml
@@ -0,0 +1,55 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapremovenameditemns02">
+<metadata>
+<title>namednodemapremovenameditemns02</title>
+<creator>IBM</creator>
+<description>
+ The method removeNamedItemNS removes a node specified by local name and namespace
+ A removed attribute may be known to have a default value when this map contains the
+ attributes attached to an element, as returned by the attributes attribute of the Node
+ interface. If so, an attribute immediately appears containing the default value as well
+ as the corresponding namespace URI, local name, and prefix when applicable.
+
+ Retreive a default attribute node. Remove it from the NodeMap. Check if a new one immediately
+ appears containing the default value.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D58B193"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Node"/>
+<var name="attribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="attrValue" type="DOMString"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" localName='"employee"' namespaceURI='"http://www.nist.gov"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<removeNamedItemNS var="attribute" obj="attributes" namespaceURI="nullNS" localName='"defaultAttr"'/>
+<getNamedItemNS var="attribute" obj="attributes" namespaceURI="nullNS" localName='"defaultAttr"'/>
+<nodeValue var="attrValue" obj="attribute"/>
+<assertNotNull actual="attribute" id="namednodemapremovenameditemns02"/>
+<assertEquals actual="attrValue" expected='"defaultVal"' id="namednodemapremovenameditemns02_attrValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapremovenameditemns03.xml b/test/testcases/tests/level2/core/namednodemapremovenameditemns03.xml
new file mode 100644
index 0000000..0eae40f
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapremovenameditemns03.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapremovenameditemns03">
+<metadata>
+<title>namednodemapremovenameditemns03</title>
+<creator>IBM</creator>
+<description>
+ The method removeNamedItemNS removes a node specified by local name and namespace
+
+ Create a new element node and add 2 new attribute nodes to it that have the same localName
+ but different namespaceURI's. Remove the first attribute node from the namedNodeMap of the
+ new element node and check to see that the second attribute still exists.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D58B193"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Node"/>
+<var name="attribute" type="Attr"/>
+<var name="newAttribute" type="Attr"/>
+<var name="attribute1" type="Attr"/>
+<var name="attribute2" type="Attr"/>
+<var name="nodeName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"root"'/>
+<createAttributeNS var="attribute1" obj="doc" namespaceURI='"http://www.w3.org/DOM/L1"' qualifiedName='"L1:att"'/>
+<setAttributeNodeNS var="newAttribute" obj="element" newAttr="attribute1"/>
+<createAttributeNS var="attribute2" obj="doc" namespaceURI='"http://www.w3.org/DOM/L2"' qualifiedName='"L2:att"'/>
+<setAttributeNodeNS var="newAttribute" obj="element" newAttr="attribute2"/>
+<attributes var="attributes" obj="element"/>
+<removeNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.w3.org/DOM/L1"' localName='"att"'/>
+<getNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.w3.org/DOM/L2"' localName='"att"'/>
+<nodeName var="nodeName" obj="attribute"/>
+<assertEquals actual="nodeName" expected='"L2:att"' id="namednodemapremovenameditemns02" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapremovenameditemns04.xml b/test/testcases/tests/level2/core/namednodemapremovenameditemns04.xml
new file mode 100644
index 0000000..c1c3fc8
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapremovenameditemns04.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapremovenameditemns04">
+<metadata>
+<title>namednodemapremovenameditemns04</title>
+<creator>IBM</creator>
+<description>
+ The method removeNamedItemNS removes a node specified by local name and namespace
+
+ Attempt to remove the xmlns and dmstc attributes of the first element node with the localName
+ employee. Verify if the 2 attributes were successfully removed.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D58B193"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Node"/>
+<var name="attribute" type="Attr"/>
+<var name="attributeRemoved" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"*"' localName='"employee"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<removeNamedItemNS var="attributeRemoved" obj="attributes" namespaceURI='"http://www.w3.org/2000/xmlns/"' localName='"xmlns"'/>
+<getNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.w3.org/2000/xmlns/"' localName='"xmlns"'/>
+<assertNull actual="attribute" id="namednodemapremovenameditemns04_1"/>
+<removeNamedItemNS var="attributeRemoved" obj="attributes" namespaceURI='"http://www.w3.org/2000/xmlns/"' localName='"dmstc"'/>
+<getNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.w3.org/2000/xmlns/"' localName='"dmstc"'/>
+<assertNull actual="attribute" id="namednodemapremovenameditemns04_2"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapremovenameditemns05.xml b/test/testcases/tests/level2/core/namednodemapremovenameditemns05.xml
new file mode 100644
index 0000000..70ac0e4
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapremovenameditemns05.xml
@@ -0,0 +1,63 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapremovenameditemns05">
+<metadata>
+<title>namednodemapremovenameditemns05</title>
+<creator>IBM</creator>
+<description>
+ Retreive an entity and notation node and remove the first notation from the
+ entity node map and first entity node from the notation map. Since both these
+ maps are readonly, a NO_MODIFICATION_ALLOWED_ERR should be raised.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=407"/>
+<subject resource="http://lists.w3.org/Archives/Member/w3c-dom-ig/2003Nov/0016.html"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="removedNode" type="Node"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entities" obj="docType"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<notations var="notations" obj="docType"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<try>
+ <removeNamedItemNS var="removedNode" obj="entities" namespaceURI="nullNS" localName='"ent1"'/>
+ <fail id="entity_throw_DOMException"/>
+ <catch>
+ <DOMException code="NOT_FOUND_ERR"/>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ </catch>
+</try>
+<try>
+ <removeNamedItemNS var="removedNode" obj="notations" namespaceURI="nullNS" localName='"notation1"'/>
+ <fail id="notation_throw_DOMException"/>
+ <catch>
+ <DOMException code="NOT_FOUND_ERR"/>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapremovenameditemns06.xml b/test/testcases/tests/level2/core/namednodemapremovenameditemns06.xml
new file mode 100644
index 0000000..1333e6d
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapremovenameditemns06.xml
@@ -0,0 +1,49 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapremovenameditemns06">
+<metadata>
+<title>namednodemapremovenameditemns06</title>
+<creator>IBM</creator>
+<description>
+ The method removeNamedItemNS removes a node using its namespaceURI and localName and
+ raises a NOT_FOUND_ERR if there is no node with the specified namespaceURI and
+ localName in this map
+
+ Retreive an attribute node into a namednodemap. While removing it from the map specify
+ an incorrect namespaceURI. This should raise a NOT_FOUND_ERR.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D58B193"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Node"/>
+<var name="attribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" localName='"employee"' namespaceURI='"http://www.nist.gov"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.Nist.gov"' localName='"domestic"'/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapremovenameditemns07.xml b/test/testcases/tests/level2/core/namednodemapremovenameditemns07.xml
new file mode 100644
index 0000000..267c2c9
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapremovenameditemns07.xml
@@ -0,0 +1,49 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapremovenameditemns07">
+<metadata>
+<title>namednodemapremovenameditemns07</title>
+<creator>IBM</creator>
+<description>
+ The method removeNamedItemNS removes a node using its namespaceURI and localName and
+ raises a NOT_FOUND_ERR if there is no node with the specified namespaceURI and
+ localName in this map
+
+ Retreive an attribute node from a namednodemap. While removing it from the map specify
+ an incorrect localName. This should raise a NOT_FOUND_ERR.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D58B193"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Node"/>
+<var name="attribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" localName='"employee"' namespaceURI='"http://www.nist.gov"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.nist.gov"' localName='"domestic"'/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapremovenameditemns08.xml b/test/testcases/tests/level2/core/namednodemapremovenameditemns08.xml
new file mode 100644
index 0000000..2fc5041
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapremovenameditemns08.xml
@@ -0,0 +1,52 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapremovenameditemns08">
+<metadata>
+<title>namednodemapremovenameditemns08</title>
+<creator>IBM</creator>
+<description>
+ The method removeNamedItemNS removes a node using its namespaceURI and localName and
+ raises a NOT_FOUND_ERR if there is no node with the specified namespaceURI and
+ localName in this map
+
+ Retreive an attribute node from a namednodemap. Remove the attribute node from the document
+ object. Since NamedNodeMaps are live it should also automatically get removed from
+ the node map. And so if an attempt is made to remove it using removeAttributeNS, this should
+ raise a NOT_FOUND_ERR.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D58B193"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Element"/>
+<var name="attribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" localName='"address"' namespaceURI='"http://www.nist.gov"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<removeAttributeNS obj="element" namespaceURI='"http://www.nist.gov"' localName='"domestic"'/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.nist.gov"' localName='"domestic"'/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapremovenameditemns09.xml b/test/testcases/tests/level2/core/namednodemapremovenameditemns09.xml
new file mode 100644
index 0000000..b903957
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapremovenameditemns09.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapremovenameditemns09">
+<metadata>
+<title>namednodemapremovenameditemns09</title>
+<creator>IBM</creator>
+<description>
+ The method removeNamedItemNS removes a node using its namespaceURI and localName and
+ raises a NOT_FOUND_ERR if there is no node with the specified namespaceURI and
+ localName in this map
+
+ Retreive an attribute node. Remove the attribute node from the node map.
+ Check the element object to ensure that the attribute node has been removed from it.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D58B193"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="newAttributes" type="NamedNodeMap"/>
+<var name="element" type="Element"/>
+<var name="attribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" localName='"address"' namespaceURI='"http://www.nist.gov"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<removeNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.nist.gov"' localName='"domestic"'/>
+<attributes var="newAttributes" obj="element"/>
+<getNamedItemNS var="attribute" obj="newAttributes" namespaceURI='"http://www.nist.gov"' localName='"domestic"'/>
+<assertNull actual="attribute" id="namednodemapremovenameditemns09"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapsetnameditemns01.xml b/test/testcases/tests/level2/core/namednodemapsetnameditemns01.xml
new file mode 100644
index 0000000..421d99e
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapsetnameditemns01.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapsetnameditemns01">
+<metadata>
+<title>namednodemapsetnameditemns01</title>
+<creator>IBM</creator>
+<description>
+ The method setNamedItemNS adds a node using its namespaceURI and localName. If a node with
+ that namespace URI and that local name is already present in this map, it is replaced
+ by the new one.
+
+ Retreive the first element whose localName is address and namespaceURI http://www.nist.gov",
+ and put its attributes into a named node map. Create a new attribute node and add it to this map.
+ Verify if the attr node was successfully added by checking the nodeName of the retreived atttribute.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getNamedItemNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Node"/>
+<var name="attribute" type="Attr"/>
+<var name="newAttribute" type="Attr"/>
+<var name="newAttr1" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"http://www.nist.gov"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<createAttributeNS var="newAttr1" obj="doc" namespaceURI='"http://www.w3.org/DOM/L1"' qualifiedName='"streets"'/>
+<setAttributeNodeNS var="newAttribute" obj="element" newAttr="newAttr1"/>
+<getNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.w3.org/DOM/L1"' localName='"streets"'/>
+<nodeName var="attrName" obj="attribute"/>
+<assertEquals actual="attrName" expected='"streets"' id="namednodemapsetnameditemns01" ignoreCase="false"/>
+</test>
+ \ No newline at end of file
diff --git a/test/testcases/tests/level2/core/namednodemapsetnameditemns02.xml b/test/testcases/tests/level2/core/namednodemapsetnameditemns02.xml
new file mode 100644
index 0000000..95198f5
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapsetnameditemns02.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapsetnameditemns02">
+<metadata>
+<title>namednodemapsetnameditemns02</title>
+<creator>IBM</creator>
+<description>
+ The method setNamedItemNS adds a node using its namespaceURI and localName. If a node with
+ that namespace URI and that local name is already present in this map, it is replaced
+ by the new one.
+
+ Create a new element and attribute Node and add the newly created attribute node to the elements
+ NamedNodeMap. Verify if the new attr node has been successfully added to the map by checking
+ the nodeName of the retreived atttribute from the list of attribute nodes in this map.
+
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="element" type="Element"/>
+<var name="attribute" type="Attr"/>
+<var name="attribute1" type="Attr"/>
+<var name="newNode" type="Node"/>
+<var name="attrName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"root"'/>
+<createAttributeNS var="attribute1" obj="doc" namespaceURI='"http://www.w3.org/DOM/L1"' qualifiedName='"L1:att"'/>
+<attributes var="attributes" obj="element"/>
+<setNamedItemNS var="newNode" obj="attributes" arg="attribute1"/>
+<getNamedItemNS var="attribute" obj="attributes" namespaceURI='"http://www.w3.org/DOM/L1"' localName='"att"'/>
+<nodeName var="attrName" obj="attribute"/>
+<assertEquals actual="attrName" expected='"L1:att"' id="namednodemapsetnameditemns02" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapsetnameditemns03.xml b/test/testcases/tests/level2/core/namednodemapsetnameditemns03.xml
new file mode 100644
index 0000000..c2dbf8d
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapsetnameditemns03.xml
@@ -0,0 +1,65 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapsetnameditemns03">
+<metadata>
+<title>namednodemapsetnameditemns03</title>
+<creator>IBM</creator>
+<description>
+ The method setNamedItemNS adds a node using its namespaceURI and localName and
+ raises a WRONG_DOCUMENT_ERR if arg was created from a different document than the
+ one that created this map.
+
+ Retreieve the second element whose local name is address and its attribute into a named node map.
+ Do the same for another document and retreive its street attribute. Call the setNamedItemNS
+ using the first namedNodeMap and the retreive street attribute of the second. This should
+ raise a WRONG_DOCUMENT_ERR.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=408"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docAlt" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="attributesAlt" type="NamedNodeMap"/>
+<var name="elementList" type="NodeList"/>
+<var name="elementListAlt" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="elementAlt" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="newNode" type="Node"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"*"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<load var="docAlt" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementListAlt" obj="docAlt" namespaceURI='"*"' localName='"address"' interface="Document"/>
+<item var="elementAlt" obj="elementListAlt" index="1" interface="NodeList"/>
+<attributes var="attributesAlt" obj="elementAlt"/>
+<getNamedItemNS var="attr" obj="attributesAlt" namespaceURI="nullNS" localName='"street"'/>
+<removeNamedItemNS var="newNode" obj="attributesAlt" namespaceURI="nullNS" localName='"street"'/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<setNamedItemNS var="newNode" obj="attributes" arg="attr"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapsetnameditemns04.xml b/test/testcases/tests/level2/core/namednodemapsetnameditemns04.xml
new file mode 100644
index 0000000..fce15ba
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapsetnameditemns04.xml
@@ -0,0 +1,60 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapsetnameditemns04">
+<metadata>
+<title>namednodemapsetnameditemns04</title>
+<creator>IBM</creator>
+<description>
+ The method setNamedItemNS adds a node using its namespaceURI and localName and
+ raises a WRONG_DOCUMENT_ERR if arg was created from a different document than the
+ one that created this map.
+
+ Retreieve the second element whose local name is address and its attribute into a named node map.
+ Create a new document and a new attribute node in it. Call the setNamedItemNS using the first
+ namedNodeMap and the new attribute node attribute of the new document. This should
+ raise a WRONG_DOCUMENT_ERR.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docAlt" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="elementList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="attrAlt" type="Attr"/>
+<var name="newNode" type="Node"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"*"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="docAlt" obj="domImpl" namespaceURI="nullNS" qualifiedName='"newDoc"' doctype="docType"/>
+<createAttributeNS var="attrAlt" obj="docAlt" namespaceURI="nullNS" qualifiedName='"street"'/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<setNamedItemNS var="newNode" obj="attributes" arg="attrAlt"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapsetnameditemns05.xml b/test/testcases/tests/level2/core/namednodemapsetnameditemns05.xml
new file mode 100644
index 0000000..287e525
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapsetnameditemns05.xml
@@ -0,0 +1,61 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapsetnameditemns05">
+<metadata>
+<title>namednodemapsetnameditemns05</title>
+<creator>IBM</creator>
+<description>
+ Retreive an entity and notation node and add the first notation to the
+ notation node map and first entity node to the entity map. Since both these
+ maps are for readonly node, a NO_MODIFICATION_ALLOWED_ERR should be raised.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=407"/>
+<subject resource="http://lists.w3.org/Archives/Member/w3c-dom-ig/2003Nov/0016.html"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="notation" type="Notation"/>
+<var name="newNode" type="Node"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entities" obj="docType"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<notations var="notations" obj="docType"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItem var="entity" obj="entities" name='"ent1"'/>
+<getNamedItem var="notation" obj="notations" name='"notation1"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_entities">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setNamedItemNS var="newNode" obj="entities" arg="entity"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_notations">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setNamedItemNS var="newNode" obj="notations" arg="notation"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapsetnameditemns06.xml b/test/testcases/tests/level2/core/namednodemapsetnameditemns06.xml
new file mode 100644
index 0000000..ddfb0c1
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapsetnameditemns06.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapsetnameditemns06">
+<metadata>
+<title>namednodemapsetnameditemns06</title>
+<creator>IBM</creator>
+<description>
+ Retreieve the first element whose localName is address and its attributes into a named node map.
+ Retreiving the domestic attribute from the namednodemap.
+ Retreieve the second element whose localName is address and its attributes into a named node map.
+ Invoke setNamedItemNS on the second NamedNodeMap specifying the first domestic attribute from
+ the first map. This should raise an INUSE_ATTRIBIUTE_ERR.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="elementList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="newNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"*"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<getNamedItemNS var="attr" obj="attributes" namespaceURI='"http://www.usa.com"' localName='"domestic"'/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<assertDOMException id="namednodemapsetnameditemns06">
+<INUSE_ATTRIBUTE_ERR>
+<setNamedItemNS var="newNode" obj="attributes" arg="attr"/>
+</INUSE_ATTRIBUTE_ERR>
+</assertDOMException>
+</test>
+
diff --git a/test/testcases/tests/level2/core/namednodemapsetnameditemns07.xml b/test/testcases/tests/level2/core/namednodemapsetnameditemns07.xml
new file mode 100644
index 0000000..bfa41ac
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapsetnameditemns07.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapsetnameditemns07">
+<metadata>
+<title>namednodemapsetnameditemns07</title>
+<creator>IBM</creator>
+<description>
+ The method setNamedItemNS adds a node using its namespaceURI and localName and
+ raises a INUSE_ATTRIBUTE_ERR Raised if arg is an Attr that is already an
+ attribute of another Element object.
+
+ Retreieve the attributes of first element whose localName is address into a named node map.
+ Retreive the attribute whose namespaceURI=http://www.usa.com and localName=domestic
+ from the NamedNodeMap. Retreieve the attributes of second element whose localName is address
+ into a named node map. Call the setNamedItemNS method on the second nodemap with the domestic
+ attribute that was retreived and removed from the first nodeMap as an argument.
+ Assuming that when an attribute is removed from a nodemap, it still remains in the domtree
+ his should raise an INUSE_ATTRIBIUTE_ERR.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="elementList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="newNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"*"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<getNamedItemNS var="attr" obj="attributes" namespaceURI='"http://www.usa.com"' localName='"domestic"'/>
+<!--
+<removeNamedItemNS obj="attributes" namespaceURI='"http://www.usa.com"' localName='"domestic"'/>;
+-->
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<assertDOMException id="namednodemapsetnameditemns07">
+<INUSE_ATTRIBUTE_ERR>
+<setNamedItemNS var="newNode" obj="attributes" arg="attr"/>
+</INUSE_ATTRIBUTE_ERR>
+</assertDOMException>
+</test>
+
diff --git a/test/testcases/tests/level2/core/namednodemapsetnameditemns08.xml b/test/testcases/tests/level2/core/namednodemapsetnameditemns08.xml
new file mode 100644
index 0000000..d0b0026
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapsetnameditemns08.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapsetnameditemns08">
+<metadata>
+<title>namednodemapsetnameditemns08</title>
+<creator>IBM</creator>
+<description>
+ raises a INUSE_ATTRIBUTE_ERR Raised if arg is an Attr that is already an
+ attribute of another Element object.
+
+ Retreieve the first element whose localName is address and its attributes into a named node map.
+ Retreiving the domestic attribute from the namednodemap. Retreieve the second element whose
+ localName is address and its attributes into a named node map. Invoke setNamedItemNS on the
+ second NamedNodeMap specifying the attribute from the first map.
+ This should raise an INUSE_ATTRIBIUTE_ERR.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="elementList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="newNode" type="Node"/>
+<!--
+<var name="attrCloned" type="Attr"/>
+-->
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"*"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<getNamedItemNS var="attr" obj="attributes" namespaceURI='"http://www.usa.com"' localName='"domestic"'/>
+<!--
+<cloneNode var="attrCloned" obj="attr" deep="true"/>
+-->
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<assertDOMException id="namednodemapsetnameditemns08">
+<INUSE_ATTRIBUTE_ERR>
+<setNamedItemNS var="newNode" obj="attributes" arg="attr"/>
+</INUSE_ATTRIBUTE_ERR>
+</assertDOMException>
+</test>
+
diff --git a/test/testcases/tests/level2/core/namednodemapsetnameditemns09.xml b/test/testcases/tests/level2/core/namednodemapsetnameditemns09.xml
new file mode 100644
index 0000000..6c1c445
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapsetnameditemns09.xml
@@ -0,0 +1,55 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapsetnameditemns09">
+<metadata>
+<title>namednodemapsetnameditemns09</title>
+<creator>IBM</creator>
+<description>
+ The method setNamedItemNS adds a node using its namespaceURI and localName and
+ raises a NO_MODIFICATION_ALLOWED_ERR if this map is readonly.
+
+ Create a new attribute node and attempt to add it to the nodemap of entities and notations
+ for this documenttype. This should reaise a NO_MODIFICATION_ALLOWED_ERR.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="newNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entities" obj="docType"/>
+<notations var="notations" obj="docType"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"test"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_entities">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setNamedItemNS var="newNode" obj="entities" arg="attr"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_notations">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setNamedItemNS var="newNode" obj="notations" arg="attr"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapsetnameditemns10.xml b/test/testcases/tests/level2/core/namednodemapsetnameditemns10.xml
new file mode 100644
index 0000000..328cb79
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapsetnameditemns10.xml
@@ -0,0 +1,59 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapsetnameditemns10">
+<metadata>
+<title>namednodemapsetnameditemns10</title>
+<creator>IBM</creator>
+<description>
+ The method setNamedItemNS adds a node using its namespaceURI and localName and
+ raises a HIERARCHY_REQUEST_ERR if an attempt is made to add a node doesn't belong
+ in this NamedNodeMap.
+
+ Attempt to add an entity to a NamedNodeMap of attribute nodes,
+ Since nodes of this type cannot be added to the attribute node map a HIERARCHY_REQUEST_ERR
+ should be raised.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="notation" type="Notation"/>
+<var name="element" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="newNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entities" obj="docType"/>
+<assertNotNull actual="entities" id="entitiesNotNull"/>
+<getNamedItem var="entity" obj="entities" name='"ent1"'/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"http://www.nist.gov"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<setNamedItemNS var="newNode" obj="attributes" arg="entity"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/namednodemapsetnameditemns11.xml b/test/testcases/tests/level2/core/namednodemapsetnameditemns11.xml
new file mode 100644
index 0000000..63b994a
--- /dev/null
+++ b/test/testcases/tests/level2/core/namednodemapsetnameditemns11.xml
@@ -0,0 +1,59 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namednodemapsetnameditemns11">
+<metadata>
+<title>namednodemapsetnameditemns11</title>
+<creator>IBM</creator>
+<description>
+ The method setNamedItemNS adds a node using its namespaceURI and localName and
+ raises a HIERARCHY_REQUEST_ERR if an attempt is made to add a node doesn't belong
+ in this NamedNodeMap.
+
+ Attempt to add a notation node to a NamedNodeMap of attribute nodes,
+ Since notations nodes do not belong in the attribute node map a HIERARCHY_REQUEST_ERR
+ should be raised.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="element" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="newNode" type="Node"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<notations var="notations" obj="docType"/>
+<assertNotNull actual="notations" id="notationsNotNull"/>
+<getNamedItem var="notation" obj="notations" name='"notation1"'/>
+<getElementsByTagNameNS var="elementList" obj="doc" namespaceURI='"http://www.nist.gov"' localName='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<attributes var="attributes" obj="element"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<setNamedItemNS var="newNode" obj="attributes" arg="notation"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/namespaceURI01.xml b/test/testcases/tests/level2/core/namespaceURI01.xml
new file mode 100644
index 0000000..e31ed6c
--- /dev/null
+++ b/test/testcases/tests/level2/core/namespaceURI01.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namespaceURI01">
+<metadata>
+<title>namespaceURI01</title>
+<creator>NIST</creator>
+<description>
+ The "getNamespaceURI()" method for an Attribute
+ returns the namespace URI of this node, or null if unspecified.
+
+ Retrieve the first "emp:address" node which has an attribute of "emp:district"
+ that is specified in the DTD.
+ Invoke the "getNamespaceURI()" method on the attribute.
+ The method should return "http://www.nist.gov".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSname"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=238"/>
+</metadata>
+<!-- this test requires namespace awareness and validation -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="Attr"/>
+<var name="attrNamespaceURI" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"emp:address"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<getAttributeNodeNS obj="testAddr" namespaceURI='"http://www.nist.gov"' localName='"district"' var="addrAttr"/>
+<namespaceURI obj="addrAttr" var="attrNamespaceURI"/>
+<assertEquals actual="attrNamespaceURI" expected='"http://www.nist.gov"' id="namespaceURI" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namespaceURI02.xml b/test/testcases/tests/level2/core/namespaceURI02.xml
new file mode 100644
index 0000000..1a87501
--- /dev/null
+++ b/test/testcases/tests/level2/core/namespaceURI02.xml
@@ -0,0 +1,48 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namespaceURI02">
+<metadata>
+<title>namespaceURI02</title>
+<creator>NIST</creator>
+<description>
+ The "getNamespaceURI()" method for an Attribute
+ returns the namespace URI of this node, or null if unspecified.
+
+ Retrieve the first emp:address node and get the emp:domestic attribute.
+ Invoke the "getNamespaceURI()" method on the attribute.
+ The method should return "http://www.nist.gov".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSname"/>
+</metadata>
+<!-- this test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Element"/>
+<var name="addrAttr" type="Attr"/>
+<var name="attrNamespaceURI" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"emp:address"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testAddr"/>
+<assertNotNull actual="testAddr" id="empAddressNotNull"/>
+<getAttributeNodeNS obj="testAddr" localName='"domestic"' namespaceURI='"http://www.nist.gov"' var="addrAttr"/>
+<namespaceURI obj="addrAttr" var="attrNamespaceURI"/>
+<assertEquals actual="attrNamespaceURI" expected='"http://www.nist.gov"' id="namespaceURI" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namespaceURI03.xml b/test/testcases/tests/level2/core/namespaceURI03.xml
new file mode 100644
index 0000000..ac058ab
--- /dev/null
+++ b/test/testcases/tests/level2/core/namespaceURI03.xml
@@ -0,0 +1,45 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namespaceURI03">
+<metadata>
+<title>namespaceURI03</title>
+<creator>NIST</creator>
+<description>
+ The "getNamespaceURI()" method for a Node
+ returns the namespace URI of this node, or null if unspecified.
+
+ Retrieve the first employee node and invoke the "getNamespaceURI()"
+ method. The method should return "http://www.nist.gov".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSname"/>
+</metadata>
+<!-- this test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="employeeNamespace" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<assertNotNull actual="testEmployee" id="employeeNotNull"/>
+<namespaceURI obj="testEmployee" var="employeeNamespace"/>
+<assertEquals actual="employeeNamespace" expected='"http://www.nist.gov"' id="namespaceURI" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/namespaceURI04.xml b/test/testcases/tests/level2/core/namespaceURI04.xml
new file mode 100644
index 0000000..52a824b
--- /dev/null
+++ b/test/testcases/tests/level2/core/namespaceURI04.xml
@@ -0,0 +1,54 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="namespaceURI04">
+<metadata>
+<title>namespaceURI04</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the second employee node and invoke the "getNamespaceURI()"
+ method. The method should return "null".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSname"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="employeeNamespace" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="testEmployee"/>
+<namespaceURI obj="testEmployee" var="employeeNamespace"/>
+<if><contentType type="image/svg+xml"/>
+<!-- the element is staffNS.svg has a non-null namespace
+ but since namespace awareness is not asserted,
+ the namespaceURI may be null -->
+<assertTrue id="employeeNS_svg">
+ <or>
+ <isNull obj="employeeNamespace"/>
+ <equals actual="employeeNamespace"
+ expected='"http://www.w3.org/2001/DOM-Test-Suite/Level-2/Files"'
+ ignoreCase="false"/>
+ </or>
+</assertTrue>
+<else>
+<assertNull actual="employeeNamespace" id="employeeNS_null"/>
+</else>
+</if>
+</test>
diff --git a/test/testcases/tests/level2/core/nodegetlocalname03.xml b/test/testcases/tests/level2/core/nodegetlocalname03.xml
new file mode 100644
index 0000000..76d8ad7
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodegetlocalname03.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodegetlocalname03">
+<metadata>
+<title>nodegetlocalname03</title>
+<creator>IBM</creator>
+<description>
+ The method getLocalName returns the local part of the qualified name of this node.
+
+ Ceate two new element nodes and atribute nodes, with and without namespace prefixes.
+ Retreive the local part of their qualified names using getLocalName and verrify
+ if it is correct.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSLocalN"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="qelement" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="qattr" type="Attr"/>
+<var name="localElemName" type="DOMString"/>
+<var name="localQElemName" type="DOMString"/>
+<var name="localAttrName" type="DOMString"/>
+<var name="localQAttrName" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/elem"' qualifiedName='"elem"'/>
+<createElementNS var="qelement" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/elem"' qualifiedName='"qual:qelem"'/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/attr"' qualifiedName='"attr"'/>
+<createAttributeNS var="qattr" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/attr"' qualifiedName='"qual:qattr"'/>
+<localName var="localElemName" obj="element"/>
+<localName var="localQElemName" obj="qelement"/>
+<localName var="localAttrName" obj="attr"/>
+<localName var="localQAttrName" obj="qattr"/>
+<assertEquals actual="localElemName" expected='"elem"' id="nodegetlocalname03_localElemName" ignoreCase="false"/>
+<assertEquals actual="localQElemName" expected='"qelem"' id="nodegetlocalname03_localQElemName" ignoreCase="false"/>
+<assertEquals actual="localAttrName" expected='"attr"' id="nodegetlocalname03_localAttrName" ignoreCase="false"/>
+<assertEquals actual="localQAttrName" expected='"qattr"' id="nodegetlocalname03_localQAttrName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodegetnamespaceuri03.xml b/test/testcases/tests/level2/core/nodegetnamespaceuri03.xml
new file mode 100644
index 0000000..a993d3a
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodegetnamespaceuri03.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodegetnamespaceuri03">
+<metadata>
+<title>nodegetnamespaceuri03</title>
+<creator>IBM</creator>
+<description>
+ The method getNamespaceURI returns the namespace URI of this node, or null if it is unspecified
+ For nodes of any type other than ELEMENT_NODE and ATTRIBUTE_NODE and nodes created with
+ a DOM Level 1 method, such as createElement from the Document interface, this is always null.
+
+ Ceate two new element nodes and atribute nodes, with and without namespace prefixes.
+ Retreive their namespaceURI's using getNamespaceURI and verrify if it is correct.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSname"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="elementNS" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="attrNS" type="Attr"/>
+<var name="elemNSURI" type="DOMString"/>
+<var name="elemNSURINull" type="DOMString"/>
+<var name="attrNSURI" type="DOMString"/>
+<var name="attrNSURINull" type="DOMString"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<createElementNS var="element" obj="doc" namespaceURI="nullNS" qualifiedName='"elem"'/>
+<createElementNS var="elementNS" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/elem"' qualifiedName='"qual:qelem"'/>
+<createAttributeNS var="attr" obj="doc" namespaceURI="nullNS" qualifiedName='"attr"'/>
+<createAttributeNS var="attrNS" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/attr"' qualifiedName='"qual:qattr"'/>
+<namespaceURI var="elemNSURI" obj="elementNS"/>
+<namespaceURI var="elemNSURINull" obj="element"/>
+<namespaceURI var="attrNSURI" obj="attrNS"/>
+<namespaceURI var="attrNSURINull" obj="attr"/>
+<assertEquals actual="elemNSURI" expected='"http://www.w3.org/DOM/Test/elem"' id="nodegetnamespaceuri03_elemNSURI" ignoreCase="false"/>
+<assertNull actual="elemNSURINull" id="nodegetnamespaceuri03_1"/>
+<assertEquals actual="attrNSURI" expected='"http://www.w3.org/DOM/Test/attr"' id="nodegetnamespaceuri03_attrNSURI" ignoreCase="false"/>
+<assertNull actual="attrNSURINull" id="nodegetnamespaceuri03_2"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodegetownerdocument01.xml b/test/testcases/tests/level2/core/nodegetownerdocument01.xml
new file mode 100644
index 0000000..51e6f06
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodegetownerdocument01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodegetownerdocument01">
+<metadata>
+<title>nodegetownerdocument01</title>
+<creator>IBM</creator>
+<description>
+ The method getOwnerDocument returns the Document object associated with this node
+
+ Create a new DocumentType node. Since this node is not used with any Document yet
+ verify if the ownerDocument is null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#node-ownerDoc"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="ownerDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="nullID" type="DOMString" isNull="true"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="docType" obj="domImpl" qualifiedName='"mydoc"' publicId="nullID" systemId="nullID"/>
+<ownerDocument var="ownerDoc" obj="docType"/>
+<assertNull actual="ownerDoc" id="nodegetownerdocument01"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodegetownerdocument02.xml b/test/testcases/tests/level2/core/nodegetownerdocument02.xml
new file mode 100644
index 0000000..ef66fdc
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodegetownerdocument02.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodegetownerdocument02">
+<metadata>
+<title>nodegetownerdocument02</title>
+<creator>IBM</creator>
+<description>
+ The method getOwnerDocument returns the Document object associated with this node
+
+ Create a new Document node. Since this node is not used with any Document yet
+ verify if the ownerDocument is null. Create a new element Node on the new Document
+ object. Check the ownerDocument of the new element node.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#node-ownerDoc"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="newElem" type="Element"/>
+<var name="ownerDocDoc" type="Document"/>
+<var name="ownerDocElem" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="docType" obj="domImpl" qualifiedName='"mydoc"' publicId="nullNS" systemId="nullNS"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"mydoc"' doctype="docType"/>
+<ownerDocument var="ownerDocDoc" obj="newDoc"/>
+<assertNull actual="ownerDocDoc" id="nodegetownerdocument02_1"/>
+<createElementNS var="newElem" obj="newDoc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"myelem"'/>
+<ownerDocument var="ownerDocElem" obj="newElem"/>
+<assertNotNull actual="ownerDocElem" id="nodegetownerdocument02_2"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodegetprefix03.xml b/test/testcases/tests/level2/core/nodegetprefix03.xml
new file mode 100644
index 0000000..3eec6d9
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodegetprefix03.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodegetprefix03">
+<metadata>
+<title>nodegetprefix03</title>
+<creator>IBM</creator>
+<description>
+ The method getPrefix returns the namespace prefix of this node, or null if it is unspecified.
+
+ Ceate two new element nodes and atribute nodes, with and without namespace prefixes.
+ Retreive the prefix part of their qualified names using getPrefix and verify
+ if it is correct.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="qelement" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="qattr" type="Attr"/>
+<var name="elemNoPrefix" type="DOMString"/>
+<var name="elemPrefix" type="DOMString"/>
+<var name="attrNoPrefix" type="DOMString"/>
+<var name="attrPrefix" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/elem"' qualifiedName='"elem"'/>
+<createElementNS var="qelement" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/elem"' qualifiedName='"qual:qelem"'/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/attr"' qualifiedName='"attr"'/>
+<createAttributeNS var="qattr" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/attr"' qualifiedName='"qual:qattr"'/>
+<prefix var="elemNoPrefix" obj="element"/>
+<prefix var="elemPrefix" obj="qelement"/>
+<prefix var="attrNoPrefix" obj="attr"/>
+<prefix var="attrPrefix" obj="qattr"/>
+<assertNull actual="elemNoPrefix" id="nodegetprefix03_1"/>
+<assertEquals actual="elemPrefix" expected='"qual"' id="nodegetprefix03_2" ignoreCase="false"/>
+<assertNull actual="attrNoPrefix" id="nodegetprefix03_3"/>
+<assertEquals actual="attrPrefix" expected='"qual"' id="nodegetprefix03_4" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodehasattributes01.xml b/test/testcases/tests/level2/core/nodehasattributes01.xml
new file mode 100644
index 0000000..017da0c
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodehasattributes01.xml
@@ -0,0 +1,45 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodehasattributes01">
+<metadata>
+<title>nodehasattributes01</title>
+<creator>IBM</creator>
+<description>
+ The method hasAttributes returns whether this node (if it is an element) has any attributes.
+
+ Retreive an element node without attributes. Verify if hasAttributes returns false.
+ Retreive another element node with attributes. Verify if hasAttributes returns true.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeHasAttrs"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="hasAttributes" type="boolean"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName var="elementList" obj="doc" tagname='"employeeId"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<hasAttributes var="hasAttributes" obj="element"/>
+<assertFalse actual="hasAttributes" id="employeeIdHasAttributesFalse"/>
+<getElementsByTagName var="elementList" obj="doc" tagname='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<hasAttributes var="hasAttributes" obj="element"/>
+<assertTrue actual="hasAttributes" id="addressHasAttributesTrue"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodehasattributes02.xml b/test/testcases/tests/level2/core/nodehasattributes02.xml
new file mode 100644
index 0000000..5fb47fa
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodehasattributes02.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodehasattributes02">
+<metadata>
+<title>nodehasattributes02</title>
+<creator>IBM</creator>
+<description>
+ The method hasAttributes returns whether this node (if it is an element) has any attributes.
+
+ Retrieve the docType node. Since this is not an element node check if hasAttributes returns
+ null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeHasAttrs"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="hasAttributes" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<hasAttributes var="hasAttributes" obj="docType"/>
+<assertFalse actual="hasAttributes" id="nodehasattributes02"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodehasattributes03.xml b/test/testcases/tests/level2/core/nodehasattributes03.xml
new file mode 100644
index 0000000..55850bb
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodehasattributes03.xml
@@ -0,0 +1,41 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodehasattributes03">
+<metadata>
+<title>nodehasattributes03</title>
+<creator>IBM</creator>
+<description>
+ The method hasAttributes returns whether this node (if it is an element) has any attributes.
+
+ Retreive an element node with a default attributes. Verify if hasAttributes returns true.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeHasAttrs"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="hasAttributes" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName var="elementList" obj="doc" tagname='"emp:employee"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<assertNotNull actual="element" id="empEmployeeNotNull"/>
+<hasAttributes var="hasAttributes" obj="element"/>
+<assertTrue actual="hasAttributes" id="hasAttributes"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodehasattributes04.xml b/test/testcases/tests/level2/core/nodehasattributes04.xml
new file mode 100644
index 0000000..00e14ff
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodehasattributes04.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodehasattributes04">
+<metadata>
+<title>nodehasattributes04</title>
+<creator>IBM</creator>
+<description>
+ The method hasAttributes returns whether this node (if it is an element) has any attributes.
+
+ Create a new Document, Element and Attr node. Add the Attr to the Element and append the
+ Element to the Document. Retreive the newly created element node from the document and check
+ if it has attributes using hasAttributes.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeHasAttrs"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="element" type="Element"/>
+<var name="elementTest" type="Element"/>
+<var name="elementDoc" type="Element"/>
+<var name="attribute" type="Attr"/>
+<var name="setNode" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="hasAttributes" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"test"' doctype="docType"/>
+<createElementNS var="element" obj="newDoc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom:elem"'/>
+<createAttribute var="attribute" obj="newDoc" name='"attr"'/>
+<setAttributeNode var="setNode" obj="element" newAttr="attribute"/>
+<documentElement var="elementDoc" obj="newDoc"/>
+<appendChild var="appendedChild" obj="elementDoc" newChild="element"/>
+<getElementsByTagNameNS var="elementList" obj="newDoc" namespaceURI='"http://www.w3.org/DOM/Test"' localName='"elem"' interface="Document"/>
+<item var="elementTest" obj="elementList" index="0" interface="NodeList"/>
+<hasAttributes var="hasAttributes" obj="elementTest"/>
+<assertTrue actual="hasAttributes" id="nodehasattributes04"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodeissupported01.xml b/test/testcases/tests/level2/core/nodeissupported01.xml
new file mode 100644
index 0000000..4d5b406
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodeissupported01.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodeissupported01">
+<metadata>
+<title>nodeissupported01</title>
+<creator>IBM</creator>
+<description>
+ The method "isSupported(feature,version)" Tests whether the DOM implementation
+ implements a specific feature and that feature is supported by this node.
+
+ Call the isSupported method on the document element node with a combination of features
+ versions and versions as below. Valid feature names are case insensitive and versions
+ "2.0", "1.0" and if the version is not specified, supporting any version of the feature
+ should return true. Check if the value returned value was true.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="version" type="DOMString" value="&quot;&quot;"/>
+<var name="version1" type="DOMString" value="&quot;1.0&quot;"/>
+<var name="version2" type="DOMString" value="&quot;2.0&quot;"/>
+<var name="featureCore" type="DOMString"/>
+<var name="featureXML" type="DOMString"/>
+<var name="success" type="boolean"/>
+<var name="featuresXML" type="List">
+<member>&quot;XML&quot;</member>
+<member>&quot;xmL&quot;</member>
+</var>
+<var name="featuresCore" type="List">
+<member>&quot;Core&quot;</member>
+<member>&quot;CORE&quot;</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<documentElement obj="doc" var="element"/>
+<for-each collection="featuresXML" member="featureXML">
+<isSupported obj="element" var="success" feature="featureXML" version="version"/>
+<assertTrue actual="success" id="nodeissupported01_XML1"/>
+<isSupported obj="element" var="success" feature="featureXML" version="version1"/>
+<assertTrue actual="success" id="nodeissupported01_XML2"/>
+</for-each>
+<for-each collection="featuresCore" member="featureCore">
+<isSupported obj="element" var="success" feature="featureCore" version="version"/>
+<assertTrue actual="success" id="nodeissupported01_Core1"/>
+
+<!-- isSupported("Core", "1.0") is unspecified since "Core" was not defined in L1 -->
+<isSupported obj="element" var="success" feature="featureCore" version="version1"/>
+
+<isSupported obj="element" var="success" feature="featureCore" version="version2"/>
+<assertTrue actual="success" id="nodeissupported01_Core3"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/nodeissupported02.xml b/test/testcases/tests/level2/core/nodeissupported02.xml
new file mode 100644
index 0000000..4634873
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodeissupported02.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodeissupported02">
+<metadata>
+<title>nodeissupported02</title>
+<creator>IBM</creator>
+<description>
+ The method "isSupported(feature,version)" Tests whether the DOM implementation
+ implements a specific feature and that feature is supported by this node.
+
+ Call the isSupported method on a new attribute node with a combination of features
+ versions and versions as below. Valid feature names are case insensitive and versions
+ "2.0", "1.0" and if the version is not specified, supporting any version of the feature
+ should return true. Check if the value returned value was true.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attribute" type="Attr"/>
+<var name="version" type="DOMString" value="&quot;&quot;"/>
+<var name="version1" type="DOMString" value="&quot;1.0&quot;"/>
+<var name="version2" type="DOMString" value="&quot;2.0&quot;"/>
+<var name="featureCore" type="DOMString"/>
+<var name="featureXML" type="DOMString"/>
+<var name="success" type="boolean"/>
+<var name="featuresXML" type="List">
+<member>&quot;XML&quot;</member>
+<member>&quot;xmL&quot;</member>
+</var>
+<var name="featuresCore" type="List">
+<member>&quot;Core&quot;</member>
+<member>&quot;CORE&quot;</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createAttribute obj="doc" var="attribute" name='"TestAttr"'/>
+<for-each collection="featuresXML" member="featureXML">
+<isSupported obj="attribute" var="success" feature="featureXML" version="version"/>
+<assertTrue actual="success" id="nodeissupported02_XML1"/>
+<isSupported obj="attribute" var="success" feature="featureXML" version="version1"/>
+<assertTrue actual="success" id="nodeissupported02_XML2"/>
+</for-each>
+<for-each collection="featuresCore" member="featureCore">
+<isSupported obj="attribute" var="success" feature="featureCore" version="version"/>
+<assertTrue actual="success" id="nodeissupported02_Core1"/>
+
+<!-- isSupported("Core", "1.0") is unspecified since "Core" was not defined in L1 -->
+<isSupported obj="attribute" var="success" feature="featureCore" version="version1"/>
+
+<isSupported obj="attribute" var="success" feature="featureCore" version="version2"/>
+<assertTrue actual="success" id="nodeissupported02_Core3"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level2/core/nodeissupported03.xml b/test/testcases/tests/level2/core/nodeissupported03.xml
new file mode 100644
index 0000000..8437cce
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodeissupported03.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodeissupported03">
+<metadata>
+<title>nodeissupported03</title>
+<creator>IBM</creator>
+<description>
+ The method "isSupported(feature,version)" Tests whether the DOM implementation
+ implements a specific feature and that feature is supported by this node.
+
+ Call the isSupported method specifying empty strings for feature and version on a docType
+ Node. Check if the value returned value was false.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="success" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<isSupported obj="docType" var="success" feature='""' version='""'/>
+<assertFalse actual="success" id="nodeissupported03"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodeissupported04.xml b/test/testcases/tests/level2/core/nodeissupported04.xml
new file mode 100644
index 0000000..68ee69f
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodeissupported04.xml
@@ -0,0 +1,42 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodeissupported04">
+<metadata>
+<title>nodeissupported04</title>
+<creator>IBM</creator>
+<description>
+ The method "isSupported(feature,version)" Tests whether the DOM implementation
+ implements a specific feature and that feature is supported by this node.
+
+ Call the isSupported method specifying empty strings for feature and version on a
+ new EntityReference node. Check if the value returned value was false.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="EntityReference"/>
+<var name="success" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createEntityReference var="entRef" obj="doc" name='"ent1"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<isSupported obj="entRef" var="success" feature='"XML CORE"' version='""'/>
+<assertFalse actual="success" id="nodeissupported04"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodeissupported05.xml b/test/testcases/tests/level2/core/nodeissupported05.xml
new file mode 100644
index 0000000..56b816f
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodeissupported05.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodeissupported05">
+<metadata>
+<title>nodeissupported05</title>
+<creator>IBM</creator>
+<description>
+ The method "isSupported(feature,version)" Tests whether the DOM implementation
+ implements a specific feature and that feature is supported by this node.
+
+ Call the isSupported method specifying bad values for feature and version on a new
+ Processing Instruction node. Check if the value returned from this method value was false.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="success" type="boolean"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createProcessingInstruction var="pi" obj="doc" target='"PITarget"' data='"PIData"'/>
+<isSupported obj="pi" var="success" feature='"-"' version='"+"'/>
+<assertFalse actual="success" id="nodeissupported05"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodenormalize01.xml b/test/testcases/tests/level2/core/nodenormalize01.xml
new file mode 100644
index 0000000..94f5b64
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodenormalize01.xml
@@ -0,0 +1,153 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodenormalize01">
+<metadata>
+<title>nodenormalize01</title>
+<creator>IBM</creator>
+<description>
+ The method "normalize" puts all Text nodes in the full depth of the sub-tree underneath
+ this Node, including attribute nodes, into a "normal" form where only structure
+ (e.g., elements, comments, processing instructions, CDATA sections, and entity references)
+ separates Text nodes, i.e., there are neither adjacent Text nodes nor empty Text nodes.
+
+ Create a dom tree consisting of elements, comments, processing instructions, CDATA sections,
+ and entity references nodes seperated by text nodes. Check the length of the node list of each
+ before and after normalize has been called.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-24</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-normalize"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="docTypeNull" type="DocumentType" isNull="true"/>
+<var name="documentElement" type="Element"/>
+<var name="element1" type="Element"/>
+<var name="element2" type="Element"/>
+<var name="element3" type="Element"/>
+<var name="element4" type="Element"/>
+<var name="element5" type="Element"/>
+<var name="element6" type="Element"/>
+<var name="element7" type="Element"/>
+<var name="text1" type="Text"/>
+<var name="text2" type="Text"/>
+<var name="text3" type="Text"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="cData" type="CDATASection"/>
+<var name="comment" type="Comment"/>
+<var name="entRef" type="EntityReference"/>
+<var name="elementList" type="NodeList"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom:root"' doctype="docTypeNull"/>
+<createElement var="element1" obj="newDoc" tagName='"element1"'/>
+<createElement var="element2" obj="newDoc" tagName='"element2"'/>
+<createElement var="element3" obj="newDoc" tagName='"element3"'/>
+<createElement var="element4" obj="newDoc" tagName='"element4"'/>
+<createElement var="element5" obj="newDoc" tagName='"element5"'/>
+<createElement var="element6" obj="newDoc" tagName='"element6"'/>
+<createElement var="element7" obj="newDoc" tagName='"element7"'/>
+<createTextNode var="text1" obj="newDoc" data='"text1"'/>
+<createTextNode var="text2" obj="newDoc" data='"text2"'/>
+<createTextNode var="text3" obj="newDoc" data='"text3"'/>
+<createCDATASection var="cData" obj="newDoc" data='"Cdata"'/>
+<createComment var="comment" obj="newDoc" data='"comment"'/>
+<createProcessingInstruction var="pi" obj="newDoc" target='"PITarget"' data='"PIData"'/>
+<createEntityReference var="entRef" obj="newDoc" name='"EntRef"'/>
+<assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+<documentElement var="documentElement" obj="newDoc"/>
+<appendChild var="appendedChild" obj="documentElement" newChild="element1"/>
+
+<appendChild var="appendedChild" obj="element2" newChild="text1"/>
+<appendChild var="appendedChild" obj="element2" newChild="text2"/>
+<appendChild var="appendedChild" obj="element2" newChild="text3"/>
+<appendChild var="appendedChild" obj="element1" newChild="element2"/>
+
+<cloneNode var="text1" obj="text1" deep="false"/>
+<cloneNode var="text2" obj="text2" deep="false"/>
+<appendChild var="appendedChild" obj="element3" newChild="entRef"/>
+<appendChild var="appendedChild" obj="element3" newChild="text1"/>
+<appendChild var="appendedChild" obj="element3" newChild="text2"/>
+<appendChild var="appendedChild" obj="element1" newChild="element3"/>
+
+<cloneNode var="text1" obj="text1" deep="false"/>
+<cloneNode var="text2" obj="text2" deep="false"/>
+<appendChild var="appendedChild" obj="element4" newChild="cData"/>
+<appendChild var="appendedChild" obj="element4" newChild="text1"/>
+<appendChild var="appendedChild" obj="element4" newChild="text2"/>
+<appendChild var="appendedChild" obj="element1" newChild="element4"/>
+
+<cloneNode var="text2" obj="text2" deep="false"/>
+<cloneNode var="text3" obj="text3" deep="false"/>
+<appendChild var="appendedChild" obj="element5" newChild="comment"/>
+<appendChild var="appendedChild" obj="element5" newChild="text2"/>
+<appendChild var="appendedChild" obj="element5" newChild="text3"/>
+<appendChild var="appendedChild" obj="element1" newChild="element5"/>
+
+<cloneNode var="text2" obj="text2" deep="false"/>
+<cloneNode var="text3" obj="text3" deep="false"/>
+<appendChild var="appendedChild" obj="element6" newChild="pi"/>
+<appendChild var="appendedChild" obj="element6" newChild="text2"/>
+<appendChild var="appendedChild" obj="element6" newChild="text3"/>
+<appendChild var="appendedChild" obj="element1" newChild="element6"/>
+
+<cloneNode var="entRef" obj="entRef" deep="false"/>
+<cloneNode var="text1" obj="text1" deep="false"/>
+<cloneNode var="text2" obj="text2" deep="false"/>
+<cloneNode var="text3" obj="text3" deep="false"/>
+<appendChild var="appendedChild" obj="element7" newChild="entRef"/>
+<appendChild var="appendedChild" obj="element7" newChild="text1"/>
+<appendChild var="appendedChild" obj="element7" newChild="text2"/>
+<appendChild var="appendedChild" obj="element7" newChild="text3"/>
+<appendChild var="appendedChild" obj="element1" newChild="element7"/>
+
+<childNodes var="elementList" obj="element1"/>
+<assertSize size="6" collection="elementList" id="nodeNormalize01_1Bef"/>
+<childNodes var="elementList" obj="element2"/>
+<assertSize size="3" collection="elementList" id="nodeNormalize01_2Bef"/>
+<childNodes var="elementList" obj="element3"/>
+<assertSize size="3" collection="elementList" id="nodeNormalize01_3Bef"/>
+<childNodes var="elementList" obj="element4"/>
+<assertSize size="3" collection="elementList" id="nodeNormalize01_4Bef"/>
+<childNodes var="elementList" obj="element5"/>
+<assertSize size="3" collection="elementList" id="nodeNormalize01_5Bef"/>
+<childNodes var="elementList" obj="element6"/>
+<assertSize size="3" collection="elementList" id="nodeNormalize01_6Bef"/>
+<childNodes var="elementList" obj="element7"/>
+<assertSize size="4" collection="elementList" id="nodeNormalize01_7Bef"/>
+<normalize obj="newDoc"/>
+<childNodes var="elementList" obj="element1"/>
+<assertSize size="6" collection="elementList" id="nodeNormalize01_1Aft"/>
+<childNodes var="elementList" obj="element2"/>
+<assertSize size="1" collection="elementList" id="nodeNormalize01_2Aft"/>
+<childNodes var="elementList" obj="element3"/>
+<assertSize size="2" collection="elementList" id="nodeNormalize01_3Aft"/>
+<childNodes var="elementList" obj="element4"/>
+<assertSize size="2" collection="elementList" id="nodeNormalize01_4Aft"/>
+<childNodes var="elementList" obj="element5"/>
+<assertSize size="2" collection="elementList" id="nodeNormalize01_5Aft"/>
+<childNodes var="elementList" obj="element6"/>
+<assertSize size="2" collection="elementList" id="nodeNormalize01_6Aft"/>
+<childNodes var="elementList" obj="element7"/>
+<assertSize size="2" collection="elementList" id="nodeNormalize01_7Aft"/>
+</test>
+
diff --git a/test/testcases/tests/level2/core/nodesetprefix01.xml b/test/testcases/tests/level2/core/nodesetprefix01.xml
new file mode 100644
index 0000000..a3817cc
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodesetprefix01.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodesetprefix01">
+<metadata>
+<title>nodesetprefix01</title>
+<creator>IBM</creator>
+<description>
+ The method setPrefix sets the namespace prefix of this node. Note that setting this attribute,
+ when permitted, changes the nodeName attribute, which holds the qualified name, as well as the
+ tagName and name attributes of the Element and Attr interfaces, when applicable.
+
+ Create a new element node with a namespace prefix. Add it to a new DocumentFragment Node without
+ a prefix. Call setPrefix on the elemen node. Check if the prefix was set correctly on the element.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="element" type="Element"/>
+<var name="elementTagName" type="DOMString"/>
+<var name="elementNodeName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<createDocumentFragment var="docFragment" obj="doc" />
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"emp:address"'/>
+<appendChild var="appendedChild" obj="docFragment" newChild="element"/>
+<prefix obj="element" value='"dmstc"'/>
+<tagName var="elementTagName" obj="element"/>
+<nodeName var="elementNodeName" obj="element"/>
+<assertEquals actual="elementTagName" expected='"dmstc:address"' id="nodesetprefix01_tagname" ignoreCase="false"/>
+<assertEquals actual="elementNodeName" expected='"dmstc:address"' id="nodesetprefix01_nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodesetprefix02.xml b/test/testcases/tests/level2/core/nodesetprefix02.xml
new file mode 100644
index 0000000..7e86db2
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodesetprefix02.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodesetprefix02">
+<metadata>
+<title>nodesetprefix02</title>
+<creator>IBM</creator>
+<description>
+ The method setPrefix sets the namespace prefix of this node. Note that setting this attribute,
+ when permitted, changes the nodeName attribute, which holds the qualified name, as well as the
+ tagName and name attributes of the Element and Attr interfaces, when applicable.
+
+ Create a new attribute node and add it to an element node with an existing attribute having
+ the same localName as this attribute but different namespaceURI. Change the prefix of the
+ newly created attribute using setPrefix. Check if the new attribute nodeName has changed
+ and the existing attribute is the same.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="attribute" type="Attr"/>
+<var name="newAttribute" type="Attr"/>
+<var name="setNode" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="attrName" type="DOMString"/>
+<var name="newAttrName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName var="elementList" obj="doc" tagname='"address"' interface="Document"/>
+<item var="element" obj="elementList" index="1" interface="NodeList"/>
+<createAttributeNS var="newAttribute" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"test:address"'/>
+<setAttributeNodeNS var="setNode" obj="element" newAttr="newAttribute"/>
+<prefix obj="newAttribute" value='"dom"'/>
+<getAttributeNodeNS var="attribute" obj="element" namespaceURI='"http://www.usa.com"' localName='"domestic"'/>
+<nodeName var="attrName" obj="attribute"/>
+<nodeName var="newAttrName" obj="newAttribute"/>
+<assertEquals actual="attrName" expected='"dmstc:domestic"' id="nodesetprefix02_attrName" ignoreCase="false"/>
+<assertEquals actual="newAttrName" expected='"dom:address"' id="nodesetprefix02_newAttrName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/nodesetprefix03.xml b/test/testcases/tests/level2/core/nodesetprefix03.xml
new file mode 100644
index 0000000..eaa0739
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodesetprefix03.xml
@@ -0,0 +1,42 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodesetprefix03">
+<metadata>
+<title>nodesetprefix03</title>
+<creator>IBM</creator>
+<description>
+ The method setPrefix raises a NAMESPACE_ERR if the namespaceURI of this node is null.
+
+ Create a new element node without a namespace prefix. Call setPrefix on the newly created elemenent node.
+ Check if a NAMESPACE_ERR is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createElement var="element" obj="doc" tagName='"address"'/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<prefix obj="element" value='"test"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/nodesetprefix04.xml b/test/testcases/tests/level2/core/nodesetprefix04.xml
new file mode 100644
index 0000000..f81523d
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodesetprefix04.xml
@@ -0,0 +1,51 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodesetprefix04">
+<metadata>
+<title>nodesetprefix04</title>
+<creator>IBM</creator>
+<description>
+ The method setPrefix raises a NAMESPACE_ERR if the namespaceURI of this node is null.
+
+ Retreive the a default Attribute node which does not have a namespace prefix. Call the setPrefix
+ method on it. Check if a NAMESPACE_ERR is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=259"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="attribute" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName var="elementList" obj="doc" tagname='"emp:employee"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<assertNotNull actual="element" id="empEmployeeNotNull"/>
+<getAttributeNodeNS var="attribute" obj="element" namespaceURI="nullNS" localName='"defaultAttr"'/>
+<assertDOMException id="nodesetprefix04">
+<NAMESPACE_ERR>
+<prefix obj="attribute" value='"test"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
+
diff --git a/test/testcases/tests/level2/core/nodesetprefix05.xml b/test/testcases/tests/level2/core/nodesetprefix05.xml
new file mode 100644
index 0000000..7e8fd89
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodesetprefix05.xml
@@ -0,0 +1,53 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodesetprefix05">
+<metadata>
+<title>nodesetprefix05</title>
+<creator>IBM</creator>
+<description>
+ The method setPrefix raises a NAMESPACE_ERR if the specified prefix is malformed.
+
+ Create a new namespace aware element node and call the setPrefix method on it with several malformed
+ prefix values. Check if a NAMESPACE_ERR is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="prefixValue" type="DOMString"/>
+<var name="prefixValues" type="List">
+<member>&quot;_:&quot;</member>
+<member>&quot;:0&quot;</member>
+<member>&quot;:&quot;</member>
+<member>&quot;_::&quot;</member>
+<member>&quot;a:0:c&quot;</member>
+</var>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/L2"' qualifiedName='"dom:elem"'/>
+<for-each collection="prefixValues" member="prefixValue">
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<prefix obj="element" value="prefixValue"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</for-each>
+</test>
+
diff --git a/test/testcases/tests/level2/core/nodesetprefix06.xml b/test/testcases/tests/level2/core/nodesetprefix06.xml
new file mode 100644
index 0000000..ac4fcf4
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodesetprefix06.xml
@@ -0,0 +1,43 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodesetprefix06">
+<metadata>
+<title>nodesetprefix06</title>
+<creator>IBM</creator>
+<description>
+ The method setPrefix raises a NAMESPACE_ERR if the specified prefix is "xml" and the namespaceURI
+ of this node is different from "http://www.w3.org/XML/1998/namespace".
+
+ Invoke the setPrefix method on this Element object with namespaceURI that is different from
+ http://www..w3.org/xml/1998/namespace and a prefix whose values is xml.
+ Check if the NAMESPACE_ERR was thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/L2"' qualifiedName='"dom:elem"'/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<prefix obj="element" value='"xml"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/nodesetprefix07.xml b/test/testcases/tests/level2/core/nodesetprefix07.xml
new file mode 100644
index 0000000..f8e2b47
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodesetprefix07.xml
@@ -0,0 +1,44 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodesetprefix07">
+<metadata>
+<title>nodesetprefix07</title>
+<creator>IBM</creator>
+<description>
+ The method setPrefix raises a NAMESPACE_ERR if this node is an attribute and the specified
+ prefix is "xmlns" and the namespaceURI of this node is different from
+ "http://www.w3.org/2000/xmlns/".
+
+ Create a new attribute node whose namespaceURI is different form "http://www.w3.org/2000/xmlns/"
+ and node prefix is "xmlns".
+ Check if the NAMESPACE_ERR was thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attribute" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createAttributeNS var="attribute" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/L2"' qualifiedName='"abc:elem"'/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<prefix obj="attribute" value='"xmlns"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/nodesetprefix08.xml b/test/testcases/tests/level2/core/nodesetprefix08.xml
new file mode 100644
index 0000000..bec9ebb
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodesetprefix08.xml
@@ -0,0 +1,46 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodesetprefix08">
+<metadata>
+<title>nodesetprefix08</title>
+<creator>IBM</creator>
+<description>
+ The method setPrefix raises a NAMESPACE_ERR if this node is an attribute and the qualifiedName
+ of this node is "xmlns
+
+ Retreive an attribute node whose qualifiedName is xmlns. Try setting a prefix on this node.
+ Check if the NAMESPACE_ERR was thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="attribute" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName var="elementList" obj="doc" tagname='"employee"' interface="Document"/>
+<item var="element" obj="elementList" index="0" interface="NodeList"/>
+<getAttributeNode var="attribute" obj="element" name='"xmlns"'/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<prefix obj="attribute" value='"xml"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/nodesetprefix09.xml b/test/testcases/tests/level2/core/nodesetprefix09.xml
new file mode 100644
index 0000000..1c61f3b
--- /dev/null
+++ b/test/testcases/tests/level2/core/nodesetprefix09.xml
@@ -0,0 +1,42 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="nodesetprefix09">
+<metadata>
+<title>nodesetprefix09</title>
+<creator>IBM</creator>
+<description>
+ The method setPrefix raises a INVALID_CHARACTER_ERR if the specified prefix contains an illegal character.
+
+ Create a new namespace aware element node and call the setPrefix method on it with a prefix having
+ an invalid character. Check if a NAMESPACE_ERR is thrown.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-04-28</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="value" type="DOMString" value='"#$%&amp;&apos;()@"' />
+<var name="element" type="Element"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test/L2"' qualifiedName='"dom:elem"'/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<prefix obj="element" value="value" />
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/normalize01.xml b/test/testcases/tests/level2/core/normalize01.xml
new file mode 100644
index 0000000..7cf5c7d
--- /dev/null
+++ b/test/testcases/tests/level2/core/normalize01.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="normalize01">
+<metadata>
+<title>normalize01</title>
+<creator>NIST</creator>
+<description>
+ The "normalize()" method puts all the nodes in the full
+ depth of the sub-tree underneath this element into a
+ "normal" form.
+
+ Retrieve the third employee and access its second child.
+ This child contains a block of text that is spread
+ across multiple lines. The content of the "name" child
+ should be parsed and treated as a single Text node.
+
+ This appears to be a duplicate of elementnormalize.xml in DOM L1 Test Suite
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-72AB8359"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="root" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="firstChild" type="Node"/>
+<var name="textList" type="NodeList"/>
+<var name="textNode" type="CharacterData"/>
+<var name="data" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<normalize obj="root"/>
+<getElementsByTagName interface="Element" obj="root" tagname='"name"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="2" var="firstChild"/>
+<childNodes obj="firstChild" var="textList"/>
+<item interface="NodeList" obj="textList" index="0" var="textNode"/>
+<data interface="CharacterData" obj="textNode" var="data"/>
+<assertEquals actual="data" expected='"Roger\n Jones"' id="data" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/ownerDocument01.xml b/test/testcases/tests/level2/core/ownerDocument01.xml
new file mode 100644
index 0000000..03c054a
--- /dev/null
+++ b/test/testcases/tests/level2/core/ownerDocument01.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="ownerDocument01">
+<metadata>
+<title>ownerDocument01</title>
+<creator>NIST</creator>
+<description>
+ The "getOwnerDocument()" method returns null if the target
+ node itself is a DocumentType which is not used with any document yet.
+
+ Invoke the "getOwnerDocument()" method on the master
+ document. The DocumentType returned should be null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#node-ownerDoc"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="ownerDocument" type="DocumentType"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<ownerDocument obj="doc" var="ownerDocument"/>
+<assertNull actual="ownerDocument" id="throw_Null"/>
+</test>
diff --git a/test/testcases/tests/level2/core/ownerElement01.xml b/test/testcases/tests/level2/core/ownerElement01.xml
new file mode 100644
index 0000000..78cb0c3
--- /dev/null
+++ b/test/testcases/tests/level2/core/ownerElement01.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="ownerElement01">
+<metadata>
+<title>ownerElement01</title>
+<creator>NIST</creator>
+<description>
+ The "getOwnerElement()" will return the Element node this attribute
+ is attached to or null if this attribute is not in use.
+ Get the "domestic" attribute from the first "address" node.
+ Apply the "getOwnerElement()" method to get the Element associated
+ with the attribute. The value returned should be "address".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-F68D095"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="addressList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="domesticAttr" type="Attr"/>
+<var name="elementNode" type="Element"/>
+<var name="name" type="DOMString"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="addressList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="addressList" var="testNode" index="0"/>
+<attributes obj="testNode" var="attributes"/>
+<getNamedItem obj="attributes" var="domesticAttr" name="&quot;domestic&quot;"/>
+<ownerElement obj="domesticAttr" var="elementNode"/>
+<nodeName obj="elementNode" var="name"/>
+<assertEquals actual="name" expected="&quot;address&quot;" id="throw_Equals" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/ownerElement02.xml b/test/testcases/tests/level2/core/ownerElement02.xml
new file mode 100644
index 0000000..7a600c2
--- /dev/null
+++ b/test/testcases/tests/level2/core/ownerElement02.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="ownerElement02">
+<metadata>
+<title>ownerElement02</title>
+<creator>NIST</creator>
+<description>
+ The "getOwnerElement()" will return the Element node this attribute
+ is attached to or null if this attribute is not in use.
+ Create a new attribute.
+ Apply the "getOwnerElement()" method to get the Element associated
+ with the attribute. The value returned should be "null" since this
+ attribute is not in use.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Attr-ownerElement"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<var name="elementNode" type="Element"/>
+<load var="doc" href="staff" willBeModified="false"/>
+<createAttribute obj="doc" var="newAttr" name="&quot;newAttribute&quot;"/>
+<ownerElement obj="newAttr" var="elementNode"/>
+<assertNull actual="elementNode" id="throw_Null"/>
+</test>
diff --git a/test/testcases/tests/level2/core/prefix01.xml b/test/testcases/tests/level2/core/prefix01.xml
new file mode 100644
index 0000000..dd85d18
--- /dev/null
+++ b/test/testcases/tests/level2/core/prefix01.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="prefix01">
+<metadata>
+<title>prefix01</title>
+<creator>NIST</creator>
+<description>
+ The "getPrefix()" method for a Node
+ returns the namespace prefix of the node,
+ and for nodes of any type other than ELEMENT_NODE and ATTRIBUTE_NODE
+ and nodes created with a DOM Level 1 method, this is null.
+
+ Create an new Element with the createElement() method.
+ Invoke the "getPrefix()" method on the newly created element
+ node will cause "null" to be returned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="createdNode" type="Node"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<createElement obj="doc" tagName="&quot;test:employee&quot;" var="createdNode"/>
+<prefix obj="createdNode" var="prefix"/>
+<assertNull actual="prefix" id="throw_Null"/>
+</test>
diff --git a/test/testcases/tests/level2/core/prefix02.xml b/test/testcases/tests/level2/core/prefix02.xml
new file mode 100644
index 0000000..68744e4
--- /dev/null
+++ b/test/testcases/tests/level2/core/prefix02.xml
@@ -0,0 +1,48 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="prefix02">
+<metadata>
+<title>prefix02</title>
+<creator>NIST</creator>
+<description>
+ The "getPrefix()" method
+ returns the namespace prefix of this node, or null if unspecified.
+ For nodes of any type other than ELEMENT_NODE and ATTRIBUTE_NODE,
+ this is always null.
+
+ Retrieve the first emp:employeeId node and get the first child of this node.
+ Since the first child is Text node invoking the "getPrefix()"
+ method will cause "null" to be returned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="textNode" type="Node"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"emp:employeeId"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<assertNotNull actual="testEmployee" id="empEmployeeNotNull"/>
+<firstChild interface="Node" obj="testEmployee" var="textNode"/>
+<prefix obj="textNode" var="prefix"/>
+<assertNull actual="prefix" id="textNodePrefix"/>
+</test>
diff --git a/test/testcases/tests/level2/core/prefix03.xml b/test/testcases/tests/level2/core/prefix03.xml
new file mode 100644
index 0000000..b467034
--- /dev/null
+++ b/test/testcases/tests/level2/core/prefix03.xml
@@ -0,0 +1,44 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="prefix03">
+<metadata>
+<title>prefix03</title>
+<creator>NIST</creator>
+<description>
+ The "getPrefix()" method for a node
+ returns the namespace prefix of this node, or null if it is unspecified.
+
+ Retrieve the first emp:employee node and invoke the getPrefix() method."
+ The method should return "emp".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"emp:employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<assertNotNull actual="testEmployee" id="empEmployeeNotNull"/>
+<prefix obj="testEmployee" var="prefix"/>
+<assertEquals actual="prefix" expected='"emp"' id="prefix" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/prefix04.xml b/test/testcases/tests/level2/core/prefix04.xml
new file mode 100644
index 0000000..6e1ed3f
--- /dev/null
+++ b/test/testcases/tests/level2/core/prefix04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="prefix04">
+<metadata>
+<title>prefix04</title>
+<creator>NIST</creator>
+<description>
+ The "getPrefix()" method for a node
+ returns the namespace prefix of this node, or null if it is unspecified.
+
+ Retrieve the first employee node and invoke the getPrefix() method."
+ The method should return "null".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testEmployee" type="Node"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="testEmployee"/>
+<prefix obj="testEmployee" var="prefix"/>
+<assertNull actual="prefix" id="throw_Null"/>
+</test>
diff --git a/test/testcases/tests/level2/core/prefix05.xml b/test/testcases/tests/level2/core/prefix05.xml
new file mode 100644
index 0000000..ca5c48a
--- /dev/null
+++ b/test/testcases/tests/level2/core/prefix05.xml
@@ -0,0 +1,53 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="prefix05">
+<metadata>
+<title>prefix05</title>
+<creator>NIST</creator>
+<description>
+ The "setPrefix(prefix)" method raises a
+ NAMESPACE_ERR DOMException if the specified node is an attribute
+ and the specified prefix is xmlns and the namespaceURI is different from
+ http://www.w3.org/2000/xmlns.
+
+ Attempt to insert "xmlns" as the new namespace prefix on the emp:domestic
+ attribute within the emp:address node.
+ An exception should be raised since the namespaceURI of this node is not
+ http://www.w3.org/2000/xmlns.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-NodeNSPrefix')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="addrNode" type="Element"/>
+<var name="addrAttr" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;emp:address&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="addrNode"/>
+<assertNotNull actual="addrNode" id="empAddrNotNull"/>
+<getAttributeNode obj="addrNode" name="&quot;emp:domestic&quot;" var="addrAttr"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<prefix obj="addrAttr" value="&quot;xmlns&quot;"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/prefix06.xml b/test/testcases/tests/level2/core/prefix06.xml
new file mode 100644
index 0000000..8a725d9
--- /dev/null
+++ b/test/testcases/tests/level2/core/prefix06.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="prefix06">
+<metadata>
+<title>prefix06</title>
+<creator>NIST</creator>
+<description>
+ The "setPrefix(prefix)" method raises a
+ INVALID_CHARACTER_ERR DOMException if the specified
+ prefix contains an illegal character.
+
+ Attempt to insert a new namespace prefix on the first employee node.
+ An exception should be raised since the namespace prefix has an invalid
+ character.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-NodeNSPrefix')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="employeeNode"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<prefix obj="employeeNode" value="&quot;pre^fix xmlns='http//www.nist.gov'&quot;"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/prefix07.xml b/test/testcases/tests/level2/core/prefix07.xml
new file mode 100644
index 0000000..c498b33
--- /dev/null
+++ b/test/testcases/tests/level2/core/prefix07.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="prefix07">
+<metadata>
+<title>prefix07</title>
+<creator>NIST</creator>
+<description>
+ The "setPrefix(prefix)" method raises a
+ NAMESPACE_ERR DOMException if the specified
+ prefix if malformed.
+
+ Attempt to insert a new namespace prefix on the second employee node.
+ An exception should be raised since the namespace prefix is malformed.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-NodeNSPrefix')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="0" var="employeeNode"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<prefix obj="employeeNode" value="&quot;emp::&quot;"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/prefix08.xml b/test/testcases/tests/level2/core/prefix08.xml
new file mode 100644
index 0000000..69a1481
--- /dev/null
+++ b/test/testcases/tests/level2/core/prefix08.xml
@@ -0,0 +1,63 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="prefix08">
+<metadata>
+<title>prefix08</title>
+<creator>NIST</creator>
+<description>
+ The "setPrefix(prefix)" method causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Get the FIRST item
+ from the entity reference and execute the "setPrefix(prefix)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-NodeNSPrefix')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="genderNode" type="Node"/>
+<var name="entRef" type="Node"/>
+<var name="entElement" type="Node"/>
+<var name="createdNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"gender"' var="genderList"/>
+<item interface="NodeList" obj="genderList" index="2" var="genderNode"/>
+<firstChild interface="Node" obj="genderNode" var="entRef"/>
+<nodeType var="nodeType" obj="entRef"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entRef" name='"ent4"' obj="doc"/>
+ <assertNotNull actual="entRef" id="createdEntRefNotNull"/>
+</if>
+<firstChild interface="Node" obj="entRef" var="entElement"/>
+<assertNotNull actual="entElement" id="entElement"/>
+<createElement obj="doc" tagName='"text3"' var="createdNode"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<prefix obj="entElement" value='"newPrefix"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/prefix09.xml b/test/testcases/tests/level2/core/prefix09.xml
new file mode 100644
index 0000000..f4d671f
--- /dev/null
+++ b/test/testcases/tests/level2/core/prefix09.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="prefix09">
+<metadata>
+<title>prefix09</title>
+<creator>NIST</creator>
+<description>
+ The "setPrefix(prefix)" method raises a
+ NAMESPACE_ERR DOMException if the specified node is an attribute
+ and the qualifiedName of this node is xmlns.
+
+ Attempt to set the prefix on the xmlns attribute within the fourth address
+ element.
+ An exception should be raised since the qualifiedName of this attribute
+ is "xmlns".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-NodeNSPrefix')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<!-- this test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="addrNode" type="Element"/>
+<var name="addrAttr" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"address"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="3" var="addrNode"/>
+<getAttributeNode obj="addrNode" name='"xmlns"' var="addrAttr"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<prefix obj="addrAttr" value='"xxx"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/prefix10.xml b/test/testcases/tests/level2/core/prefix10.xml
new file mode 100644
index 0000000..b9c3154
--- /dev/null
+++ b/test/testcases/tests/level2/core/prefix10.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="prefix10">
+<metadata>
+<title>prefix10</title>
+<creator>NIST</creator>
+<description>
+ The "setPrefix(prefix)" method raises a
+ NAMESPACE_ERR DOMException if the specified
+ prefix is xml and the namespaceURI is different from
+ http://www.w3.org/XML/1998/namespace.
+
+ Attempt to insert "xml" as the new namespace prefix on the first employee node.
+ An exception should be raised since the namespaceURI of this node is not
+ http://www.w3.org/XML/1998/namespace.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-NodeNSPrefix"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-NodeNSPrefix')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname="&quot;employee&quot;" var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<prefix obj="employeeNode" value="&quot;xml&quot;"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/prefix11.xml b/test/testcases/tests/level2/core/prefix11.xml
new file mode 100644
index 0000000..187f9bc
--- /dev/null
+++ b/test/testcases/tests/level2/core/prefix11.xml
@@ -0,0 +1,57 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="prefix11">
+<metadata>
+<title>prefix11</title>
+<creator>NIST</creator>
+<description>
+ The "setPrefix(prefix)" method raises a
+ NAMESPACE_ERR DOMException if the specified
+ prefix is set on a node with a namespaceURI that is null.
+
+ Attempt to insert a new namespace prefix on the second employee node.
+ An exception should be raised since the namespace prefix is set
+ on a node whose namespaceURI is null.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('')/setraises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="employeeNode" type="Node"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"employee"' var="elementList"/>
+<item interface="NodeList" obj="elementList" index="1" var="employeeNode"/>
+<!-- element has a NS in staffNS.svg, create an null NS'd element -->
+<if><contentType type="image/svg+xml"/>
+<createElementNS var="employeeNode" obj="doc"
+ namespaceURI="nullNS" qualifiedName='"employee"'/>
+</if>
+<namespaceURI obj="employeeNode" var="namespaceURI"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<prefix obj="employeeNode" value='"employee1"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+<assertNull actual="namespaceURI" id="employeeNS"/>
+</test>
diff --git a/test/testcases/tests/level2/core/publicId01.xml b/test/testcases/tests/level2/core/publicId01.xml
new file mode 100644
index 0000000..4e70f3c
--- /dev/null
+++ b/test/testcases/tests/level2/core/publicId01.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="publicId01">
+<metadata>
+<title>publicId01</title>
+<creator>NIST</creator>
+<description>
+ The "getPublicId()" method of a documenttype node contains
+ the public identifier associated with the external subset.
+
+ Retrieve the documenttype.
+ Apply the "getPublicId()" method. The string "STAFF" should be
+ returned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-Core-DocType-publicId"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="publicId" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<publicId interface="DocumentType" obj="docType" var="publicId"/>
+<assertEquals actual="publicId" expected="&quot;STAFF&quot;" id="throw_Equals" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/removeAttributeNS01.xml b/test/testcases/tests/level2/core/removeAttributeNS01.xml
new file mode 100644
index 0000000..e054ccb
--- /dev/null
+++ b/test/testcases/tests/level2/core/removeAttributeNS01.xml
@@ -0,0 +1,64 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="removeAttributeNS01">
+<metadata>
+<title>removeAttributeNS01</title>
+<creator>NIST</creator>
+<description>
+ The "removeAttributeNS(namespaceURI,localName)" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Try to remove an attribute
+ from the entity reference by executing the
+ "removeAttributeNS(namespaceURI,localName)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElRemAtNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElRemAtNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="gen" type="Node"/>
+<var name="gList" type="NodeList"/>
+<var name="genElement" type="Element"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<firstChild var="gen" obj="gender" interface="Node"/>
+<nodeType var="nodeType" obj="gen"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference name='"ent4"' obj="doc" var="gen"/>
+ <assertNotNull actual="gen" id="createdEntRefNotNull"/>
+</if>
+<childNodes obj="gen" var="gList"/>
+<item interface="NodeList" obj="gList" var="genElement" index="0"/>
+<assertNotNull actual="genElement" id="notnull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<removeAttributeNS obj="genElement" namespaceURI='"www.xyz.com"' localName='"local1"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/removeAttributeNS02.xml b/test/testcases/tests/level2/core/removeAttributeNS02.xml
new file mode 100644
index 0000000..880e7da
--- /dev/null
+++ b/test/testcases/tests/level2/core/removeAttributeNS02.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2003 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="removeAttributeNS02">
+<metadata>
+<title>removeAttributeNS02</title>
+<creator>NIST</creator>
+<description>
+ The "removeAttributeNS(namespaceURI,localName)" removes an attribute by
+ local name and namespace URI. If the removed attribute has a
+ default value it is immediately replaced. The replacing attribute has the same
+ namespace URI and local name, as well as the original prefix.
+
+ Retrieve the attribute named "emp:local" from emp:address
+ node, then remove the "emp:local"
+ attribute by invoking the "removeAttributeNS(namespaceURI,localName)" method.
+ The "emp:local" attribute has a default value defined in the
+ DTD file, that value should immediately replace the old
+ value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElRemAtNS"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=238"/>
+</metadata>
+<!-- this test requires namespace awareness and validation -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<var name="addrAttr" type="Attr"/>
+<var name="attr" type="DOMString"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="localName" type="DOMString"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;emp:address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<removeAttributeNS obj="testAddr" namespaceURI='"http://www.nist.gov"' localName='"local1"'/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;emp:address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<getAttributeNodeNS obj="testAddr" var="addrAttr" namespaceURI='"http://www.nist.gov"' localName='"local1"'/>
+<getAttributeNS obj="testAddr" var="attr" namespaceURI='"http://www.nist.gov"' localName='"local1"'/>
+<namespaceURI obj="addrAttr" var="namespaceURI"/>
+<localName obj="addrAttr" var="localName"/>
+<prefix obj="testAddr" var="prefix"/>
+<assertEquals actual="attr" expected='"FALSE"' ignoreCase="false" id="attr"/>
+<assertEquals actual="namespaceURI" expected='"http://www.nist.gov"' ignoreCase="false" id="uri"/>
+<assertEquals actual="localName" expected='"local1"' ignoreCase="false" id="lname"/>
+<assertEquals actual="prefix" expected='"emp"' ignoreCase="false" id="prefix"/>
+</test>
diff --git a/test/testcases/tests/level2/core/removeNamedItemNS01.xml b/test/testcases/tests/level2/core/removeNamedItemNS01.xml
new file mode 100644
index 0000000..6ac9efe
--- /dev/null
+++ b/test/testcases/tests/level2/core/removeNamedItemNS01.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="removeNamedItemNS01">
+<metadata>
+<title>removeNamedItemNS01</title>
+<creator>NIST</creator>
+<description>
+ The "removeNamedItemNS(namespaceURI,localName)" method for a
+ NamedNodeMap should remove a node specified by localName and namespaceURI.
+
+ Retrieve a list of elements with tag name "address".
+ Access the second element from the list and get its attributes.
+ Try to remove the attribute node with local name "domestic"
+ and namespace uri "http://www.usa.com" with
+ method removeNamedItemNS(namespaceURI,localName).
+ Check to see if the node has been removed.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1074577549"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="newAttr" type="Attr"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"address"'/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="1"/>
+<attributes obj="testAddress" var="attributes"/>
+<removeNamedItemNS var="removedNode" interface="NamedNodeMap" obj="attributes" namespaceURI='"http://www.usa.com"' localName='"domestic"'/>
+<assertNotNull actual="removedNode" id="retval"/>
+<getNamedItem obj="attributes" var="newAttr" name='"dmstc:domestic"'/>
+<assertNull actual="newAttr" id="nodeRemoved"/>
+</test>
diff --git a/test/testcases/tests/level2/core/removeNamedItemNS02.xml b/test/testcases/tests/level2/core/removeNamedItemNS02.xml
new file mode 100644
index 0000000..35915fb
--- /dev/null
+++ b/test/testcases/tests/level2/core/removeNamedItemNS02.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="removeNamedItemNS02">
+<metadata>
+<title>removeNamedItemNS02</title>
+<creator>NIST</creator>
+<description>
+ The "removeNamedItemNS(namespaceURI,localName)" method for a
+ NamedNodeMap should raise NOT_FOUND_ERR DOMException if
+ there is no node with the specified namespaceURI and localName in this map.
+
+ Retrieve a list of elements with tag name "address".
+ Access the second element from the list and get its attributes.
+ Try to remove an attribute node with local name "domest"
+ and namespace uri "http://www.usa.com" with
+ method removeNamedItemNS(namespaceURI,localName).
+ This should raise NOT_FOUND_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-removeNamedItemNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-removeNamedItemNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.usa.com&quot;"/>
+<var name="localName" type="DOMString" value="&quot;domest&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="1"/>
+<attributes obj="testAddress" var="attributes"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeNamedItemNS var="removedNode" interface="NamedNodeMap" obj="attributes" namespaceURI="namespaceURI" localName="localName"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/removeNamedItemNS03.xml b/test/testcases/tests/level2/core/removeNamedItemNS03.xml
new file mode 100644
index 0000000..43bc0c0
--- /dev/null
+++ b/test/testcases/tests/level2/core/removeNamedItemNS03.xml
@@ -0,0 +1,71 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="removeNamedItemNS03">
+<metadata>
+<title>removeNamedItemNS03</title>
+<creator>NIST</creator>
+<description>
+ The "removeNamedItemNS(namespaceURI,localName)" method for a
+ NamedNodeMap should raise NO_MODIFICATION_ALLOWED_ERR DOMException if
+ this map is readonly.
+
+ Retrieve a list of "gender" elements. Get access to the THIRD element
+ which contains an ENTITY_REFERENCE child node. Try to remove the attribute
+ in the node's map with method removeNamedItemNS(namespaceURI,localName).
+ This should result in NO_MODIFICATION_ALLOWED_ERR
+ DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-removeNamedItemNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-removeNamedItemNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="namespaceURI" type="DOMString" value='"http://www.w3.org/2000/xmlns/"'/>
+<var name="localName" type="DOMString" value="&quot;local1&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="nList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="n2List" type="NodeList"/>
+<var name="child2" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="removedNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="2"/>
+<childNodes obj="testAddress" var="nList"/>
+<item interface="NodeList" obj="nList" var="child" index="0"/>
+<nodeType var="nodeType" obj="child"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="child" name='"ent4"' obj="doc"/>
+ <assertNotNull actual="child" id="createdEntRefNotNull"/>
+</if>
+<childNodes obj="child" var="n2List"/>
+<item interface="NodeList" obj="n2List" var="child2" index="0"/>
+<assertNotNull actual="child2" id="notnull"/>
+<attributes obj="child2" var="attributes"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<removeNamedItemNS var="removedNode" interface="NamedNodeMap" obj="attributes" namespaceURI="namespaceURI" localName="localName"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNS01.xml b/test/testcases/tests/level2/core/setAttributeNS01.xml
new file mode 100644
index 0000000..7892549
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNS01.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNS01">
+<metadata>
+<title>setAttributeNS01</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNS(namespaceURI,qualifiedName,Value)" method raises a
+ INVALID_CHARACTER_ERR DOMException if the specified
+ prefix contains an illegal character.
+
+ Attempt to add a new attribute on the first employee node.
+ An exception should be raised since the "qualifiedName" has an invalid
+ character.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElSetAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;emp:qual?name&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;employee&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<setAttributeNS obj="testAddr" namespaceURI="namespaceURI" qualifiedName="qualifiedName" value="&quot;newValue&quot;"/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNS02.xml b/test/testcases/tests/level2/core/setAttributeNS02.xml
new file mode 100644
index 0000000..8eca054
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNS02.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNS02">
+<metadata>
+<title>setAttributeNS02</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNS(namespaceURI,qualifiedName,value)" method raises a
+ NAMESPACE_ERR DOMException if the specified
+ qualifiedName if malformed.
+
+ Attempt to add a new attribute on the second employee node.
+ An exception should be raised since the "qualifiedName" is malformed.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElSetAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;emp:&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;emp:employee&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<setAttributeNS obj="testAddr" namespaceURI="namespaceURI" qualifiedName="qualifiedName" value="&quot;newValue&quot;"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNS03.xml b/test/testcases/tests/level2/core/setAttributeNS03.xml
new file mode 100644
index 0000000..e63e35b
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNS03.xml
@@ -0,0 +1,67 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNS03">
+<metadata>
+<title>setAttributeNS03</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNS(namespaceURI,qualifiedName,value)" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Try to set an attribute
+ in the entity reference by executing the
+ "setAttributeNS(namespaceURI,qualifiedName,value)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElSetAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;www.xyz.com&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;emp:local1&quot;"/>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="genList" type="NodeList"/>
+<var name="gen" type="Node"/>
+<var name="gList" type="NodeList"/>
+<var name="genElement" type="Element"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<childNodes obj="gender" var="genList"/>
+<item interface="NodeList" obj="genList" var="gen" index="0"/>
+<nodeType var="nodeType" obj="gen"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="gen" name='"ent4"' obj="doc"/>
+ <assertNotNull actual="gen" id="createdEntRefNotNull"/>
+</if>
+<childNodes obj="gen" var="gList"/>
+<item interface="NodeList" obj="gList" var="genElement" index="0"/>
+<assertNotNull actual="genElement" id="notnull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setAttributeNS obj="genElement" namespaceURI="namespaceURI" qualifiedName="qualifiedName" value="&quot;newValue&quot;"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNS04.xml b/test/testcases/tests/level2/core/setAttributeNS04.xml
new file mode 100644
index 0000000..0544e46
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNS04.xml
@@ -0,0 +1,63 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNS04">
+<metadata>
+<title>setAttributeNS04</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNS(namespaceURI,qualifiedName,value)" method adds a new attribute.
+ If an attribute with the same local name and namespace URI is already present
+ on the element, its prefix is changed to be the prefix part of the "qualifiedName",
+ and its vale is changed to be the "value" paramter.
+ null value if no previously existing Attr node with the
+ same name was replaced.
+
+ Add a new attribute to the "emp:address" element.
+ Check to see if the new attribute has been successfully added to the document
+ by getting the attributes value, namespace URI, local Name and prefix.
+ The prefix will be changed to the prefix part of the "qualifiedName"
+ and its value changed to the "value" parameter.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<var name="addrAttr" type="Attr"/>
+<var name="resultAttr" type="DOMString"/>
+<var name="resultNamespaceURI" type="DOMString"/>
+<var name="resultLocalName" type="DOMString"/>
+<var name="resultPrefix" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;emp:address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<setAttributeNS obj="testAddr" namespaceURI='"http://www.nist.gov"' qualifiedName='"newprefix:zone"' value='"newValue"'/>
+<getAttributeNodeNS obj="testAddr" var="addrAttr" namespaceURI='"http://www.nist.gov"' localName='"zone"'/>
+<getAttributeNS obj="testAddr" var="resultAttr" namespaceURI='"http://www.nist.gov"' localName='"zone"'/>
+<assertEquals actual="resultAttr" expected='"newValue"' id="attrValue" ignoreCase="false"/>
+<namespaceURI obj="addrAttr" var="resultNamespaceURI"/>
+<assertEquals actual="resultNamespaceURI" expected='"http://www.nist.gov"' id="nsuri" ignoreCase="false"/>
+<localName obj="addrAttr" var="resultLocalName"/>
+<assertEquals actual="resultLocalName" expected='"zone"' id="lname" ignoreCase="false"/>
+<prefix obj="addrAttr" var="resultPrefix"/>
+<assertEquals actual="resultPrefix" expected='"newprefix"' id="prefix" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNS05.xml b/test/testcases/tests/level2/core/setAttributeNS05.xml
new file mode 100644
index 0000000..3d1174f
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNS05.xml
@@ -0,0 +1,54 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNS05">
+<metadata>
+<title>setAttributeNS05</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNS(namespaceURI,qualifiedName,value)" method adds a new attribute.
+ If an attribute with the same local name and namespace URI is already present
+ on the element, its prefix is changed to be the prefix part of the "qualifiedName",
+ and its vale is changed to be the "value" paramter.
+ null value if no previously existing Attr node with the
+ same name was replaced.
+
+ Add a new attribute to the "emp:address" element.
+ Check to see if the new attribute has been successfully added to the document.
+ The new attribute "&lt;newValue&gt;" contains markup and therefore is escaped
+ by the implementation.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElGetAttrNS"/>
+</metadata>
+<var name="localName" type="DOMString" value="&quot;newAttr&quot;"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.newattr.com&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;emp:newAttr&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<var name="addrAttr" type="Attr"/>
+<var name="resultAttr" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;emp:address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<setAttributeNS obj="testAddr" namespaceURI="namespaceURI" qualifiedName="qualifiedName" value="&quot;&lt;newValue&gt;&quot;"/>
+<getAttributeNS obj="testAddr" var="resultAttr" namespaceURI="namespaceURI" localName="localName"/>
+<assertEquals actual="resultAttr" expected="&quot;&lt;newValue&gt;&quot;" id="throw_Equals" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNS06.xml b/test/testcases/tests/level2/core/setAttributeNS06.xml
new file mode 100644
index 0000000..3d42470
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNS06.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNS06">
+<metadata>
+<title>setAttributeNS06</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNS(namespaceURI,localName,value)" method raises a
+ NAMESPACE_ERR DOMException if the "qualifiedName" has a
+ prefix of "xml" and the namespaceURI is different from
+ http://www.w3.org/XML/1998/namespace.
+
+ Attempt to add an attribute with a prefix of "xml" as the on the first employee node.
+ An exception should be raised since the namespaceURI of this node is not
+ http://www.w3.org/XML/1998/namespace.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElSetAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;xml:qualifiedName&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;employee&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<setAttributeNS obj="testAddr" namespaceURI="namespaceURI" qualifiedName="qualifiedName" value="&quot;newValue&quot;"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNS07.xml b/test/testcases/tests/level2/core/setAttributeNS07.xml
new file mode 100644
index 0000000..8a2e5b7
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNS07.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNS07">
+<metadata>
+<title>setAttributeNS07</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNS(namespaceURI,localName,value)" method raises a
+ NAMESPACE_ERR DOMException if the "qualifiedName" has a
+ value of "xmlns" and the namespaceURI is different from
+ http://www.w3.org/2000/xmlns.
+
+ Attempt to add an attribute with a "qualifiedName" of "xmlns" as the
+ on the first employee node.
+ An exception should be raised since the namespaceURI of this node is not
+ http://www.w3.org/2000/xmlns.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NAMESPACE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElSetAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NAMESPACE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;xmlns&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;employee&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<setAttributeNS obj="testAddr" namespaceURI="namespaceURI" qualifiedName="qualifiedName" value="&quot;newValue&quot;"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNS09.xml b/test/testcases/tests/level2/core/setAttributeNS09.xml
new file mode 100644
index 0000000..a1205ea
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNS09.xml
@@ -0,0 +1,63 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNS09">
+<metadata>
+<title>setAttributeNS09</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNS(namespaceURI,qualifiedName,value)" method adds a new attribute.
+ If an attribute with the same local name and namespace URI is already present
+ on the element, its prefix is changed to be the prefix part of the "qualifiedName",
+ and its vale is changed to be the "value" paramter.
+ null value if no previously existing Attr node with the
+ same name was replaced.
+
+ Add a new attribute to the "emp:address" element.
+ Check to see if the new attribute has been successfully added to the document
+ by getting the attributes value, namespace URI, local Name and prefix.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+</metadata>
+<var name="localName" type="DOMString" value="&quot;newAttr&quot;"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.newattr.com&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;emp:newAttr&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<var name="addrAttr" type="Attr"/>
+<var name="resultAttr" type="DOMString"/>
+<var name="resultNamespaceURI" type="DOMString"/>
+<var name="resultLocalName" type="DOMString"/>
+<var name="resultPrefix" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;emp:address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<setAttributeNS obj="testAddr" namespaceURI="namespaceURI" qualifiedName="qualifiedName" value="&quot;newValue&quot;"/>
+<getAttributeNodeNS obj="testAddr" var="addrAttr" namespaceURI="namespaceURI" localName="localName"/>
+<getAttributeNS obj="testAddr" var="resultAttr" namespaceURI="namespaceURI" localName="localName"/>
+<assertEquals actual="resultAttr" expected='"newValue"' id="attrValue" ignoreCase="false"/>
+<namespaceURI obj="addrAttr" var="resultNamespaceURI"/>
+<assertEquals actual="resultNamespaceURI" expected='"http://www.newattr.com"' id="nsuri" ignoreCase="false"/>
+<localName obj="addrAttr" var="resultLocalName"/>
+<assertEquals actual="resultLocalName" expected='"newAttr"' id="lname" ignoreCase="false"/>
+<prefix obj="addrAttr" var="resultPrefix"/>
+<assertEquals actual="resultPrefix" expected='"emp"' id="prefix" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNS10.xml b/test/testcases/tests/level2/core/setAttributeNS10.xml
new file mode 100644
index 0000000..6c27217
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNS10.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNS10">
+<metadata>
+<title>setAttributeNS10</title>
+<creator>Curt Arnold</creator>
+<description>
+Element.setAttributeNS with an empty qualified name should cause an INVALID_CHARACTER_ERR.
+</description>
+<date qualifier="created">2004-03-09</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElSetAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=525"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value='"http://www.example.gov"'/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"em"'/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertDOMException id="throw_INVALID_CHARACTER_ERR">
+<INVALID_CHARACTER_ERR>
+<setAttributeNS obj="testAddr" namespaceURI="namespaceURI" qualifiedName='""' value='"newValue"'/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNodeNS01.xml b/test/testcases/tests/level2/core/setAttributeNodeNS01.xml
new file mode 100644
index 0000000..8239fab
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNodeNS01.xml
@@ -0,0 +1,65 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNodeNS01">
+<metadata>
+<title>setAttributeNodeNS01</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNode(newAttr)" method raises an
+ "INUSE_ATTRIBUTE_ERR DOMException if the "newAttr"
+ is already an attribute of another element.
+
+ Retrieve the first emp:address and append
+ a newly created element. The "createAttributeNS(namespaceURI,qualifiedName)"
+ and "setAttributeNodeNS(newAttr)" methods are invoked
+ to create and add a new attribute to the newly created
+ Element. The "setAttributeNodeNS(newAttr)" method is
+ once again called to add the new attribute causing an
+ exception to be raised since the attribute is already
+ an attribute of another element.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElSetAtNodeNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.newattr.com&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;emp:newAttr&quot;"/>
+<var name="doc" type="Document"/>
+<var name="newElement" type="Element"/>
+<var name="newAttr" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<var name="setAttr1" type="Attr"/>
+<var name="setAttr2" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;emp:address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<createElement obj="doc" var="newElement" tagName="&quot;newElement&quot;"/>
+<appendChild var="appendedChild" obj="testAddr" newChild="newElement"/>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<setAttributeNodeNS var="setAttr1" obj="newElement" newAttr="newAttr"/>
+<assertDOMException id="throw_INUSE_ATTRIBUTE_ERR">
+<INUSE_ATTRIBUTE_ERR>
+<setAttributeNodeNS var="setAttr2" obj="testAddr" newAttr="newAttr"/>
+</INUSE_ATTRIBUTE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNodeNS02.xml b/test/testcases/tests/level2/core/setAttributeNodeNS02.xml
new file mode 100644
index 0000000..3b70fb9
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNodeNS02.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNodeNS02">
+<metadata>
+<title>setAttributeNodeNS01</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNodeNS(namespaceURI,qualifiedName,value)" method for an attribute causes the
+ DOMException NO_MODIFICATION_ALLOWED_ERR to be raised
+ if the node is readonly.
+
+ Obtain the children of the THIRD "gender" element. The elements
+ content is an entity reference. Try to set an attribute
+ in the entity reference by executing the
+ "setAttributeNodeNS(newAttr)" method.
+ This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElSetAtNodeNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="false"/>
+<var name="doc" type="Document"/>
+<var name="genderList" type="NodeList"/>
+<var name="gender" type="Node"/>
+<var name="genList" type="NodeList"/>
+<var name="gen" type="Node"/>
+<var name="gList" type="NodeList"/>
+<var name="genElement" type="Element"/>
+<var name="newAttr" type="Attr"/>
+<var name="setAttr1" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<if>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="genderList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="genderList" var="gender" index="2"/>
+<childNodes obj="gender" var="genList"/>
+<item interface="NodeList" obj="genList" var="gen" index="0"/>
+<else>
+<createEntityReference var="gen" name='"ent4"' obj="doc"/>
+</else>
+</if>
+<childNodes obj="gen" var="gList"/>
+<item interface="NodeList" obj="gList" var="genElement" index="0"/>
+<assertNotNull actual="genElement" id="notnull"/>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI='"www.xyz.com"' qualifiedName='"emp:local1"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setAttributeNodeNS var="setAttr1" obj="genElement" newAttr="newAttr"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNodeNS03.xml b/test/testcases/tests/level2/core/setAttributeNodeNS03.xml
new file mode 100644
index 0000000..0b4f368
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNodeNS03.xml
@@ -0,0 +1,52 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNodeNS03">
+<metadata>
+<title>setAttributeNodeNS03</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNodeNS(newAttr)" adds a new attribute.
+ If an attribute with that local name and that namespaceURI is already
+ present in the element, it is replaced by the new one.
+
+ Retrieve the first emp:address element and add a new attribute
+ to the element. Since an attribute with the same local name
+ and namespaceURI as the newly created attribute does not exist
+ the value "null" is returned.
+ This test uses the "createAttributeNS(namespaceURI,localName)
+ method from the Document interface to create the new attribute to add.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.newattr.com&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;emp:newAttr&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<var name="newAttr" type="Attr"/>
+<var name="newAddrAttr" type="Attr"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;emp:address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<setAttributeNodeNS obj="testAddr" newAttr="newAttr" var="newAddrAttr"/>
+<assertNull actual="newAddrAttr" id="throw_Null"/>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNodeNS04.xml b/test/testcases/tests/level2/core/setAttributeNodeNS04.xml
new file mode 100644
index 0000000..86ccd12
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNodeNS04.xml
@@ -0,0 +1,54 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNodeNS04">
+<metadata>
+<title>setAttributeNodeNS04</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNodeNS(newAttr)" adds a new attribute.
+ If an attribute with that local name and that namespaceURI is already
+ present in the element, it is replaced by the new one.
+
+ Retrieve the first emp:address element and add a new attribute
+ to the element. Since an attribute with the same local name
+ and namespaceURI already exists, it is replaced by the new one and
+ returns the replaced "Attr" node.
+ This test uses the "createAttributeNS(namespaceURI,localName)
+ method from the Document interface to create the new attribute to add.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-F68D095"/>
+</metadata>
+<!-- test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<var name="newAttr" type="Attr"/>
+<var name="newAddrAttr" type="Attr"/>
+<var name="newName" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"emp:address"'/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertNotNull actual="testAddr" id="empAddrNotNull"/>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI='"http://www.nist.gov"' qualifiedName='"xxx:domestic"'/>
+<setAttributeNodeNS obj="testAddr" newAttr="newAttr" var="newAddrAttr"/>
+<nodeName obj="newAddrAttr" var="newName"/>
+<assertEquals actual="newName" expected='"emp:domestic"' id="nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/setAttributeNodeNS05.xml b/test/testcases/tests/level2/core/setAttributeNodeNS05.xml
new file mode 100644
index 0000000..f00fc54
--- /dev/null
+++ b/test/testcases/tests/level2/core/setAttributeNodeNS05.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setAttributeNodeNS05">
+<metadata>
+<title>setAttributeNodeNS05</title>
+<creator>NIST</creator>
+<description>
+ The "setAttributeNodeNS(newAttr)" method raises an
+ "WRONG_DOCUMENT_ERR DOMException if the "newAttr"
+ was created from a different document than the one that
+ created this document.
+
+ Retrieve the first emp:address and attempt to set a new
+ attribute node. The new
+ attribute was created from a document other than the
+ one that created this element, therefore a
+ WRONG_DOCUMENT_ERR DOMException should be raised.
+ This test uses the "createAttributeNS(newAttr)" method
+ from the Document interface.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElSetAtNodeNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.newattr.com&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;emp:newAttr&quot;"/>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddr" type="Node"/>
+<var name="setAttr1" type="Attr"/>
+<load var="doc1" href="staffNS" willBeModified="true"/>
+<load var="doc2" href="staffNS" willBeModified="true"/>
+<createAttributeNS obj="doc2" var="newAttr" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<getElementsByTagName interface="Document" obj="doc1" var="elementList" tagname="&quot;emp:address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddr" index="0"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<setAttributeNodeNS var="setAttr1" obj="testAddr" newAttr="newAttr"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setNamedItemNS01.xml b/test/testcases/tests/level2/core/setNamedItemNS01.xml
new file mode 100644
index 0000000..cbd98b9
--- /dev/null
+++ b/test/testcases/tests/level2/core/setNamedItemNS01.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setNamedItemNS01">
+<metadata>
+<title>setNamedItemNS01</title>
+<creator>NIST</creator>
+<description>
+ The "setNamedItemNS(arg)" method for a
+ NamedNodeMap should raise INUSE_ATTRIBUTE_ERR DOMException if
+ arg is an Attr that is already an attribute of another Element object.
+
+ Retrieve an attr node from the third "address" element whose local name
+ is "domestic" and namespaceURI is "http://www.netzero.com".
+ Invoke method setNamedItemNS(arg) on the map of the first "address" element with
+ arg being the attr node from above. Method should raise
+ INUSE_ATTRIBUTE_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-setNamedItemNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])"/>
+</metadata>
+<!-- this test requires namespace awareness -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="anotherElement" type="Node"/>
+<var name="anotherMap" type="NamedNodeMap"/>
+<var name="arg" type="Node"/>
+<var name="testAddress" type="Node"/>
+<var name="map" type="NamedNodeMap"/>
+<var name="setNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname='"address"'/>
+<item interface="NodeList" obj="elementList" var="anotherElement" index="2"/>
+<attributes obj="anotherElement" var="anotherMap"/>
+<getNamedItemNS obj="anotherMap" var="arg" namespaceURI='"http://www.netzero.com"' localName='"domestic"'/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="0"/>
+<attributes obj="testAddress" var="map"/>
+<assertDOMException id="throw_INUSE_ATTRIBUTE_ERR">
+<INUSE_ATTRIBUTE_ERR>
+<setNamedItemNS var="setNode" interface="NamedNodeMap" obj="map" arg="arg"/>
+</INUSE_ATTRIBUTE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setNamedItemNS02.xml b/test/testcases/tests/level2/core/setNamedItemNS02.xml
new file mode 100644
index 0000000..a1761bb
--- /dev/null
+++ b/test/testcases/tests/level2/core/setNamedItemNS02.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setNamedItemNS02">
+<metadata>
+<title>setNamedItemNS02</title>
+<creator>NIST</creator>
+<description>
+ The "setNamedItemNS(arg)" method for a
+ NamedNodeMap should raise WRONG_DOCUMENT_ERR DOMException if arg was
+ created from a different document than the one that created this map.
+
+ Create an attr node in a different document with qualifiedName equals
+ "dmstc:domestic" and namespaceURI is "http://www.usa.com".
+ Access the namednodemap of the first "address" element in this document.
+ Invoke method setNamedItemNS(arg) with arg being the attr node from above.
+ Method should raise WRONG_DOCUMENT_ERR DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-setNamedItemNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.usa.com&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;dmstc:domestic&quot;"/>
+<var name="doc" type="Document"/>
+<var name="anotherDoc" type="Document"/>
+<var name="arg" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="setNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<load var="anotherDoc" href="staffNS" willBeModified="true"/>
+<createAttributeNS obj="anotherDoc" var="arg" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<nodeValue obj="arg" value="&quot;Maybe&quot;"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="0"/>
+<attributes obj="testAddress" var="attributes"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<setNamedItemNS var="setNode" interface="NamedNodeMap" obj="attributes" arg="arg"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setNamedItemNS03.xml b/test/testcases/tests/level2/core/setNamedItemNS03.xml
new file mode 100644
index 0000000..77e08eb
--- /dev/null
+++ b/test/testcases/tests/level2/core/setNamedItemNS03.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setNamedItemNS03">
+<metadata>
+<title>setNamedItemNS03</title>
+<creator>NIST</creator>
+<description>
+ The "setNamedItemNS(arg)" method for a
+ NamedNodeMap should add a node using its namespaceURI and localName given that
+ there is no existing node with the same namespaceURI and localName in the map.
+
+ Create an attr node with namespaceURI "http://www.nist.gov",qualifiedName
+ "prefix:newAttr" and value "newValue".
+ Invoke method setNamedItemNS(arg) on the map of the first "address"
+ element where arg is identified by the namespaceURI and qualifiedName
+ from above. Method should return the newly added attr node.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-F68D080"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.nist.gov&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;prefix:newAttr&quot;"/>
+<var name="doc" type="Document"/>
+<var name="arg" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="retnode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="setNode" type="Node"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createAttributeNS obj="doc" var="arg" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<nodeValue obj="arg" value="&quot;newValue&quot;"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="0"/>
+<attributes obj="testAddress" var="attributes"/>
+<setNamedItemNS var="setNode" interface="NamedNodeMap" obj="attributes" arg="arg"/>
+<getNamedItemNS obj="attributes" var="retnode" namespaceURI="namespaceURI" localName="&quot;newAttr&quot;"/>
+<nodeValue obj="retnode" var="value"/>
+<assertEquals actual="value" expected="&quot;newValue&quot;" id="throw_Equals" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/setNamedItemNS04.xml b/test/testcases/tests/level2/core/setNamedItemNS04.xml
new file mode 100644
index 0000000..c6076ce
--- /dev/null
+++ b/test/testcases/tests/level2/core/setNamedItemNS04.xml
@@ -0,0 +1,73 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setNamedItemNS04">
+<metadata>
+<title>setNamedItemNS04</title>
+<creator>NIST</creator>
+<description>
+ The "setNamedItemNS(arg)" method for a
+ NamedNodeMap should raise NO_MODIFICATION_ALLOWED_ERR DOMException if
+ this map is readonly.
+
+ Retrieve a list of "gender" elements. Get access to the THIRD element
+ which contains an ENTITY_REFERENCE child node. Get access to the node's
+ map. Try to add an attribute node specified by arg with
+ method setNamedItemNS(arg). This should result in NO_MODIFICATION_ALLOWED_ERR
+ DOMException.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-setNamedItemNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.w3.org/2000/xmlns/&quot;"/>
+<var name="localName" type="DOMString" value="&quot;local1&quot;"/>
+<var name="doc" type="Document"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="nList" type="NodeList"/>
+<var name="child" type="Node"/>
+<var name="n2List" type="NodeList"/>
+<var name="child2" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="arg" type="Node"/>
+<var name="setNode" type="Node"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;gender&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="2"/>
+<childNodes obj="testAddress" var="nList"/>
+<item interface="NodeList" obj="nList" var="child" index="0"/>
+<nodeType var="nodeType" obj="child"/>
+<if><equals actual="nodeType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="child" name='"ent4"' obj="doc"/>
+ <assertNotNull actual="child" id="createdEntRefNotNull"/>
+</if>
+<childNodes obj="child" var="n2List"/>
+<item interface="NodeList" obj="n2List" var="child2" index="0"/>
+<assertNotNull actual="child2" id="notnull"/>
+<attributes obj="child2" var="attributes"/>
+<getNamedItemNS obj="attributes" var="arg" namespaceURI="namespaceURI" localName="localName"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setNamedItemNS var="setNode" interface="NamedNodeMap" obj="attributes" arg="arg"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/core/setNamedItemNS05.xml b/test/testcases/tests/level2/core/setNamedItemNS05.xml
new file mode 100644
index 0000000..5d1ccfc
--- /dev/null
+++ b/test/testcases/tests/level2/core/setNamedItemNS05.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="setNamedItemNS05">
+<metadata>
+<title>setNamedItemNS05</title>
+<creator>NIST</creator>
+<description>
+ The "setNamedItemNS(arg)" method for a
+ NamedNodeMap should replace an existing node n1 found in the map with arg if n1
+ has the same namespaceURI and localName as arg and return n1.
+
+ Create an attribute node in with namespaceURI "http://www.usa.com"
+ and qualifiedName "dmstc:domestic" whose value is "newVal".
+ Invoke method setNamedItemNS(arg) on the map of the first "address"
+ element. Method should return the old attribute node identified
+ by namespaceURI and qualifiedName from above,whose value is "Yes".
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS"/>
+</metadata>
+<var name="namespaceURI" type="DOMString" value="&quot;http://www.usa.com&quot;"/>
+<var name="qualifiedName" type="DOMString" value="&quot;dmstc:domestic&quot;"/>
+<var name="doc" type="Document"/>
+<var name="arg" type="Node"/>
+<var name="elementList" type="NodeList"/>
+<var name="testAddress" type="Node"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="retnode" type="Node"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="staffNS" willBeModified="true"/>
+<createAttributeNS obj="doc" var="arg" namespaceURI="namespaceURI" qualifiedName="qualifiedName"/>
+<nodeValue obj="arg" value="&quot;newValue&quot;"/>
+<getElementsByTagName interface="Document" obj="doc" var="elementList" tagname="&quot;address&quot;"/>
+<item interface="NodeList" obj="elementList" var="testAddress" index="0"/>
+<attributes obj="testAddress" var="attributes"/>
+<setNamedItemNS interface="NamedNodeMap" obj="attributes" var="retnode" arg="arg"/>
+<nodeValue obj="retnode" var="value"/>
+<assertEquals actual="value" expected="&quot;Yes&quot;" id="throw_Equals" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/core/systemId01.xml b/test/testcases/tests/level2/core/systemId01.xml
new file mode 100644
index 0000000..96d9c65
--- /dev/null
+++ b/test/testcases/tests/level2/core/systemId01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="systemId01">
+<metadata>
+<title>systemId01</title>
+<creator>NIST</creator>
+<description>
+ The "getSystemId()" method of a documenttype node contains
+ the system identifier associated with the external subset.
+
+ Retrieve the documenttype.
+ Apply the "getSystemId()" method. The string "staffNS.dtd" should be
+ returned.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-08-17</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-Core-DocType-systemId"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="systemId" type="DOMString"/>
+<var name="index" type="int"/>
+<load var="doc" href="staffNS" willBeModified="false"/>
+<doctype obj="doc" var="docType"/>
+<systemId interface="DocumentType" obj="docType" var="systemId"/>
+<assertURIEquals actual="systemId" file='"staffNS.dtd"' id="systemId"/>
+</test>
diff --git a/test/testcases/tests/level2/events/.cvsignore b/test/testcases/tests/level2/events/.cvsignore
new file mode 100644
index 0000000..cc87140
--- /dev/null
+++ b/test/testcases/tests/level2/events/.cvsignore
@@ -0,0 +1,2 @@
+dom2.dtd
+dom2.xsd
diff --git a/test/testcases/tests/level2/events/CVS/Entries b/test/testcases/tests/level2/events/CVS/Entries
new file mode 100644
index 0000000..278f226
--- /dev/null
+++ b/test/testcases/tests/level2/events/CVS/Entries
@@ -0,0 +1,30 @@
+D/files////
+/.cvsignore/1.2/Fri Apr 3 02:47:56 2009//
+/DocumentEventCast01.xml/1.2/Fri Apr 3 02:47:56 2009//
+/EventTargetCast01.xml/1.1/Fri Apr 3 02:47:56 2009//
+/alltests.xml/1.5/Fri Apr 3 02:47:56 2009//
+/createEvent01.xml/1.2/Fri Apr 3 02:47:56 2009//
+/createEvent02.xml/1.2/Fri Apr 3 02:47:56 2009//
+/createEvent03.xml/1.2/Fri Apr 3 02:47:56 2009//
+/createEvent04.xml/1.2/Fri Apr 3 02:47:56 2009//
+/createEvent05.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent01.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent02.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent03.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent04.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent05.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent06.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent07.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent08.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent09.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent10.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent11.xml/1.2/Fri Apr 3 02:47:56 2009//
+/dispatchEvent12.xml/1.3/Fri Apr 3 02:47:56 2009//
+/dispatchEvent13.xml/1.3/Fri Apr 3 02:47:56 2009//
+/initEvent01.xml/1.2/Fri Apr 3 02:47:56 2009//
+/initEvent02.xml/1.2/Fri Apr 3 02:47:56 2009//
+/initEvent03.xml/1.2/Fri Apr 3 02:47:56 2009//
+/initEvent04.xml/1.2/Fri Apr 3 02:47:56 2009//
+/initEvent05.xml/1.2/Fri Apr 3 02:47:56 2009//
+/initEvent06.xml/1.2/Fri Apr 3 02:47:56 2009//
+/metadata.xml/1.1/Fri Apr 3 02:47:56 2009//
diff --git a/test/testcases/tests/level2/events/CVS/Repository b/test/testcases/tests/level2/events/CVS/Repository
new file mode 100644
index 0000000..bb9fbb7
--- /dev/null
+++ b/test/testcases/tests/level2/events/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level2/events
diff --git a/test/testcases/tests/level2/events/CVS/Root b/test/testcases/tests/level2/events/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level2/events/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level2/events/CVS/Template b/test/testcases/tests/level2/events/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/events/CVS/Template
diff --git a/test/testcases/tests/level2/events/DocumentEventCast01.xml b/test/testcases/tests/level2/events/DocumentEventCast01.xml
new file mode 100644
index 0000000..9071c55
--- /dev/null
+++ b/test/testcases/tests/level2/events/DocumentEventCast01.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="DocumentEventCast01">
+<metadata>
+<title>DocumentEventCast01</title>
+<creator>Curt Arnold</creator>
+<description>
+A document is created using implementation.createDocument and
+cast to a DocumentEvent interface.
+</description>
+<date qualifier="created">2002-04-21</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docEvent" type="DocumentEvent"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<assign var="docEvent" value="doc"/>
+</test>
diff --git a/test/testcases/tests/level2/events/EventTargetCast01.xml b/test/testcases/tests/level2/events/EventTargetCast01.xml
new file mode 100644
index 0000000..3361b1a
--- /dev/null
+++ b/test/testcases/tests/level2/events/EventTargetCast01.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="EventTargetCast01">
+<metadata>
+<title>EventTargetCast01</title>
+<creator>Curt Arnold</creator>
+<description>
+A document is created using implementation.createDocument and
+cast to a EventTarget interface.
+</description>
+<date qualifier="created">2002-04-21</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<assign var="target" value="doc"/>
+</test>
diff --git a/test/testcases/tests/level2/events/alltests.xml b/test/testcases/tests/level2/events/alltests.xml
new file mode 100644
index 0000000..ede05f3
--- /dev/null
+++ b/test/testcases/tests/level2/events/alltests.xml
@@ -0,0 +1,46 @@
+<?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 suite SYSTEM "dom2.dtd">
+
+<suite xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="alltests">
+<metadata>
+<title>DOM Level 2 Events Test Suite</title>
+<creator>DOM Test Suite Project</creator>
+</metadata>
+ <suite.member href="DocumentEventCast01.xml"/>
+ <suite.member href="EventTargetCast01.xml"/>
+ <suite.member href="createEvent01.xml"/>
+ <suite.member href="createEvent02.xml"/>
+ <suite.member href="createEvent03.xml"/>
+ <suite.member href="createEvent04.xml"/>
+ <suite.member href="createEvent05.xml"/>
+ <suite.member href="dispatchEvent01.xml"/>
+ <suite.member href="dispatchEvent02.xml"/>
+ <suite.member href="dispatchEvent03.xml"/>
+ <suite.member href="dispatchEvent04.xml"/>
+ <suite.member href="dispatchEvent05.xml"/>
+ <suite.member href="dispatchEvent06.xml"/>
+ <suite.member href="dispatchEvent07.xml"/>
+ <suite.member href="dispatchEvent08.xml"/>
+ <suite.member href="dispatchEvent09.xml"/>
+ <suite.member href="dispatchEvent10.xml"/>
+ <suite.member href="dispatchEvent11.xml"/>
+ <suite.member href="dispatchEvent12.xml"/>
+ <suite.member href="dispatchEvent13.xml"/>
+ <suite.member href="initEvent01.xml"/>
+ <suite.member href="initEvent02.xml"/>
+ <suite.member href="initEvent03.xml"/>
+ <suite.member href="initEvent04.xml"/>
+ <suite.member href="initEvent05.xml"/>
+ <suite.member href="initEvent06.xml"/>
+</suite>
diff --git a/test/testcases/tests/level2/events/createEvent01.xml b/test/testcases/tests/level2/events/createEvent01.xml
new file mode 100644
index 0000000..c22986a
--- /dev/null
+++ b/test/testcases/tests/level2/events/createEvent01.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createEvent01">
+<metadata>
+<title>createEvent01</title>
+<creator>Curt Arnold</creator>
+<description>
+An object implementing the Event interface is created by using
+DocumentEvent.createEvent method with eventType equals "Events".
+</description>
+<date qualifier="created">2002-04-21</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent-createEvent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="event" type="Event"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="event" obj="doc" eventType='"Events"'/>
+<assertNotNull actual="event" id="notnull"/>
+</test>
diff --git a/test/testcases/tests/level2/events/createEvent02.xml b/test/testcases/tests/level2/events/createEvent02.xml
new file mode 100644
index 0000000..59a3bd4
--- /dev/null
+++ b/test/testcases/tests/level2/events/createEvent02.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createEvent02">
+<metadata>
+<title>createEvent02</title>
+<creator>Curt Arnold</creator>
+<description>
+An object implementing the Event interface is created by using
+DocumentEvent.createEvent method with eventType equals "MutationEvents".
+Only applicable if implementation supports MutationEvents.
+</description>
+<date qualifier="created">2002-04-21</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent-createEvent"/>
+</metadata>
+<hasFeature feature='"MutationEvents"' version='"2.0"'/>
+<var name="doc" type="Document"/>
+<var name="event" type="MutationEvent"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="event" obj="doc" eventType='"MutationEvents"'/>
+<assertNotNull actual="event" id="notnull"/>
+</test>
diff --git a/test/testcases/tests/level2/events/createEvent03.xml b/test/testcases/tests/level2/events/createEvent03.xml
new file mode 100644
index 0000000..e1fb15f
--- /dev/null
+++ b/test/testcases/tests/level2/events/createEvent03.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createEvent03">
+<metadata>
+<title>createEvent03</title>
+<creator>Curt Arnold</creator>
+<description>
+An object implementing the Event interface is created by using
+DocumentEvent.createEvent method with eventType equals "UIEvents".
+Only applicable if implementation supports the "UIEvents" feature.
+</description>
+<date qualifier="created">2002-04-21</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent-createEvent"/>
+</metadata>
+<hasFeature feature='"UIEvents"' version='"2.0"'/>
+<var name="doc" type="Document"/>
+<var name="event" type="UIEvent"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="event" obj="doc" eventType='"UIEvents"'/>
+<assertNotNull actual="event" id="notnull"/>
+</test>
diff --git a/test/testcases/tests/level2/events/createEvent04.xml b/test/testcases/tests/level2/events/createEvent04.xml
new file mode 100644
index 0000000..a5fd90c
--- /dev/null
+++ b/test/testcases/tests/level2/events/createEvent04.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createEvent04">
+<metadata>
+<title>createEvent04</title>
+<creator>Curt Arnold</creator>
+<description>
+An object implementing the Event interface is created by using
+DocumentEvent.createEvent method with eventType equals "UIEvents".
+Only applicable if implementation supports the "UIEvents" feature.
+</description>
+<date qualifier="created">2002-04-21</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent-createEvent"/>
+</metadata>
+<hasFeature feature='"MouseEvents"' version='"2.0"'/>
+<var name="doc" type="Document"/>
+<var name="event" type="MouseEvent"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="event" obj="doc" eventType='"MouseEvents"'/>
+<assertNotNull actual="event" id="notnull"/>
+</test>
diff --git a/test/testcases/tests/level2/events/createEvent05.xml b/test/testcases/tests/level2/events/createEvent05.xml
new file mode 100644
index 0000000..b76c592
--- /dev/null
+++ b/test/testcases/tests/level2/events/createEvent05.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="createEvent05">
+<metadata>
+<title>createEvent05</title>
+<creator>Curt Arnold</creator>
+<description>
+An object implementing the Event interface is created by using
+DocumentEvent.createEvent method with eventType equals "HTMLEvents".
+Only applicable if implementation supports the "HTMLEvents" feature.
+</description>
+<date qualifier="created">2002-04-21</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent-createEvent"/>
+</metadata>
+<hasFeature feature='"HTMLEvents"' version='"2.0"'/>
+<var name="doc" type="Document"/>
+<var name="event" type="Event"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="event" obj="doc" eventType='"HTMLEvents"'/>
+<assertNotNull actual="event" id="notnull"/>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent01.xml b/test/testcases/tests/level2/events/dispatchEvent01.xml
new file mode 100644
index 0000000..d4d5704
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent01.xml
@@ -0,0 +1,38 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent01">
+<metadata>
+<title>dispatchEvent01</title>
+<creator>Curt Arnold</creator>
+<description>
+A null reference is passed to EventTarget.dispatchEvent(), should raise implementation
+or platform exception.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-17189187"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event" isNull="true"/>
+<var name="preventDefault" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<assertImplementationException id="throw_ImplException">
+ <dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+</assertImplementationException>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent02.xml b/test/testcases/tests/level2/events/dispatchEvent02.xml
new file mode 100644
index 0000000..57af4fd
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent02.xml
@@ -0,0 +1,41 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent02">
+<metadata>
+<title>dispatchEvent02</title>
+<creator>Curt Arnold</creator>
+<description>
+An created but not initialized event is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="evt" obj="doc" eventType='"Events"'/>
+<assertEventException id="throw_UNSPECIFIED_EVENT_TYPE_ERR">
+ <UNSPECIFIED_EVENT_TYPE_ERR>
+ <dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+ </UNSPECIFIED_EVENT_TYPE_ERR>
+</assertEventException>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent03.xml b/test/testcases/tests/level2/events/dispatchEvent03.xml
new file mode 100644
index 0000000..4009609
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent03.xml
@@ -0,0 +1,42 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent03">
+<metadata>
+<title>dispatchEvent03</title>
+<creator>Curt Arnold</creator>
+<description>
+An created but not initialized event is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<hasFeature feature='"MutationEvents"' version='"2.0"'/>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="evt" obj="doc" eventType='"MutationEvents"'/>
+<assertEventException id="throw_UNSPECIFIED_EVENT_TYPE_ERR">
+ <UNSPECIFIED_EVENT_TYPE_ERR>
+ <dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+ </UNSPECIFIED_EVENT_TYPE_ERR>
+</assertEventException>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent04.xml b/test/testcases/tests/level2/events/dispatchEvent04.xml
new file mode 100644
index 0000000..4c5eacf
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent04.xml
@@ -0,0 +1,42 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent04">
+<metadata>
+<title>dispatchEvent04</title>
+<creator>Curt Arnold</creator>
+<description>
+An created but not initialized event is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<hasFeature feature='"UIEvents"' version='"2.0"'/>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="evt" obj="doc" eventType='"UIEvents"'/>
+<assertEventException id="throw_UNSPECIFIED_EVENT_TYPE_ERR">
+ <UNSPECIFIED_EVENT_TYPE_ERR>
+ <dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+ </UNSPECIFIED_EVENT_TYPE_ERR>
+</assertEventException>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent05.xml b/test/testcases/tests/level2/events/dispatchEvent05.xml
new file mode 100644
index 0000000..918e9fa
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent05.xml
@@ -0,0 +1,42 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent05">
+<metadata>
+<title>dispatchEvent05</title>
+<creator>Curt Arnold</creator>
+<description>
+An created but not initialized event is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<hasFeature feature='"MouseEvents"' version='"2.0"'/>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="evt" obj="doc" eventType='"MouseEvents"'/>
+<assertEventException id="throw_UNSPECIFIED_EVENT_TYPE_ERR">
+ <UNSPECIFIED_EVENT_TYPE_ERR>
+ <dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+ </UNSPECIFIED_EVENT_TYPE_ERR>
+</assertEventException>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent06.xml b/test/testcases/tests/level2/events/dispatchEvent06.xml
new file mode 100644
index 0000000..074dd7b
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent06.xml
@@ -0,0 +1,42 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent06">
+<metadata>
+<title>dispatchEvent06</title>
+<creator>Curt Arnold</creator>
+<description>
+An created but not initialized event is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<hasFeature feature='"HTMLEvents"' version='"2.0"'/>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="evt" obj="doc" eventType='"HTMLEvents"'/>
+<assertEventException id="throw_UNSPECIFIED_EVENT_TYPE_ERR">
+ <UNSPECIFIED_EVENT_TYPE_ERR>
+ <dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+ </UNSPECIFIED_EVENT_TYPE_ERR>
+</assertEventException>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent07.xml b/test/testcases/tests/level2/events/dispatchEvent07.xml
new file mode 100644
index 0000000..7710e06
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent07.xml
@@ -0,0 +1,42 @@
+<?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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent07">
+<metadata>
+<title>dispatchEvent07</title>
+<creator>Curt Arnold</creator>
+<description>
+An Event initialized with a empty name is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="evt" obj="doc" eventType='"Events"'/>
+<initEvent obj="evt" eventTypeArg='""' canBubbleArg="false" cancelableArg="false"/>
+<assertEventException id="throw_UNSPECIFIED_EVENT_TYPE_ERR">
+ <UNSPECIFIED_EVENT_TYPE_ERR>
+ <dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+ </UNSPECIFIED_EVENT_TYPE_ERR>
+</assertEventException>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent08.xml b/test/testcases/tests/level2/events/dispatchEvent08.xml
new file mode 100644
index 0000000..708dbf6
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent08.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent08">
+<metadata>
+<title>dispatchEvent08</title>
+<creator>Curt Arnold</creator>
+<description>
+An EventListener registered on the target node with capture false, should
+recieve any event fired on that node.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<var name="monitor" type="EventMonitor"/>
+<var name="atEvents" type="List"/>
+<var name="bubbledEvents" type="List"/>
+<var name="capturedEvents" type="List"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<addEventListener obj="doc" type='"foo"' listener="monitor" useCapture="false"/>
+<createEvent var="evt" obj="doc" eventType='"Events"'/>
+<initEvent obj="evt" eventTypeArg='"foo"' canBubbleArg="true" cancelableArg="false"/>
+<dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+<atEvents obj="monitor" var="atEvents"/>
+<assertSize id="atCount" collection="atEvents" size="1"/>
+<bubbledEvents obj="monitor" var="bubbledEvents"/>
+<assertSize id="bubbleCount" collection="bubbledEvents" size="0"/>
+<capturedEvents obj="monitor" var="capturedEvents"/>
+<assertSize id="captureCount" collection="capturedEvents" size="0"/>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent09.xml b/test/testcases/tests/level2/events/dispatchEvent09.xml
new file mode 100644
index 0000000..62c69c0
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent09.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent09">
+<metadata>
+<title>dispatchEvent09</title>
+<creator>Curt Arnold</creator>
+<description>
+An event is dispatched to the document with a capture listener attached.
+A capturing EventListener will not be triggered by events dispatched directly to the EventTarget upon which it is registered.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<var name="monitor" type="EventMonitor"/>
+<var name="atEvents" type="List"/>
+<var name="bubbledEvents" type="List"/>
+<var name="capturedEvents" type="List"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<addEventListener obj="doc" type='"foo"' listener="monitor" useCapture="true"/>
+<createEvent var="evt" obj="doc" eventType='"Events"'/>
+<initEvent obj="evt" eventTypeArg='"foo"' canBubbleArg="true" cancelableArg="false"/>
+<dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+<atEvents obj="monitor" var="atEvents"/>
+<assertSize id="atCount" collection="atEvents" size="0"/>
+<bubbledEvents obj="monitor" var="bubbledEvents"/>
+<assertSize id="bubbleCount" collection="bubbledEvents" size="0"/>
+<capturedEvents obj="monitor" var="capturedEvents"/>
+<assertSize id="captureCount" collection="capturedEvents" size="0"/>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent10.xml b/test/testcases/tests/level2/events/dispatchEvent10.xml
new file mode 100644
index 0000000..879a3bd
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent10.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent10">
+<metadata>
+<title>dispatchEvent10</title>
+<creator>Curt Arnold</creator>
+<description>
+The same monitor is registered twice and an event is dispatched. The monitor should
+recieve only one handleEvent call.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<var name="monitor" type="EventMonitor"/>
+<var name="atEvents" type="List"/>
+<var name="bubbledEvents" type="List"/>
+<var name="capturedEvents" type="List"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<addEventListener obj="doc" type='"foo"' listener="monitor" useCapture="false"/>
+<addEventListener obj="doc" type='"foo"' listener="monitor" useCapture="false"/>
+<createEvent var="evt" obj="doc" eventType='"Events"'/>
+<initEvent obj="evt" eventTypeArg='"foo"' canBubbleArg="true" cancelableArg="false"/>
+<dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+<atEvents obj="monitor" var="atEvents"/>
+<assertSize id="atCount" collection="atEvents" size="1"/>
+<bubbledEvents obj="monitor" var="bubbledEvents"/>
+<assertSize id="bubbleCount" collection="bubbledEvents" size="0"/>
+<capturedEvents obj="monitor" var="capturedEvents"/>
+<assertSize id="captureCount" collection="capturedEvents" size="0"/>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent11.xml b/test/testcases/tests/level2/events/dispatchEvent11.xml
new file mode 100644
index 0000000..e3086f7
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent11.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent11">
+<metadata>
+<title>dispatchEvent11</title>
+<creator>Curt Arnold</creator>
+<description>
+The same monitor is registered twice, removed once, and an event is dispatched.
+The monitor should recieve only no handleEvent calls.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<var name="monitor" type="EventMonitor"/>
+<var name="events" type="List"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<addEventListener obj="doc" type='"foo"' listener="monitor" useCapture="false"/>
+<addEventListener obj="doc" type='"foo"' listener="monitor" useCapture="false"/>
+<removeEventListener obj="doc" type='"foo"' listener="monitor" useCapture="false"/>
+<createEvent var="evt" obj="doc" eventType='"Events"'/>
+<initEvent obj="evt" eventTypeArg='"foo"' canBubbleArg="true" cancelableArg="false"/>
+<dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+<allEvents obj="monitor" var="events"/>
+<assertSize id="eventCount" collection="events" size="0"/>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent12.xml b/test/testcases/tests/level2/events/dispatchEvent12.xml
new file mode 100644
index 0000000..c266030
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent12.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001-2005 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent12">
+<metadata>
+<title>dispatchEvent12</title>
+<creator>Curt Arnold</creator>
+<description>
+A monitor is added, multiple calls to removeEventListener
+are mde with similar but not identical arguments, and an event is dispatched.
+The monitor should recieve handleEvent calls.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<var name="monitor" type="EventMonitor"/>
+<var name="other" type="EventListener">
+ <handleEvent/>
+</var>
+<var name="events" type="List"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<addEventListener obj="doc" type='"foo"' listener="monitor" useCapture="false"/>
+<removeEventListener obj="doc" type='"foo"' listener="monitor" useCapture="true"/>
+<removeEventListener obj="doc" type='"food"' listener="monitor" useCapture="false"/>
+<removeEventListener obj="doc" type='"foo"' listener="other" useCapture="false"/>
+<createEvent var="evt" obj="doc" eventType='"Events"'/>
+<initEvent obj="evt" eventTypeArg='"foo"' canBubbleArg="true" cancelableArg="false"/>
+<dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+<allEvents obj="monitor" var="events"/>
+<assertSize id="eventCount" collection="events" size="1"/>
+</test>
diff --git a/test/testcases/tests/level2/events/dispatchEvent13.xml b/test/testcases/tests/level2/events/dispatchEvent13.xml
new file mode 100644
index 0000000..f1b2d84
--- /dev/null
+++ b/test/testcases/tests/level2/events/dispatchEvent13.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="dispatchEvent13">
+<metadata>
+<title>dispatchEvent13</title>
+<creator>Curt Arnold</creator>
+<description>
+Two listeners are registered on the same target, each of which will remove both itself and
+the other on the first event. Only one should see the event since event listeners
+can never be invoked after being removed.
+</description>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="target" type="EventTarget"/>
+<var name="evt" type="Event"/>
+<var name="preventDefault" type="boolean"/>
+<var name="listeners" type="List"/>
+<var name="events" type="List"/>
+<!-- definition of private class instance that implements EventListener -->
+<var name="listener1" type="EventListener">
+ <!-- instance scope variables,
+ value attributes are passed via constructor -->
+ <var name="events" type="List" value="events"/>
+ <var name="listeners" type="List" value="listeners"/>
+ <!-- implementation of handleEvent method
+ any parameters (in this case 'evt') are
+ predefined -->
+ <handleEvent>
+ <!-- method scope variables -->
+ <var name="target" type="EventTarget"/>
+ <var name="listener" type="EventListener"/>
+ <!-- add event to the collection -->
+ <append collection="events" item="evt"/>
+ <!-- remove this and the other listener -->
+ <currentTarget var="target" obj="evt"/>
+ <for-each collection="listeners" member="listener">
+ <removeEventListener obj="target" type='"foo"' listener="listener" useCapture="false"/>
+ </for-each>
+ </handleEvent>
+</var>
+<!-- identical implementation of EventListener -->
+<var name="listener2" type="EventListener">
+ <var name="events" type="List" value="events"/>
+ <var name="listeners" type="List" value="listeners"/>
+ <handleEvent>
+ <var name="target" type="EventTarget"/>
+ <var name="listener" type="EventListener"/>
+ <!-- add event to the collection -->
+ <append collection="events" item="evt"/>
+ <!-- remove this and the other listener -->
+ <currentTarget var="target" obj="evt"/>
+ <for-each collection="listeners" member="listener">
+ <removeEventListener obj="target" type='"foo"' listener="listener" useCapture="false"/>
+ </for-each>
+ </handleEvent>
+</var>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<append collection="listeners" item="listener1"/>
+<append collection="listeners" item="listener2"/>
+<addEventListener obj="doc" type='"foo"' listener="listener1" useCapture="false"/>
+<addEventListener obj="doc" type='"foo"' listener="listener2" useCapture="false"/>
+<createEvent var="evt" obj="doc" eventType='"Events"'/>
+<initEvent obj="evt" eventTypeArg='"foo"' canBubbleArg="true" cancelableArg="false"/>
+<dispatchEvent var="preventDefault" obj="doc" evt="evt"/>
+<assertSize id="eventCount" collection="events" size="1"/>
+</test>
diff --git a/test/testcases/tests/level2/events/files/.cvsignore b/test/testcases/tests/level2/events/files/.cvsignore
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/.cvsignore
diff --git a/test/testcases/tests/level2/events/files/CVS/Entries b/test/testcases/tests/level2/events/files/CVS/Entries
new file mode 100644
index 0000000..471089a
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/CVS/Entries
@@ -0,0 +1,10 @@
+/.cvsignore/1.2/Fri Apr 3 02:47:56 2009//
+/hc_staff.html/1.5/Fri Apr 3 02:47:56 2009//
+/hc_staff.svg/1.2/Fri Apr 3 02:47:56 2009/-kb/
+/hc_staff.xhtml/1.5/Fri Apr 3 02:47:56 2009/-kb/
+/hc_staff.xml/1.6/Fri Apr 3 02:47:56 2009//
+/staff.dtd/1.1/Fri Apr 3 02:47:56 2009//
+/svgtest.js/1.1/Fri Apr 3 02:47:56 2009/-kb/
+/svgunit.js/1.1/Fri Apr 3 02:47:56 2009/-kb/
+/xhtml1-strict.dtd/1.5/Fri Apr 3 02:47:56 2009/-kb/
+D
diff --git a/test/testcases/tests/level2/events/files/CVS/Repository b/test/testcases/tests/level2/events/files/CVS/Repository
new file mode 100644
index 0000000..1bc2aa7
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level2/events/files
diff --git a/test/testcases/tests/level2/events/files/CVS/Root b/test/testcases/tests/level2/events/files/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level2/events/files/CVS/Template b/test/testcases/tests/level2/events/files/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/CVS/Template
diff --git a/test/testcases/tests/level2/events/files/hc_staff.html b/test/testcases/tests/level2/events/files/hc_staff.html
new file mode 100644
index 0000000..33ccec5
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/hc_staff.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="svgunit.js"></script><script charset="UTF-8" type="text/javascript" src="svgtest.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level2/events/files/hc_staff.svg b/test/testcases/tests/level2/events/files/hc_staff.svg
new file mode 100644
index 0000000..5efa959
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/hc_staff.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST acronym dir CDATA "ltr">
+ <!ATTLIST head xmlns CDATA #IMPLIED>
+ <!ATTLIST body xmlns CDATA #IMPLIED>
+ <!ELEMENT svg (rect, script, head, body)>
+ <!ATTLIST svg xmlns CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #IMPLIED
+ y CDATA #IMPLIED
+ width CDATA #IMPLIED
+ height CDATA #IMPLIED>
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<!-- This is comment number 1.-->
+<svg xmlns='http://www.w3.org/2000/svg'><rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script><head xmlns='http://www.w3.org/1999/xhtml'><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title></head><body xmlns='http://www.w3.org/1999/xhtml'>
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></svg>
diff --git a/test/testcases/tests/level2/events/files/hc_staff.xhtml b/test/testcases/tests/level2/events/files/hc_staff.xhtml
new file mode 100644
index 0000000..32f8af9
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/hc_staff.xhtml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST acronym dir CDATA "ltr">
+]>
+<!-- This is comment number 1.-->
+<html xmlns='http://www.w3.org/1999/xhtml'><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title><script type="text/javascript" src="svgunit.js"/><script charset="UTF-8" type="text/javascript" src="svgtest.js"/><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level2/events/files/hc_staff.xml b/test/testcases/tests/level2/events/files/hc_staff.xml
new file mode 100644
index 0000000..923fd0d
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/hc_staff.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST acronym dir CDATA "ltr">
+]>
+<!-- This is comment number 1.-->
+<html xmlns='http://www.w3.org/1999/xhtml'><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title><script type="text/javascript" src="svgunit.js"/><script charset="UTF-8" type="text/javascript" src="svgtest.js"/><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level2/events/files/staff.dtd b/test/testcases/tests/level2/events/files/staff.dtd
new file mode 100644
index 0000000..02a994d
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/staff.dtd
@@ -0,0 +1,17 @@
+<!ELEMENT employeeId (#PCDATA)>
+<!ELEMENT name (#PCDATA)>
+<!ELEMENT position (#PCDATA)>
+<!ELEMENT salary (#PCDATA)>
+<!ELEMENT address (#PCDATA)>
+<!ELEMENT entElement ( #PCDATA ) >
+<!ELEMENT gender ( #PCDATA | entElement )* >
+<!ELEMENT employee (employeeId, name, position, salary, gender, address) >
+<!ELEMENT staff (employee)+>
+<!ATTLIST entElement
+ attr1 CDATA "Attr">
+<!ATTLIST address
+ domestic CDATA #IMPLIED
+ street CDATA "Yes">
+<!ATTLIST entElement
+ domestic CDATA "MALE" >
+
diff --git a/test/testcases/tests/level2/events/files/svgtest.js b/test/testcases/tests/level2/events/files/svgtest.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/svgtest.js
diff --git a/test/testcases/tests/level2/events/files/svgunit.js b/test/testcases/tests/level2/events/files/svgunit.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/svgunit.js
diff --git a/test/testcases/tests/level2/events/files/xhtml1-strict.dtd b/test/testcases/tests/level2/events/files/xhtml1-strict.dtd
new file mode 100644
index 0000000..7ba5dd7
--- /dev/null
+++ b/test/testcases/tests/level2/events/files/xhtml1-strict.dtd
@@ -0,0 +1,65 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This is a radically simplified DTD for use in the DOM Test Suites
+due to a XML non-conformance of one implementation in processing
+parameter entities. When that non-conformance is resolved,
+this DTD can be replaced by the normal DTD for XHTML.
+
+-->
+
+
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (meta,title,script*)>
+<!ELEMENT meta EMPTY>
+<!ATTLIST meta
+ http-equiv CDATA #IMPLIED
+ content CDATA #IMPLIED>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT body (p*)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|em|strong|code|sup|var|acronym|abbr)*>
+<!ATTLIST p
+ xmlns:dmstc CDATA #IMPLIED
+ xmlns:nm CDATA #IMPLIED
+ xmlns:emp2 CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT em (#PCDATA)>
+<!ELEMENT span (#PCDATA)>
+<!ELEMENT strong (#PCDATA)>
+<!ELEMENT code (#PCDATA)>
+<!ELEMENT sup (#PCDATA)>
+<!ELEMENT var (#PCDATA|span)*>
+<!ELEMENT acronym (#PCDATA)>
+<!ATTLIST acronym
+ title CDATA #IMPLIED
+ class CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT abbr (#PCDATA)>
+<!ATTLIST abbr
+ title CDATA #IMPLIED
+ class CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ type CDATA #IMPLIED
+ src CDATA #IMPLIED
+ charset CDATA #IMPLIED>
diff --git a/test/testcases/tests/level2/events/initEvent01.xml b/test/testcases/tests/level2/events/initEvent01.xml
new file mode 100644
index 0000000..5e21a36
--- /dev/null
+++ b/test/testcases/tests/level2/events/initEvent01.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="initEvent01">
+<metadata>
+<title>initEvent01</title>
+<creator>Curt Arnold</creator>
+<description>
+The Event.initEvent method is called for event returned by DocumentEvent.createEvent("events")
+and the state is checked to see if it reflects the parameters.
+</description>
+<date qualifier="created">2002-04-22</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="event" type="Event"/>
+<var name="expectedEventType" type="DOMString" value='"rotate"'/>
+<var name="actualEventType" type="DOMString"/>
+<var name="expectedCanBubble" type="boolean" value='true'/>
+<var name="actualCanBubble" type="boolean"/>
+<var name="expectedCancelable" type="boolean" value='false'/>
+<var name="actualCancelable" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="event" obj="doc" eventType='"Events"'/>
+<assertNotNull actual="event" id="notnull"/>
+<initEvent obj="event" eventTypeArg="expectedEventType"
+ canBubbleArg="expectedCanBubble" cancelableArg="expectedCancelable"/>
+<type var="actualEventType" obj="event" interface="Event"/>
+<assertEquals actual="actualEventType" expected="expectedEventType" id="type" ignoreCase="false"/>
+<cancelable var="actualCancelable" obj="event"/>
+<assertEquals actual="actualCancelable" expected="expectedCancelable" id="cancelable" ignoreCase="false"/>
+<bubbles var="actualCanBubble" obj="event"/>
+<assertEquals actual="actualCanBubble" expected="expectedCanBubble" id="canBubble" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/events/initEvent02.xml b/test/testcases/tests/level2/events/initEvent02.xml
new file mode 100644
index 0000000..79576fd
--- /dev/null
+++ b/test/testcases/tests/level2/events/initEvent02.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="initEvent02">
+<metadata>
+<title>initEvent02</title>
+<creator>Curt Arnold</creator>
+<description>
+The Event.initEvent method is called for event returned by DocumentEvent.createEvent("events")
+and the state is checked to see if it reflects the parameters.
+</description>
+<date qualifier="created">2002-04-22</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="event" type="Event"/>
+<var name="expectedEventType" type="DOMString" value='"rotate"'/>
+<var name="actualEventType" type="DOMString"/>
+<var name="expectedCanBubble" type="boolean" value='false'/>
+<var name="actualCanBubble" type="boolean"/>
+<var name="expectedCancelable" type="boolean" value='true'/>
+<var name="actualCancelable" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="event" obj="doc" eventType='"Events"'/>
+<assertNotNull actual="event" id="notnull"/>
+<initEvent obj="event" eventTypeArg="expectedEventType"
+ canBubbleArg="expectedCanBubble" cancelableArg="expectedCancelable"/>
+<type var="actualEventType" obj="event" interface="Event"/>
+<assertEquals actual="actualEventType" expected="expectedEventType" id="type" ignoreCase="false"/>
+<cancelable var="actualCancelable" obj="event"/>
+<assertEquals actual="actualCancelable" expected="expectedCancelable" id="cancelable" ignoreCase="false"/>
+<bubbles var="actualCanBubble" obj="event"/>
+<assertEquals actual="actualCanBubble" expected="expectedCanBubble" id="canBubble" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/events/initEvent03.xml b/test/testcases/tests/level2/events/initEvent03.xml
new file mode 100644
index 0000000..91a3025
--- /dev/null
+++ b/test/testcases/tests/level2/events/initEvent03.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="initEvent03">
+<metadata>
+<title>initEvent03</title>
+<creator>Curt Arnold</creator>
+<description>
+The Event.initEvent method is called for event returned by DocumentEvent.createEvent("events")
+and the state is checked to see if it reflects the parameters. initEvent may be
+called multiple times and the last time is definitive.
+</description>
+<date qualifier="created">2002-04-22</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="event" type="Event"/>
+<var name="expectedEventType" type="DOMString" value='"rotate"'/>
+<var name="actualEventType" type="DOMString"/>
+<var name="actualCanBubble" type="boolean"/>
+<var name="actualCancelable" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="event" obj="doc" eventType='"Events"'/>
+<assertNotNull actual="event" id="notnull"/>
+<initEvent obj="event" eventTypeArg='"rotate"'
+ canBubbleArg="true" cancelableArg="true"/>
+<type var="actualEventType" obj="event" interface="Event"/>
+<assertEquals actual="actualEventType" expected='"rotate"' id="type" ignoreCase="false"/>
+<cancelable var="actualCancelable" obj="event"/>
+<assertEquals actual="actualCancelable" expected="true" id="cancelable" ignoreCase="false"/>
+<bubbles var="actualCanBubble" obj="event"/>
+<assertEquals actual="actualCanBubble" expected="true" id="canBubble" ignoreCase="false"/>
+<initEvent obj="event" eventTypeArg='"shear"'
+ canBubbleArg="false" cancelableArg="false"/>
+<type var="actualEventType" obj="event" interface="Event"/>
+<assertEquals actual="actualEventType" expected='"shear"' id="type2" ignoreCase="false"/>
+<cancelable var="actualCancelable" obj="event"/>
+<assertEquals actual="actualCancelable" expected="false" id="cancelable2" ignoreCase="false"/>
+<bubbles var="actualCanBubble" obj="event"/>
+<assertEquals actual="actualCanBubble" expected="false" id="canBubble2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/events/initEvent04.xml b/test/testcases/tests/level2/events/initEvent04.xml
new file mode 100644
index 0000000..705e0fb
--- /dev/null
+++ b/test/testcases/tests/level2/events/initEvent04.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="initEvent04">
+<metadata>
+<title>initEvent04</title>
+<creator>Curt Arnold</creator>
+<description>
+The Event.initEvent method is called for event returned by
+DocumentEvent.createEvent("MutationEvents")
+and the state is checked to see if it reflects the parameters.
+</description>
+<date qualifier="created">2002-04-22</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent"/>
+</metadata>
+<hasFeature feature='"MutationEvents"' version='"2.0"'/>
+<var name="doc" type="Document"/>
+<var name="event" type="Event"/>
+<var name="expectedEventType" type="DOMString" value='"rotate"'/>
+<var name="actualEventType" type="DOMString"/>
+<var name="expectedCanBubble" type="boolean" value='true'/>
+<var name="actualCanBubble" type="boolean"/>
+<var name="expectedCancelable" type="boolean" value='false'/>
+<var name="actualCancelable" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="event" obj="doc" eventType='"MutationEvents"'/>
+<assertNotNull actual="event" id="notnull"/>
+<initEvent obj="event" eventTypeArg="expectedEventType"
+ canBubbleArg="expectedCanBubble" cancelableArg="expectedCancelable"/>
+<type var="actualEventType" obj="event" interface="Event"/>
+<assertEquals actual="actualEventType" expected="expectedEventType" id="type" ignoreCase="false"/>
+<cancelable var="actualCancelable" obj="event"/>
+<assertEquals actual="actualCancelable" expected="expectedCancelable" id="cancelable" ignoreCase="false"/>
+<bubbles var="actualCanBubble" obj="event"/>
+<assertEquals actual="actualCanBubble" expected="expectedCanBubble" id="canBubble" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/events/initEvent05.xml b/test/testcases/tests/level2/events/initEvent05.xml
new file mode 100644
index 0000000..5d039a9
--- /dev/null
+++ b/test/testcases/tests/level2/events/initEvent05.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="initEvent05">
+<metadata>
+<title>initEvent05</title>
+<creator>Curt Arnold</creator>
+<description>
+The Event.initEvent method is called for event returned by
+DocumentEvent.createEvent("MutationEvents")
+and the state is checked to see if it reflects the parameters.
+</description>
+<date qualifier="created">2002-04-22</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent"/>
+</metadata>
+<hasFeature feature='"MutationEvents"' version='"2.0"'/>
+<var name="doc" type="Document"/>
+<var name="event" type="Event"/>
+<var name="expectedEventType" type="DOMString" value='"rotate"'/>
+<var name="actualEventType" type="DOMString"/>
+<var name="expectedCanBubble" type="boolean" value='false'/>
+<var name="actualCanBubble" type="boolean"/>
+<var name="expectedCancelable" type="boolean" value='true'/>
+<var name="actualCancelable" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="event" obj="doc" eventType='"MutationEvents"'/>
+<assertNotNull actual="event" id="notnull"/>
+<initEvent obj="event" eventTypeArg="expectedEventType"
+ canBubbleArg="expectedCanBubble" cancelableArg="expectedCancelable"/>
+<type var="actualEventType" obj="event" interface="Event"/>
+<assertEquals actual="actualEventType" expected="expectedEventType" id="type" ignoreCase="false"/>
+<cancelable var="actualCancelable" obj="event"/>
+<assertEquals actual="actualCancelable" expected="expectedCancelable" id="cancelable" ignoreCase="false"/>
+<bubbles var="actualCanBubble" obj="event"/>
+<assertEquals actual="actualCanBubble" expected="expectedCanBubble" id="canBubble" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/events/initEvent06.xml b/test/testcases/tests/level2/events/initEvent06.xml
new file mode 100644
index 0000000..b6b550c
--- /dev/null
+++ b/test/testcases/tests/level2/events/initEvent06.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="initEvent06">
+<metadata>
+<title>initEvent06</title>
+<creator>Curt Arnold</creator>
+<description>
+The Event.initEvent method is called for event returned by
+DocumentEvent.createEvent("MutationEvents")
+and the state is checked to see if it reflects the parameters. initEvent may be
+called multiple times and the last time is definitive.
+</description>
+<date qualifier="created">2002-04-22</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent"/>
+</metadata>
+<hasFeature feature='"MutationEvents"' version='"2.0"'/>
+<var name="doc" type="Document"/>
+<var name="event" type="Event"/>
+<var name="expectedEventType" type="DOMString" value='"rotate"'/>
+<var name="actualEventType" type="DOMString"/>
+<var name="actualCanBubble" type="boolean"/>
+<var name="actualCancelable" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEvent var="event" obj="doc" eventType='"MutationEvents"'/>
+<assertNotNull actual="event" id="notnull"/>
+<initEvent obj="event" eventTypeArg='"rotate"'
+ canBubbleArg="true" cancelableArg="true"/>
+<type var="actualEventType" obj="event" interface="Event"/>
+<assertEquals actual="actualEventType" expected='"rotate"' id="type" ignoreCase="false"/>
+<cancelable var="actualCancelable" obj="event"/>
+<assertEquals actual="actualCancelable" expected="true" id="cancelable" ignoreCase="false"/>
+<bubbles var="actualCanBubble" obj="event"/>
+<assertEquals actual="actualCanBubble" expected="true" id="canBubble" ignoreCase="false"/>
+<initEvent obj="event" eventTypeArg='"shear"'
+ canBubbleArg="false" cancelableArg="false"/>
+<type var="actualEventType" obj="event" interface="Event"/>
+<assertEquals actual="actualEventType" expected='"shear"' id="type2" ignoreCase="false"/>
+<cancelable var="actualCancelable" obj="event"/>
+<assertEquals actual="actualCancelable" expected="false" id="cancelable2" ignoreCase="false"/>
+<bubbles var="actualCanBubble" obj="event"/>
+<assertEquals actual="actualCanBubble" expected="false" id="canBubble2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/events/metadata.xml b/test/testcases/tests/level2/events/metadata.xml
new file mode 100644
index 0000000..f52c030
--- /dev/null
+++ b/test/testcases/tests/level2/events/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+Copyright (c) 2003 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 metadata SYSTEM "dom2.dtd">
+<!-- This file contains additional metadata about DOM L2 Events tests.
+ Allowing additional documentation without modifying the tests themselves. -->
+<metadata xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2">
+</metadata>
+
diff --git a/test/testcases/tests/level2/html/.cvsignore b/test/testcases/tests/level2/html/.cvsignore
new file mode 100644
index 0000000..cc87140
--- /dev/null
+++ b/test/testcases/tests/level2/html/.cvsignore
@@ -0,0 +1,2 @@
+dom2.dtd
+dom2.xsd
diff --git a/test/testcases/tests/level2/html/CVS/Entries b/test/testcases/tests/level2/html/CVS/Entries
new file mode 100644
index 0000000..2a070d9
--- /dev/null
+++ b/test/testcases/tests/level2/html/CVS/Entries
@@ -0,0 +1,65 @@
+D/files////
+/.cvsignore/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLAppletElement07.xml/1.4/Fri Apr 3 02:47:56 2009//
+/HTMLAppletElement09.xml/1.5/Fri Apr 3 02:47:56 2009//
+/HTMLBaseFontElement03.xml/1.6/Fri Apr 3 02:47:56 2009//
+/HTMLBodyElement07.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLBodyElement08.xml/1.2/Fri Apr 3 02:47:55 2009//
+/HTMLBodyElement09.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLBodyElement10.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLBodyElement11.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLBodyElement12.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLDocument22.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLDocument23.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLDocument24.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLDocument25.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLDocument26.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLDocument27.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLFrameElement09.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLIFrameElement11.xml/1.3/Fri Apr 3 02:47:56 2009//
+/HTMLImageElement05.xml/1.3/Fri Apr 3 02:47:56 2009//
+/HTMLImageElement06.xml/1.3/Fri Apr 3 02:47:56 2009//
+/HTMLImageElement11.xml/1.3/Fri Apr 3 02:47:56 2009//
+/HTMLImageElement12.xml/1.3/Fri Apr 3 02:47:55 2009//
+/HTMLInputElement13.xml/1.4/Fri Apr 3 02:47:56 2009//
+/HTMLObjectElement11.xml/1.4/Fri Apr 3 02:47:56 2009//
+/HTMLObjectElement16.xml/1.4/Fri Apr 3 02:47:56 2009//
+/HTMLObjectElement20.xml/1.1/Fri Apr 3 02:47:55 2009//
+/HTMLOptionsCollection01.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLOptionsCollection02.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLOptionsCollection03.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLOptionsCollection04.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLOptionsCollection05.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLOptionsCollection06.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLOptionsCollection07.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLSelectElement20.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableElement34.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableElement35.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableElement36.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableElement37.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableElement38.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableElement39.xml/1.1/Fri Apr 3 02:47:55 2009//
+/HTMLTableElement40.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableRowElement15.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableRowElement16.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLTableRowElement17.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLTableRowElement18.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLTableRowElement19.xml/1.2/Fri Apr 3 02:47:56 2009//
+/HTMLTableRowElement20.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableRowElement21.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableSectionElement25.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableSectionElement26.xml/1.1/Fri Apr 3 02:47:55 2009//
+/HTMLTableSectionElement27.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableSectionElement28.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableSectionElement29.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableSectionElement30.xml/1.1/Fri Apr 3 02:47:56 2009//
+/HTMLTableSectionElement31.xml/1.1/Fri Apr 3 02:47:56 2009//
+/alltests.xml/1.19/Fri Apr 3 02:47:56 2009//
+/hasFeature02.xml/1.1/Fri Apr 3 02:47:56 2009//
+/hasFeature03.xml/1.1/Fri Apr 3 02:47:56 2009//
+/hasFeature04.xml/1.1/Fri Apr 3 02:47:56 2009//
+/hasFeature05.xml/1.1/Fri Apr 3 02:47:56 2009//
+/hasFeature06.xml/1.1/Fri Apr 3 02:47:56 2009//
+/metadata.xml/1.1/Fri Apr 3 02:47:55 2009//
+/object08.xml/1.2/Fri Apr 3 02:47:56 2009//
+/object13.xml/1.2/Fri Apr 3 02:47:56 2009//
diff --git a/test/testcases/tests/level2/html/CVS/Repository b/test/testcases/tests/level2/html/CVS/Repository
new file mode 100644
index 0000000..8bf1363
--- /dev/null
+++ b/test/testcases/tests/level2/html/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level2/html
diff --git a/test/testcases/tests/level2/html/CVS/Root b/test/testcases/tests/level2/html/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level2/html/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level2/html/CVS/Template b/test/testcases/tests/level2/html/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/html/CVS/Template
diff --git a/test/testcases/tests/level2/html/HTMLAppletElement07.xml b/test/testcases/tests/level2/html/HTMLAppletElement07.xml
new file mode 100644
index 0000000..07a6c0d
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLAppletElement07.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLAppletElement07">
+<metadata>
+<title>HTMLAppletElement07</title>
+<creator>NIST</creator>
+<description>
+ The hspace attribute specifies the horizontal space to the left
+ and right of this image, applet, or object.
+
+ Retrieve the hspace attribute and examine it's value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-12-03</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-1567197"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhspace" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;applet&quot;"/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<hspace interface="HTMLAppletElement" obj="testNode" var="vhspace"/>
+<assertEquals actual="vhspace" expected="0" id="hspaceLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLAppletElement09.xml b/test/testcases/tests/level2/html/HTMLAppletElement09.xml
new file mode 100644
index 0000000..b602397
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLAppletElement09.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLAppletElement09">
+<metadata>
+<title>HTMLAppletElement09</title>
+<creator>NIST</creator>
+<description>
+ The vspace attribute specifies the vertical space above and below
+ this image, applet or object.
+
+ Retrieve the vspace attribute and examine it's value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-12-03</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-22637173"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvspace" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="applet" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;applet&quot;"/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vspace interface="HTMLAppletElement" obj="testNode" var="vvspace"/>
+<assertEquals actual="vvspace" expected="0" id="vspaceLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLBaseFontElement03.xml b/test/testcases/tests/level2/html/HTMLBaseFontElement03.xml
new file mode 100644
index 0000000..b743fb0
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLBaseFontElement03.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLBaseFontElement03">
+<metadata>
+<title>HTMLBaseFontElement03</title>
+<creator>NIST</creator>
+<description>
+ The size attribute specifies the base font's size.
+
+ Retrieve the size attribute and examine it's value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-12-03</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-38930424"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsize" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="basefont" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;basefont&quot;"/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<size interface="HTMLBaseFontElement" obj="testNode" var="vsize"/>
+<assertEquals actual="vsize" expected="4" id="sizeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLBodyElement07.xml b/test/testcases/tests/level2/html/HTMLBodyElement07.xml
new file mode 100644
index 0000000..2c759f8
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLBodyElement07.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLBodyElement07">
+<metadata>
+<title>HTMLBodyElement07</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("hTmL", null) returns true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="body" type="Element"/>
+<var name="state" type="boolean"/>
+<var name="version" type="DOMString" isNull="true"/>
+<load var="doc" href="document" willBeModified="false"/>
+<body var="body" obj="doc"/>
+<isSupported var="state" obj="body" feature='"hTmL"' version="version"/>
+<assertTrue actual="state" id="isSupportedHTML"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLBodyElement08.xml b/test/testcases/tests/level2/html/HTMLBodyElement08.xml
new file mode 100644
index 0000000..50b411d
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLBodyElement08.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLBodyElement08">
+<metadata>
+<title>HTMLBodyElement08</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("hTmL", "2.0") returns true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="body" type="Element"/>
+<var name="state" type="boolean"/>
+<var name="version" type="DOMString" value='"2.0"'/>
+<load var="doc" href="document" willBeModified="false"/>
+<body var="body" obj="doc"/>
+<isSupported var="state" obj="body" feature='"hTmL"' version="version"/>
+<assertTrue actual="state" id="isSupportedHTML"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLBodyElement09.xml b/test/testcases/tests/level2/html/HTMLBodyElement09.xml
new file mode 100644
index 0000000..150b4a8
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLBodyElement09.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLBodyElement09">
+<metadata>
+<title>HTMLBodyElement09</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("xhTmL", null) returns true if hasFeature("XML", null) is true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="body" type="Element"/>
+<var name="state" type="boolean"/>
+<var name="hasXML" type="boolean"/>
+<var name="version" type="DOMString" isNull="true"/>
+<load var="doc" href="document" willBeModified="false"/>
+<body var="body" obj="doc"/>
+<isSupported var="hasXML" obj="body" feature='"XML"' version="version"/>
+<isSupported var="state" obj="body" feature='"xhTmL"' version="version"/>
+<assertEquals actual="state" expected="hasXML" id="isSupportedXHTML" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLBodyElement10.xml b/test/testcases/tests/level2/html/HTMLBodyElement10.xml
new file mode 100644
index 0000000..691739e
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLBodyElement10.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLBodyElement10">
+<metadata>
+<title>HTMLBodyElement10</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("xhTmL", "2.0") returns true if hasFeature("XML", "2.0") is true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="body" type="Element"/>
+<var name="state" type="boolean"/>
+<var name="hasXML" type="boolean"/>
+<var name="version" type="DOMString" value='"2.0"'/>
+<load var="doc" href="document" willBeModified="false"/>
+<body var="body" obj="doc"/>
+<isSupported var="hasXML" obj="body" feature='"XML"' version="version"/>
+<isSupported var="state" obj="body" feature='"xhTmL"' version="version"/>
+<assertEquals actual="state" expected="hasXML" id="isSupportedXHTML" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLBodyElement11.xml b/test/testcases/tests/level2/html/HTMLBodyElement11.xml
new file mode 100644
index 0000000..3c83437
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLBodyElement11.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLBodyElement11">
+<metadata>
+<title>HTMLBodyElement11</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("cOrE", null) returns true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="body" type="Element"/>
+<var name="state" type="boolean"/>
+<var name="version" type="DOMString" isNull="true"/>
+<load var="doc" href="document" willBeModified="false"/>
+<body var="body" obj="doc"/>
+<isSupported var="state" obj="body" feature='"cOrE"' version="version"/>
+<assertTrue actual="state" id="isSupportedCore"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLBodyElement12.xml b/test/testcases/tests/level2/html/HTMLBodyElement12.xml
new file mode 100644
index 0000000..6255dbb
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLBodyElement12.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLBodyElement12">
+<metadata>
+<title>HTMLBodyElement12</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("cOrE", "2.0") returns true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="body" type="Element"/>
+<var name="state" type="boolean"/>
+<var name="version" type="DOMString" value='"2.0"'/>
+<load var="doc" href="document" willBeModified="false"/>
+<body var="body" obj="doc"/>
+<isSupported var="state" obj="body" feature='"cOrE"' version="version"/>
+<assertTrue actual="state" id="isSupportedCore"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLDocument22.xml b/test/testcases/tests/level2/html/HTMLDocument22.xml
new file mode 100644
index 0000000..414f065
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLDocument22.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLDocument22">
+<metadata>
+<title>HTMLDocument22</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("hTmL", null) returns true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="state" type="boolean"/>
+<var name="version" type="DOMString" isNull="true"/>
+<load var="doc" href="document" willBeModified="true"/>
+<isSupported var="state" obj="doc" feature='"hTmL"' version="version"/>
+<assertTrue actual="state" id="isSupportedHTML"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLDocument23.xml b/test/testcases/tests/level2/html/HTMLDocument23.xml
new file mode 100644
index 0000000..7896dbd
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLDocument23.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLDocument23">
+<metadata>
+<title>HTMLDocument23</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("hTmL", "2.0") returns true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="state" type="boolean"/>
+<var name="version" type="DOMString" value='"2.0"'/>
+<load var="doc" href="document" willBeModified="true"/>
+<isSupported var="state" obj="doc" feature='"hTmL"' version="version"/>
+<assertTrue actual="state" id="isSupportedHTML"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLDocument24.xml b/test/testcases/tests/level2/html/HTMLDocument24.xml
new file mode 100644
index 0000000..186062d
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLDocument24.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLDocument24">
+<metadata>
+<title>HTMLDocument24</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("xhTmL", null) returns true if hasFeature("XML", null) is true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="state" type="boolean"/>
+<var name="hasXML" type="boolean"/>
+<var name="version" type="DOMString" isNull="true"/>
+<load var="doc" href="document" willBeModified="true"/>
+<isSupported var="hasXML" obj="doc" feature='"XML"' version="version"/>
+<isSupported var="state" obj="doc" feature='"xhTmL"' version="version"/>
+<assertEquals actual="state" expected="hasXML" id="isSupportedXHTML" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLDocument25.xml b/test/testcases/tests/level2/html/HTMLDocument25.xml
new file mode 100644
index 0000000..42a1996
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLDocument25.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLDocument25">
+<metadata>
+<title>HTMLDocument25</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("xhTmL", "2.0") returns true if hasFeature("XML", "2.0") is true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="state" type="boolean"/>
+<var name="hasXML" type="boolean"/>
+<var name="version" type="DOMString" value='"2.0"'/>
+<load var="doc" href="document" willBeModified="true"/>
+<isSupported var="hasXML" obj="doc" feature='"XML"' version="version"/>
+<isSupported var="state" obj="doc" feature='"xhTmL"' version="version"/>
+<assertEquals actual="state" expected="hasXML" id="isSupportedXHTML" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLDocument26.xml b/test/testcases/tests/level2/html/HTMLDocument26.xml
new file mode 100644
index 0000000..032cead
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLDocument26.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLDocument26">
+<metadata>
+<title>HTMLDocument26</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("cOrE", null) returns true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="state" type="boolean"/>
+<var name="version" type="DOMString" isNull="true"/>
+<load var="doc" href="document" willBeModified="true"/>
+<isSupported var="state" obj="doc" feature='"cOrE"' version="version"/>
+<assertTrue actual="state" id="isSupportedCore"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLDocument27.xml b/test/testcases/tests/level2/html/HTMLDocument27.xml
new file mode 100644
index 0000000..fa2b184
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLDocument27.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLDocument27">
+<metadata>
+<title>HTMLDocument27</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that Node.isSupported("cOrE", "2.0") returns true.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="state" type="boolean"/>
+<var name="version" type="DOMString" value='"2.0"'/>
+<load var="doc" href="document" willBeModified="true"/>
+<isSupported var="state" obj="doc" feature='"cOrE"' version="version"/>
+<assertTrue actual="state" id="isSupportedCore"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLFrameElement09.xml b/test/testcases/tests/level2/html/HTMLFrameElement09.xml
new file mode 100644
index 0000000..d6fc5cc
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLFrameElement09.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLFrameElement09">
+<metadata>
+<title>HTMLFrameElement09</title>
+<creator>NIST</creator>
+<description>
+ The contentDocument attribute specifies the document this frame contains,
+ if there is any and it is available, or null otherwise.
+
+ Retrieve the contentDocument attribute of the first FRAME element
+ and examine its TITLE value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-03</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-78799536"/>
+</metadata>
+<var name="testNode" type="Element"/>
+<var name="cd" type="Document" />
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="frame2" willBeModified="false"/>
+<getElementById interface="Document" obj="doc" var="testNode" elementId='"Frame1"'/>
+<contentDocument interface="HTMLFrameElement" obj="testNode" var="cd"/>
+<title interface="HTMLDocument" obj="cd" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"NIST DOM HTML Test - FRAMESET"' id="titleLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLIFrameElement11.xml b/test/testcases/tests/level2/html/HTMLIFrameElement11.xml
new file mode 100644
index 0000000..c77d2f4
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLIFrameElement11.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLIFrameElement11">
+<metadata>
+<title>HTMLIFrameElement11</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the contentDocument attribute of the second IFRAME element
+ and examine its title.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-03</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-67133006"/>
+</metadata>
+<var name="testNode" type="Element"/>
+<var name="cd" type="Document" />
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe2" willBeModified="false"/>
+<getElementById interface="Document" obj="doc" var="testNode" elementId='"Iframe2"'/>
+<contentDocument interface="HTMLIFrameElement" obj="testNode" var="cd"/>
+<title interface="HTMLDocument" obj="cd" var="vtitle"/>
+<assertEquals actual="vtitle" expected='"NIST DOM HTML Test - FRAME"' id="titleLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLImageElement05.xml b/test/testcases/tests/level2/html/HTMLImageElement05.xml
new file mode 100644
index 0000000..92e536b
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLImageElement05.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLImageElement05">
+<metadata>
+<title>HTMLImageElement05</title>
+<creator>NIST</creator>
+<description>
+ The height attribute overrides the natural "height" of the image.
+
+ Retrieve the height attribute and examine it's value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-12-26</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-91561496"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheight" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;img&quot;"/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<height interface="HTMLImageElement" obj="testNode" var="vheight"/>
+<assertEquals actual="vheight" expected="47" id="heightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLImageElement06.xml b/test/testcases/tests/level2/html/HTMLImageElement06.xml
new file mode 100644
index 0000000..19fb7b0
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLImageElement06.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLImageElement06">
+<metadata>
+<title>HTMLImageElement06</title>
+<creator>NIST</creator>
+<description>
+ The hspace attribute specifies the horizontal space to the left and
+ right of this image.
+
+ Retrieve the hspace attribute and examine it's value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-12-26</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-53675471"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhspace" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;img&quot;"/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<hspace interface="HTMLImageElement" obj="testNode" var="vhspace"/>
+<assertEquals actual="vhspace" expected="4" id="hspaceLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLImageElement11.xml b/test/testcases/tests/level2/html/HTMLImageElement11.xml
new file mode 100644
index 0000000..10f3608
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLImageElement11.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLImageElement11">
+<metadata>
+<title>HTMLImageElement11</title>
+<creator>NIST</creator>
+<description>
+ The vspace attribute specifies the vertical space above and below this
+ image.
+
+ Retrieve the vspace attribute and examine it's value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-12-26</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-85374897"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvspace" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;img&quot;"/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vspace interface="HTMLImageElement" obj="testNode" var="vvspace"/>
+<assertEquals actual="vvspace" expected="10" id="vspaceLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLImageElement12.xml b/test/testcases/tests/level2/html/HTMLImageElement12.xml
new file mode 100644
index 0000000..738f1c3
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLImageElement12.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLImageElement12">
+<metadata>
+<title>HTMLImageElement12</title>
+<creator>NIST</creator>
+<description>
+ The width attribute overrides the natural "width" of the image.
+
+ Retrieve the width attribute and examine it's value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-12-07</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13839076"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="img" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;img&quot;"/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<width interface="HTMLImageElement" obj="testNode" var="vwidth"/>
+<assertEquals actual="vwidth" expected="115" id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLInputElement13.xml b/test/testcases/tests/level2/html/HTMLInputElement13.xml
new file mode 100644
index 0000000..e243035
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLInputElement13.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLInputElement13">
+<metadata>
+<title>HTMLInputElement13</title>
+<creator>NIST</creator>
+<description>
+ The size attribute contains the size information. Its precise meaning
+ is specific to each type of field.
+
+ Retrieve the size attribute of the 1st INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-12-26</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-79659438"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsize" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="input" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<size interface="HTMLInputElement" obj="testNode" var="vsize"/>
+<assertEquals actual="vsize" expected="25" id="size" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLObjectElement11.xml b/test/testcases/tests/level2/html/HTMLObjectElement11.xml
new file mode 100644
index 0000000..b4f172b
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLObjectElement11.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLObjectElement11">
+<metadata>
+<title>HTMLObjectElement11</title>
+<creator>NIST</creator>
+<description>
+ The hspace attribute specifies the horizontal space to the left and right
+ of this image, applet or object.
+
+ Retrieve the hspace attribute of the first OBJECT element and examine
+ it's value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-01-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-17085376"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhspace" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;object&quot;"/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<hspace interface="HTMLObjectElement" obj="testNode" var="vhspace"/>
+<assertEquals actual="vhspace" expected="0" id="hspaceLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLObjectElement16.xml b/test/testcases/tests/level2/html/HTMLObjectElement16.xml
new file mode 100644
index 0000000..e849620
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLObjectElement16.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLObjectElement16">
+<metadata>
+<title>HTMLObjectElement16</title>
+<creator>NIST</creator>
+<description>
+ The vspace attribute specifies the vertical space above or below this
+ image, applet or object.
+
+ Retrieve the vspace attribute of the first OBJECT element and examine
+ it's value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-01-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-8682483"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvspace" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;object&quot;"/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vspace interface="HTMLObjectElement" obj="testNode" var="vvspace"/>
+<assertEquals actual="vvspace" expected="0" id="vspaceLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLObjectElement20.xml b/test/testcases/tests/level2/html/HTMLObjectElement20.xml
new file mode 100644
index 0000000..5694760
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLObjectElement20.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLObjectElement20">
+<metadata>
+<title>HTMLObjectElement20</title>
+<creator>NIST</creator>
+<description>
+ The contentDocument attribute specifies the document this object contains,
+ if there is any and it is available, or null otherwise.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-03</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-38538621"/>
+</metadata>
+<var name="testNode" type="Element"/>
+<var name="cd" type="Document" />
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<var name="nodeList" type="NodeList"/>
+<load var="doc" href="object2" willBeModified="false"/>
+<getElementsByTagName var="nodeList" obj="doc" interface="Document" tagname='"object"'/>
+<item var="testNode" obj="nodeList" index="1" interface="NodeList"/>
+<contentDocument interface="HTMLObjectElement" obj="testNode" var="cd"/>
+<assertNull actual="cd" id="noContentDocument"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection01.xml b/test/testcases/tests/level2/html/HTMLOptionsCollection01.xml
new file mode 100644
index 0000000..80df1a3
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection01.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLOptionsCollection01">
+<metadata>
+<title>HTMLOptionsCollection01</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ The length attribute specifies the length or size of the list.
+
+ Retrieve the first SELECT element and create a HTMLOptionsCollection
+ of the OPTION elements. Check the size of the length of OPTION elements.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-length"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsList" type="HTMLOptionsCollection"/>
+<var name="vlength" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<options interface="HTMLSelectElement" obj="testNode" var="optionsList"/>
+<length interface="HTMLOptionsCollection" obj="optionsList" var="vlength"/>
+<assertEquals actual="vlength" expected="5" id="lengthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection02.xml b/test/testcases/tests/level2/html/HTMLOptionsCollection02.xml
new file mode 100644
index 0000000..44b5431
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection02.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLOptionsCollection02">
+<metadata>
+<title>HTMLOptionsCollection02</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test ordinal index=3).
+ The item() method retrieves a node specified by ordinal index.
+ Nodes are numbered in tree order. The index origin is 0.
+
+ Retrieve the first SELECT element. Create a HTMLOptionsCollection.
+ Retrieve the fourth item in the list and examine its firstChild's
+ nodeValue.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-item"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="optionsValueNode" type="Node"/>
+<var name="optionsList" type="HTMLOptionsCollection"/>
+<var name="vvalue" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<options interface="HTMLSelectElement" obj="testNode" var="optionsList"/>
+<item interface="HTMLOptionsCollection" obj="optionsList" var="optionsNode" index="3"/>
+<firstChild interface="Node" obj="optionsNode" var="optionsValueNode"/>
+<nodeValue obj="optionsValueNode" var="vvalue"/>
+<assertEquals actual="vvalue" expected='"EMP10004"' id="valueIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection03.xml b/test/testcases/tests/level2/html/HTMLOptionsCollection03.xml
new file mode 100644
index 0000000..280b2bf
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection03.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLOptionsCollection03">
+<metadata>
+<title>HTMLOptionsCollection03</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test node name).
+ The namedItem method retrieves a Node using a name. It first searches
+ for a node with a matching id attribute. If it doesn't find one, it
+ then searches for a Node with a matching name attribute, but only
+ those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element. Create a HTMLCollection of the elements.
+ Search for an element that has select1 as the value for the name attribute.
+ Get the nodeName of that element.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-namedItem"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<elements interface="HTMLFormElement" obj="testNode" var="formsnodeList"/>
+<namedItem interface="HTMLOptionsCollection" obj="formsnodeList" var="optionsNode" name='"select1"'/>
+<nodeName obj="optionsNode" var="vname"/>
+<assertEquals actual="vname" expected='"select"' id="nameIndexLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection04.xml b/test/testcases/tests/level2/html/HTMLOptionsCollection04.xml
new file mode 100644
index 0000000..83e59d3
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection04.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLOptionsCollection04">
+<metadata>
+<title>HTMLOptionsCollection04</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test node name).
+ The namedItem method retrieves a Node using a name. It first searches
+ for a node with a matching id attribute. If it doesn't find one, it
+ then searches for a Node with a matching name attribute, but only
+ those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element. Create a HTMLCollection of the elements.
+ Search for an element that has selectId as the value for the id attribute.
+ Get the nodeName of that element.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-namedItem"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<elements interface="HTMLFormElement" obj="testNode" var="formsnodeList"/>
+<namedItem interface="HTMLOptionsCollection" obj="formsnodeList" var="optionsNode" name='"selectId"'/>
+<nodeName obj="optionsNode" var="vname"/>
+<assertEquals actual="vname" expected='"select"' id="nameIndexLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection05.xml b/test/testcases/tests/level2/html/HTMLOptionsCollection05.xml
new file mode 100644
index 0000000..d2f44d7
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection05.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLOptionsCollection05">
+<metadata>
+<title>HTMLOptionsCollection05</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test node name).
+ The namedItem method retrieves a Node using a name. It first searches
+ for a node with a matching id attribute. If it doesn't find one, it
+ then searches for a Node with a matching name attribute, but only
+ those elements that are allowed a name attribute. Upon failure(e.q., no
+ node with this name exists), returns null.
+
+ Retrieve the first FORM element. Create a HTMLCollection of the elements.
+ Search for an element that has select9 as the value for the name attribute.
+ Null should be returned since there is not any name or id attribute with
+ select9 as a value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-namedItem"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<elements interface="HTMLFormElement" obj="testNode" var="formsnodeList"/>
+<namedItem interface="HTMLOptionsCollection" obj="formsnodeList" var="optionsNode" name='"select9"'/>
+<assertNull actual="optionsNode" id="nameIndexLink"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection06.xml b/test/testcases/tests/level2/html/HTMLOptionsCollection06.xml
new file mode 100644
index 0000000..fbde429
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection06.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLOptionsCollection06">
+<metadata>
+<title>HTMLOptionsCollection06</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test ordinal index).
+ The item() method retrieves a node specified by ordinal index.
+ A value of null is returned if the index is out of range.
+
+ Retrieve the first SELECT element. Create a HTMLOptionsCollection.
+ Retrieve the tenth item in the list - null should be returned since
+ there are not 10 items in the list.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-item"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="optionsValueNode" type="Node"/>
+<var name="optionsList" type="HTMLOptionsCollection"/>
+<var name="vvalue" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<options interface="HTMLSelectElement" obj="testNode" var="optionsList"/>
+<item interface="HTMLOptionsCollection" obj="optionsList" var="optionsNode" index="10"/>
+<assertNull actual="optionsNode" id="optionsIndexLink"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection07.xml b/test/testcases/tests/level2/html/HTMLOptionsCollection07.xml
new file mode 100644
index 0000000..a2731e5
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection07.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLOptionsCollection07">
+<metadata>
+<title>HTMLOptionsCollection07</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test ordinal index=0).
+ The item() method retrieves a node specified by ordinal index. Nodes
+ are numbered in tree order. The index origin is 0.
+
+ Retrieve the first SELECT element. Create a HTMLOptionsCollection.
+ Retrieve the first item in the list and examine its firstChild's
+ nodeValue.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-item"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="optionsValueNode" type="Node"/>
+<var name="optionsList" type="HTMLOptionsCollection"/>
+<var name="vvalue" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<options interface="HTMLSelectElement" obj="testNode" var="optionsList"/>
+<item interface="HTMLOptionsCollection" obj="optionsList" var="optionsNode" index="0"/>
+<firstChild interface="Node" obj="optionsNode" var="optionsValueNode"/>
+<nodeValue obj="optionsValueNode" var="vvalue"/>
+<assertEquals actual="vvalue" expected='"EMP10001"' id="valueIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLSelectElement20.xml b/test/testcases/tests/level2/html/HTMLSelectElement20.xml
new file mode 100644
index 0000000..ddbe2f7
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLSelectElement20.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLSelectElement20">
+<metadata>
+<title>HTMLSelectElement20</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempting to add an new option using HTMLSelectElement.add before a node that is not a child of the select
+element should raise a NOT_FOUND_ERR.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-14493106"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="optLength" type="int"/>
+<var name="selected" type="int"/>
+<var name="newOpt" type="Element"/>
+<var name="newOptText" type="Text"/>
+<var name="retNode" type="Node"/>
+<var name="options" type="HTMLCollection"/>
+<var name="otherSelect" type="Element"/>
+<var name="selectedNode" type="Node"/>
+<load var="doc" href="select" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<item interface="NodeList" obj="nodeList" var="otherSelect" index="1"/>
+<createElement var="newOpt" obj="doc" tagName='"option"'/>
+<createTextNode var="newOptText" obj="doc" data='"EMP31415"'/>
+<appendChild var="retNode" obj="newOpt" newChild="newOptText"/>
+<options var="options" obj="otherSelect"/>
+<item var="selectedNode" obj="options" index="0" interface="HTMLCollection"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+ <NOT_FOUND_ERR>
+ <add interface="HTMLSelectElement" obj="testNode" element="newOpt" before="selectedNode"/>
+ </NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableElement34.xml b/test/testcases/tests/level2/html/HTMLTableElement34.xml
new file mode 100644
index 0000000..d774498
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableElement34.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableElement34">
+<metadata>
+<title>HTMLTableElement34</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of rows.
+
+ Retrieve the second TABLE element which has four rows. Try
+ to insert a new row using an index of five. This should throw
+ a INDEX_SIZE_ERR DOMException since there are only four rows.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-39872903"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-39872903')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<assertDOMException id="HTMLTableElement34">
+<INDEX_SIZE_ERR>
+<insertRow interface="HTMLTableElement" obj="testNode" var="newRow" index="5"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableElement35.xml b/test/testcases/tests/level2/html/HTMLTableElement35.xml
new file mode 100644
index 0000000..6410e89
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableElement35.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableElement35">
+<metadata>
+<title>HTMLTableElement35</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the second TABLE element which has four rows. Try
+ to insert a new row using an index of negative five. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-39872903"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-39872903')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<assertDOMException id="HTMLTableElement35">
+<INDEX_SIZE_ERR>
+<insertRow interface="HTMLTableElement" obj="testNode" var="newRow" index="-5"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableElement36.xml b/test/testcases/tests/level2/html/HTMLTableElement36.xml
new file mode 100644
index 0000000..7a514e5
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableElement36.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableElement36">
+<metadata>
+<title>HTMLTableElement36</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of rows.
+
+ Retrieve the second TABLE element which has four rows. Try
+ to delete a new row using an index of five. This should throw
+ a INDEX_SIZE_ERR DOMException since there are only four rows.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-13114938')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<assertDOMException id="HTMLTableElement36">
+<INDEX_SIZE_ERR>
+<deleteRow interface="HTMLTableElement" obj="testNode" index="5"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableElement37.xml b/test/testcases/tests/level2/html/HTMLTableElement37.xml
new file mode 100644
index 0000000..097deb1
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableElement37.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableElement37">
+<metadata>
+<title>HTMLTableElement37</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is equal the number of rows.
+
+ Retrieve the second TABLE element which has four rows. Try
+ to delete a new row using an index of four. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is equal to the
+ number of rows.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-13114938')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<assertDOMException id="HTMLTableElement37">
+<INDEX_SIZE_ERR>
+<deleteRow interface="HTMLTableElement" obj="testNode" index="4"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableElement38.xml b/test/testcases/tests/level2/html/HTMLTableElement38.xml
new file mode 100644
index 0000000..0f5bccd
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableElement38.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableElement38">
+<metadata>
+<title>HTMLTableElement38</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the second TABLE element which has four rows. Try
+ to delete a new row using an index of negative five. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-13114938')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<assertDOMException id="HTMLTableElement38">
+<INDEX_SIZE_ERR>
+<deleteRow interface="HTMLTableElement" obj="testNode" index="-5"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableElement39.xml b/test/testcases/tests/level2/html/HTMLTableElement39.xml
new file mode 100644
index 0000000..6631584
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableElement39.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableElement39">
+<metadata>
+<title>HTMLTableElement39</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+ If index is -1 or equal to the number of rows, the new row
+ is appended.
+
+ Retrieve the second TABLE element and invoke the insertRow() method
+ with an index of negative one.
+ The number of rows in the TBODY section before insertion with an index
+ of negative one is two. After the new row is inserted the number
+ of rows in the TBODY section is three.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-11-07</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-39872903"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="tbodiesnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="bodyNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vsection1" type="HTMLTableSectionElement"/>
+<var name="vsection2" type="HTMLTableSectionElement"/>
+<var name="vrows" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;table&quot;"/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<tBodies interface="HTMLTableElement" obj="testNode" var="tbodiesnodeList"/>
+<item interface="HTMLCollection" obj="tbodiesnodeList" var="bodyNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="bodyNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink1" ignoreCase="false"/>
+<insertRow interface="HTMLTableElement" obj="testNode" var="newRow" index="-1"/>
+<tBodies interface="HTMLTableElement" obj="testNode" var="tbodiesnodeList"/>
+<item interface="HTMLCollection" obj="tbodiesnodeList" var="bodyNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="bodyNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableElement40.xml b/test/testcases/tests/level2/html/HTMLTableElement40.xml
new file mode 100644
index 0000000..154b348
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableElement40.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableElement40">
+<metadata>
+<title>HTMLTableElement40</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a table row. If the index is -1
+ the last row of the table is deleted.
+
+ Retrieve the second TABLE element and invoke the deleteRow() method
+ with an index of negative one. Currently there are four rows in the
+ table. The deleteRow() method is called and now there should be three.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-11-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;table&quot;"/>
+<assertSize collection="nodeList" size="3" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="4" id="rowsLink1" ignoreCase="false"/>
+<deleteRow interface="HTMLTableElement" obj="testNode" index="-1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableRowElement15.xml b/test/testcases/tests/level2/html/HTMLTableRowElement15.xml
new file mode 100644
index 0000000..9e89674
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableRowElement15.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableRowElement15">
+<metadata>
+<title>HTMLTableRowElement15</title>
+<creator>NIST</creator>
+<description>
+ The insertCell() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of cells.
+
+ Retrieve the fourth TR element which has six cells. Try
+ to insert a cell using an index of seven. This should throw
+ a INDEX_SIZE_ERR DOMException since there are only six cells.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-68927016"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-68927016')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newCell" type="HTMLElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<assertDOMException id="HTMLTableRowElement15">
+<INDEX_SIZE_ERR>
+<insertCell interface="HTMLTableRowElement" obj="testNode" var="newCell" index="7"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableRowElement16.xml b/test/testcases/tests/level2/html/HTMLTableRowElement16.xml
new file mode 100644
index 0000000..8471a2b
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableRowElement16.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableRowElement16">
+<metadata>
+<title>HTMLTableRowElement16</title>
+<creator>NIST</creator>
+<description>
+ The insertCell() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the fourth TR element which has six cells. Try
+ to insert a cell using an index of negative seven. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-68927016"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-68927016')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newCell" type="HTMLElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<assertDOMException id="HTMLTableRowElement16">
+<INDEX_SIZE_ERR>
+<insertCell interface="HTMLTableRowElement" obj="testNode" var="newCell" index="-7"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableRowElement17.xml b/test/testcases/tests/level2/html/HTMLTableRowElement17.xml
new file mode 100644
index 0000000..b469470
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableRowElement17.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableRowElement17">
+<metadata>
+<title>HTMLTableRowElement17</title>
+<creator>NIST</creator>
+<description>
+ The deleteCell() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of cells.
+
+ Retrieve the fourth TR element which has six cells. Try
+ to delete a cell using an index of seven. This should throw
+ a INDEX_SIZE_ERR DOMException since there are only six cells.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-11738598')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<assertDOMException id="HTMLTableRowElement17">
+<INDEX_SIZE_ERR>
+<deleteCell interface="HTMLTableRowElement" obj="testNode" index="7"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableRowElement18.xml b/test/testcases/tests/level2/html/HTMLTableRowElement18.xml
new file mode 100644
index 0000000..f296086
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableRowElement18.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableRowElement18">
+<metadata>
+<title>HTMLTableRowElement18</title>
+<creator>NIST</creator>
+<description>
+ The deleteCell() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is equal to the number of cells.
+
+ Retrieve the fourth TR element which has six cells. Try
+ to delete a cell using an index of six. This should throw
+ a INDEX_SIZE_ERR DOMException since there are only six cells.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-11738598')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<assertDOMException id="HTMLTableRowElement18">
+<INDEX_SIZE_ERR>
+<deleteCell interface="HTMLTableRowElement" obj="testNode" index="6"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableRowElement19.xml b/test/testcases/tests/level2/html/HTMLTableRowElement19.xml
new file mode 100644
index 0000000..9a111f3
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableRowElement19.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableRowElement19">
+<metadata>
+<title>HTMLTableRowElement19</title>
+<creator>NIST</creator>
+<description>
+ The deleteCell() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the fourth TR element which has six cells. Try
+ to delete a cell using an index of negative six. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-11738598')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<assertDOMException id="HTMLTableRowElement19">
+<INDEX_SIZE_ERR>
+<deleteCell interface="HTMLTableRowElement" obj="testNode" index="-6"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableRowElement20.xml b/test/testcases/tests/level2/html/HTMLTableRowElement20.xml
new file mode 100644
index 0000000..a879e13
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableRowElement20.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableRowElement20">
+<metadata>
+<title>HTMLTableRowElement20</title>
+<creator>NIST</creator>
+<description>
+ The insertCell() method inserts an empty TD cell into this row.
+ If index is -1 or equal to the number of cells, the new cell is
+ appended.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the last TD element. Invoke the
+ insertCell() with an index of negative one
+ which will append the empty cell to the end of the list.
+ Check the value of the newly created cell and make sure it is null
+ and also the numbers of cells should now be seven.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-11-07</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-68927016"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="newCell" type="HTMLElement"/>
+<var name="vcells" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;tr&quot;"/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="6" id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="5"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected="&quot;1230 North Ave. Dallas, Texas 98551&quot;" id="value1Link" ignoreCase="false"/>
+<insertCell interface="HTMLTableRowElement" obj="testNode" var="newCell" index="-1"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="7" id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="6"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<assertNull actual="cellNode" id="value2Link"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableRowElement21.xml b/test/testcases/tests/level2/html/HTMLTableRowElement21.xml
new file mode 100644
index 0000000..9d5a598
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableRowElement21.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableRowElement21">
+<metadata>
+<title>HTMLTableRowElement21</title>
+<creator>NIST</creator>
+<description>
+ The deleteCell() method deletes a cell from the currtent row. If
+ the index is -1 the last cell in the row is deleted.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the last TD element. Invoke the
+ deleteCell() with an index of negative one
+ which will delete the last cell in the row.
+ Check the value of the of the last cell
+ and also the numbers of cells should now be five.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-11-07</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="vcells" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;tr&quot;"/>
+<assertSize collection="nodeList" size="5" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="6" id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="5"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected="&quot;1230 North Ave. Dallas, Texas 98551&quot;" id="value1Link" ignoreCase="false"/>
+<deleteCell interface="HTMLTableRowElement" obj="testNode" index="-1"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode" var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList" var="vcells"/>
+<assertEquals actual="vcells" expected="5" id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList" var="trNode" index="4"/>
+<firstChild interface="Node" obj="trNode" var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"Female"' id="value2Link" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableSectionElement25.xml b/test/testcases/tests/level2/html/HTMLTableSectionElement25.xml
new file mode 100644
index 0000000..8fbd1c2
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableSectionElement25.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableSectionElement25">
+<metadata>
+<title>HTMLTableSectionElement25</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of rows.
+
+ Retrieve the first THEAD element which has one row. Try
+ to insert a new row using an index of two. This should throw
+ a INDEX_SIZE_ERR DOMException since there is only one row.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-93995626"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-93995626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<assertDOMException id="HTMLTableSectionElement25">
+<INDEX_SIZE_ERR>
+<insertRow interface="HTMLTableSectionElement" obj="testNode" var="newRow" index="2"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableSectionElement26.xml b/test/testcases/tests/level2/html/HTMLTableSectionElement26.xml
new file mode 100644
index 0000000..206d91f
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableSectionElement26.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableSectionElement26">
+<metadata>
+<title>HTMLTableSectionElement26</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the first THEAD element which has one row. Try
+ to insert a new row using an index of negative two. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-93995626"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-93995626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<assertDOMException id="HTMLTableSectionElement26">
+<INDEX_SIZE_ERR>
+<insertRow interface="HTMLTableSectionElement" obj="testNode" var="newRow" index="-2"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableSectionElement27.xml b/test/testcases/tests/level2/html/HTMLTableSectionElement27.xml
new file mode 100644
index 0000000..3ab35a5
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableSectionElement27.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableSectionElement27">
+<metadata>
+<title>HTMLTableSectionElement27</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of rows.
+
+ Retrieve the first THEAD element which has one row. Try
+ to delete a row using an index of two. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is greater than the
+ number of rows.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-5625626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<assertDOMException id="HTMLTableSectionElement27">
+<INDEX_SIZE_ERR>
+<deleteRow interface="HTMLTableSectionElement" obj="testNode" index="2"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableSectionElement28.xml b/test/testcases/tests/level2/html/HTMLTableSectionElement28.xml
new file mode 100644
index 0000000..5578ba5
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableSectionElement28.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableSectionElement28">
+<metadata>
+<title>HTMLTableSectionElement28</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is equal to the number of rows.
+
+ Retrieve the first THEAD element which has one row. Try
+ to delete a row using an index of 1. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is equal to the
+ number of rows.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-5625626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<assertDOMException id="HTMLTableSectionElement28">
+<INDEX_SIZE_ERR>
+<deleteRow interface="HTMLTableSectionElement" obj="testNode" index="1"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableSectionElement29.xml b/test/testcases/tests/level2/html/HTMLTableSectionElement29.xml
new file mode 100644
index 0000000..0ddd852
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableSectionElement29.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableSectionElement29">
+<metadata>
+<title>HTMLTableSectionElement29</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the first THEAD element which has one row. Try
+ to delete a row using an index of negative two. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626"/>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-5625626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<assertDOMException id="HTMLTableSectionElement29">
+<INDEX_SIZE_ERR>
+<deleteRow interface="HTMLTableSectionElement" obj="testNode" index="-2"/>
+</INDEX_SIZE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableSectionElement30.xml b/test/testcases/tests/level2/html/HTMLTableSectionElement30.xml
new file mode 100644
index 0000000..8fd17c2
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableSectionElement30.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableSectionElement30">
+<metadata>
+<title>HTMLTableSectionElement30</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row. The new
+ row is inserted immediately before the current indexth row in this
+ section. If index is -1 or equal to the number of rows in this section,
+ the new row is appended.
+
+ Retrieve the first THEAD element and invoke the insertRow() method
+ with an index of negative one. Since the index is negative one the
+ new row is appended.
+ After the new row is appended the number of rows in the THEAD
+ section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-11-07</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-93995626"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;thead&quot;"/>
+<assertSize collection="nodeList" size="1" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1" ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode" var="newRow" index="-1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableSectionElement31.xml b/test/testcases/tests/level2/html/HTMLTableSectionElement31.xml
new file mode 100644
index 0000000..55464e2
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableSectionElement31.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="HTMLTableSectionElement31">
+<metadata>
+<title>HTMLTableSectionElement31</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a row from this section. The index
+ starts from 0 and is relative only to the rows contained inside
+ this section, not all the rows in the table. If the index is -1
+ the last row will be deleted.
+
+ Retrieve the second TBODY element and invoke the deleteRow() method
+ with an index of -1. The nuber of rows in the THEAD section before
+ the deletion of the row is two. After the row is deleted the number
+ of rows in the TBODY section is one.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-11-07</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname="&quot;tbody&quot;"/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink1" ignoreCase="false"/>
+<deleteRow interface="HTMLTableSectionElement" obj="testNode" index="-1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode" var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList" var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/alltests.xml b/test/testcases/tests/level2/html/alltests.xml
new file mode 100644
index 0000000..db40cd4
--- /dev/null
+++ b/test/testcases/tests/level2/html/alltests.xml
@@ -0,0 +1,707 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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 suite SYSTEM "dom2.dtd">
+
+<suite xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="alltests">
+<metadata>
+<title>DOM Level 2 HTML Test Suite</title>
+<creator>DOM Test Suite Project</creator>
+</metadata>
+<suite.member href="../../level1/html/HTMLAnchorElement01.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement02.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement03.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement04.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement05.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement06.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement07.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement08.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement09.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement10.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement11.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement12.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement13.xml"/>
+<suite.member href="../../level1/html/HTMLAnchorElement14.xml"/>
+<suite.member href="../../level1/html/HTMLAppletElement01.xml"/>
+<suite.member href="../../level1/html/HTMLAppletElement02.xml"/>
+<suite.member href="../../level1/html/HTMLAppletElement03.xml"/>
+<suite.member href="../../level1/html/HTMLAppletElement04.xml"/>
+<suite.member href="../../level1/html/HTMLAppletElement05.xml"/>
+<suite.member href="../../level1/html/HTMLAppletElement06.xml"/>
+<suite.member href="HTMLAppletElement07.xml"/>
+<suite.member href="../../level1/html/HTMLAppletElement08.xml"/>
+<suite.member href="HTMLAppletElement09.xml"/>
+<suite.member href="../../level1/html/HTMLAppletElement10.xml"/>
+<suite.member href="../../level1/html/HTMLAppletElement11.xml"/>
+<suite.member href="../../level1/html/HTMLAreaElement01.xml"/>
+<suite.member href="../../level1/html/HTMLAreaElement02.xml"/>
+<suite.member href="../../level1/html/HTMLAreaElement03.xml"/>
+<suite.member href="../../level1/html/HTMLAreaElement04.xml"/>
+<suite.member href="../../level1/html/HTMLAreaElement05.xml"/>
+<suite.member href="../../level1/html/HTMLAreaElement06.xml"/>
+<suite.member href="../../level1/html/HTMLAreaElement07.xml"/>
+<suite.member href="../../level1/html/HTMLAreaElement08.xml"/>
+<suite.member href="../../level1/html/HTMLBRElement01.xml"/>
+<suite.member href="../../level1/html/HTMLBaseElement01.xml"/>
+<suite.member href="../../level1/html/HTMLBaseElement02.xml"/>
+<suite.member href="../../level1/html/HTMLBaseFontElement01.xml"/>
+<suite.member href="../../level1/html/HTMLBaseFontElement02.xml"/>
+<suite.member href="HTMLBaseFontElement03.xml"/>
+<suite.member href="../../level1/html/HTMLBodyElement01.xml"/>
+<suite.member href="../../level1/html/HTMLBodyElement02.xml"/>
+<suite.member href="../../level1/html/HTMLBodyElement03.xml"/>
+<suite.member href="../../level1/html/HTMLBodyElement04.xml"/>
+<suite.member href="../../level1/html/HTMLBodyElement05.xml"/>
+<suite.member href="../../level1/html/HTMLBodyElement06.xml"/>
+<suite.member href="HTMLBodyElement07.xml"/>
+<suite.member href="HTMLBodyElement08.xml"/>
+<suite.member href="HTMLBodyElement09.xml"/>
+<suite.member href="HTMLBodyElement10.xml"/>
+<suite.member href="HTMLBodyElement11.xml"/>
+<suite.member href="HTMLBodyElement12.xml"/>
+<suite.member href="../../level1/html/HTMLButtonElement01.xml"/>
+<suite.member href="../../level1/html/HTMLButtonElement02.xml"/>
+<suite.member href="../../level1/html/HTMLButtonElement03.xml"/>
+<suite.member href="../../level1/html/HTMLButtonElement04.xml"/>
+<suite.member href="../../level1/html/HTMLButtonElement05.xml"/>
+<suite.member href="../../level1/html/HTMLButtonElement06.xml"/>
+<suite.member href="../../level1/html/HTMLButtonElement07.xml"/>
+<suite.member href="../../level1/html/HTMLButtonElement08.xml"/>
+<suite.member href="../../level1/html/HTMLCollection01.xml"/>
+<suite.member href="../../level1/html/HTMLCollection02.xml"/>
+<suite.member href="../../level1/html/HTMLCollection03.xml"/>
+<suite.member href="../../level1/html/HTMLCollection04.xml"/>
+<suite.member href="../../level1/html/HTMLCollection05.xml"/>
+<suite.member href="../../level1/html/HTMLCollection06.xml"/>
+<suite.member href="../../level1/html/HTMLCollection07.xml"/>
+<suite.member href="../../level1/html/HTMLCollection08.xml"/>
+<suite.member href="../../level1/html/HTMLCollection09.xml"/>
+<suite.member href="../../level1/html/HTMLCollection10.xml"/>
+<suite.member href="../../level1/html/HTMLCollection11.xml"/>
+<suite.member href="../../level1/html/HTMLCollection12.xml"/>
+<suite.member href="../../level1/html/HTMLDirectoryElement01.xml"/>
+<suite.member href="../../level1/html/HTMLDivElement01.xml"/>
+<suite.member href="../../level1/html/HTMLDlistElement01.xml"/>
+<suite.member href="../../level1/html/HTMLDocument01.xml"/>
+<suite.member href="../../level1/html/HTMLDocument02.xml"/>
+<suite.member href="../../level1/html/HTMLDocument03.xml"/>
+<suite.member href="../../level1/html/HTMLDocument04.xml"/>
+<suite.member href="../../level1/html/HTMLDocument05.xml"/>
+<suite.member href="../../level1/html/HTMLDocument07.xml"/>
+<suite.member href="../../level1/html/HTMLDocument08.xml"/>
+<suite.member href="../../level1/html/HTMLDocument09.xml"/>
+<suite.member href="../../level1/html/HTMLDocument10.xml"/>
+<suite.member href="../../level1/html/HTMLDocument11.xml"/>
+<suite.member href="../../level1/html/HTMLDocument12.xml"/>
+<suite.member href="../../level1/html/HTMLDocument13.xml"/>
+<suite.member href="../../level1/html/HTMLDocument14.xml"/>
+<suite.member href="../../level1/html/HTMLDocument15.xml"/>
+<suite.member href="../../level1/html/HTMLDocument16.xml"/>
+ <suite.member href="../../level1/html/HTMLDocument17.xml"/>
+ <suite.member href="../../level1/html/HTMLDocument18.xml"/>
+ <suite.member href="../../level1/html/HTMLDocument19.xml"/>
+ <suite.member href="../../level1/html/HTMLDocument20.xml"/>
+ <suite.member href="../../level1/html/HTMLDocument21.xml"/>
+ <suite.member href="HTMLDocument22.xml"/>
+ <suite.member href="HTMLDocument23.xml"/>
+ <suite.member href="HTMLDocument24.xml"/>
+ <suite.member href="HTMLDocument25.xml"/>
+ <suite.member href="HTMLDocument26.xml"/>
+ <suite.member href="HTMLDocument27.xml"/>
+<suite.member href="../../level1/html/HTMLElement01.xml"/>
+<suite.member href="../../level1/html/HTMLElement02.xml"/>
+<suite.member href="../../level1/html/HTMLElement03.xml"/>
+<suite.member href="../../level1/html/HTMLElement04.xml"/>
+<suite.member href="../../level1/html/HTMLElement05.xml"/>
+<suite.member href="../../level1/html/HTMLElement06.xml"/>
+<suite.member href="../../level1/html/HTMLElement07.xml"/>
+<suite.member href="../../level1/html/HTMLElement08.xml"/>
+<suite.member href="../../level1/html/HTMLElement09.xml"/>
+<suite.member href="../../level1/html/HTMLElement10.xml"/>
+<suite.member href="../../level1/html/HTMLElement100.xml"/>
+<suite.member href="../../level1/html/HTMLElement101.xml"/>
+<suite.member href="../../level1/html/HTMLElement102.xml"/>
+<suite.member href="../../level1/html/HTMLElement103.xml"/>
+<suite.member href="../../level1/html/HTMLElement104.xml"/>
+<suite.member href="../../level1/html/HTMLElement105.xml"/>
+<suite.member href="../../level1/html/HTMLElement106.xml"/>
+<suite.member href="../../level1/html/HTMLElement107.xml"/>
+<suite.member href="../../level1/html/HTMLElement108.xml"/>
+<suite.member href="../../level1/html/HTMLElement109.xml"/>
+<suite.member href="../../level1/html/HTMLElement11.xml"/>
+<suite.member href="../../level1/html/HTMLElement110.xml"/>
+<suite.member href="../../level1/html/HTMLElement111.xml"/>
+<suite.member href="../../level1/html/HTMLElement112.xml"/>
+<suite.member href="../../level1/html/HTMLElement113.xml"/>
+<suite.member href="../../level1/html/HTMLElement114.xml"/>
+<suite.member href="../../level1/html/HTMLElement115.xml"/>
+<suite.member href="../../level1/html/HTMLElement116.xml"/>
+<suite.member href="../../level1/html/HTMLElement117.xml"/>
+<suite.member href="../../level1/html/HTMLElement118.xml"/>
+<suite.member href="../../level1/html/HTMLElement119.xml"/>
+<suite.member href="../../level1/html/HTMLElement12.xml"/>
+<suite.member href="../../level1/html/HTMLElement120.xml"/>
+<suite.member href="../../level1/html/HTMLElement121.xml"/>
+<suite.member href="../../level1/html/HTMLElement122.xml"/>
+<suite.member href="../../level1/html/HTMLElement123.xml"/>
+<suite.member href="../../level1/html/HTMLElement124.xml"/>
+<suite.member href="../../level1/html/HTMLElement125.xml"/>
+<suite.member href="../../level1/html/HTMLElement126.xml"/>
+<suite.member href="../../level1/html/HTMLElement127.xml"/>
+<suite.member href="../../level1/html/HTMLElement128.xml"/>
+<suite.member href="../../level1/html/HTMLElement129.xml"/>
+<suite.member href="../../level1/html/HTMLElement13.xml"/>
+<suite.member href="../../level1/html/HTMLElement130.xml"/>
+<suite.member href="../../level1/html/HTMLElement131.xml"/>
+<suite.member href="../../level1/html/HTMLElement132.xml"/>
+<suite.member href="../../level1/html/HTMLElement133.xml"/>
+<suite.member href="../../level1/html/HTMLElement134.xml"/>
+<suite.member href="../../level1/html/HTMLElement135.xml"/>
+<suite.member href="../../level1/html/HTMLElement136.xml"/>
+<suite.member href="../../level1/html/HTMLElement137.xml"/>
+<suite.member href="../../level1/html/HTMLElement138.xml"/>
+<suite.member href="../../level1/html/HTMLElement139.xml"/>
+<suite.member href="../../level1/html/HTMLElement14.xml"/>
+<suite.member href="../../level1/html/HTMLElement140.xml"/>
+<suite.member href="../../level1/html/HTMLElement141.xml"/>
+<suite.member href="../../level1/html/HTMLElement142.xml"/>
+<suite.member href="../../level1/html/HTMLElement143.xml"/>
+<suite.member href="../../level1/html/HTMLElement144.xml"/>
+<suite.member href="../../level1/html/HTMLElement145.xml"/>
+<suite.member href="../../level1/html/HTMLElement15.xml"/>
+<suite.member href="../../level1/html/HTMLElement16.xml"/>
+<suite.member href="../../level1/html/HTMLElement17.xml"/>
+<suite.member href="../../level1/html/HTMLElement18.xml"/>
+<suite.member href="../../level1/html/HTMLElement19.xml"/>
+<suite.member href="../../level1/html/HTMLElement20.xml"/>
+<suite.member href="../../level1/html/HTMLElement21.xml"/>
+<suite.member href="../../level1/html/HTMLElement22.xml"/>
+<suite.member href="../../level1/html/HTMLElement23.xml"/>
+<suite.member href="../../level1/html/HTMLElement24.xml"/>
+<suite.member href="../../level1/html/HTMLElement25.xml"/>
+<suite.member href="../../level1/html/HTMLElement26.xml"/>
+<suite.member href="../../level1/html/HTMLElement27.xml"/>
+<suite.member href="../../level1/html/HTMLElement28.xml"/>
+<suite.member href="../../level1/html/HTMLElement29.xml"/>
+<suite.member href="../../level1/html/HTMLElement30.xml"/>
+<suite.member href="../../level1/html/HTMLElement31.xml"/>
+<suite.member href="../../level1/html/HTMLElement32.xml"/>
+<suite.member href="../../level1/html/HTMLElement33.xml"/>
+<suite.member href="../../level1/html/HTMLElement34.xml"/>
+<suite.member href="../../level1/html/HTMLElement35.xml"/>
+<suite.member href="../../level1/html/HTMLElement36.xml"/>
+<suite.member href="../../level1/html/HTMLElement37.xml"/>
+<suite.member href="../../level1/html/HTMLElement38.xml"/>
+<suite.member href="../../level1/html/HTMLElement39.xml"/>
+<suite.member href="../../level1/html/HTMLElement40.xml"/>
+<suite.member href="../../level1/html/HTMLElement41.xml"/>
+<suite.member href="../../level1/html/HTMLElement42.xml"/>
+<suite.member href="../../level1/html/HTMLElement43.xml"/>
+<suite.member href="../../level1/html/HTMLElement44.xml"/>
+<suite.member href="../../level1/html/HTMLElement45.xml"/>
+<suite.member href="../../level1/html/HTMLElement46.xml"/>
+<suite.member href="../../level1/html/HTMLElement47.xml"/>
+<suite.member href="../../level1/html/HTMLElement48.xml"/>
+<suite.member href="../../level1/html/HTMLElement49.xml"/>
+<suite.member href="../../level1/html/HTMLElement50.xml"/>
+<suite.member href="../../level1/html/HTMLElement51.xml"/>
+<suite.member href="../../level1/html/HTMLElement52.xml"/>
+<suite.member href="../../level1/html/HTMLElement53.xml"/>
+<suite.member href="../../level1/html/HTMLElement54.xml"/>
+<suite.member href="../../level1/html/HTMLElement55.xml"/>
+<suite.member href="../../level1/html/HTMLElement56.xml"/>
+<suite.member href="../../level1/html/HTMLElement57.xml"/>
+<suite.member href="../../level1/html/HTMLElement58.xml"/>
+<suite.member href="../../level1/html/HTMLElement59.xml"/>
+<suite.member href="../../level1/html/HTMLElement60.xml"/>
+<suite.member href="../../level1/html/HTMLElement61.xml"/>
+<suite.member href="../../level1/html/HTMLElement62.xml"/>
+<suite.member href="../../level1/html/HTMLElement63.xml"/>
+<suite.member href="../../level1/html/HTMLElement64.xml"/>
+<suite.member href="../../level1/html/HTMLElement65.xml"/>
+<suite.member href="../../level1/html/HTMLElement66.xml"/>
+<suite.member href="../../level1/html/HTMLElement67.xml"/>
+<suite.member href="../../level1/html/HTMLElement68.xml"/>
+<suite.member href="../../level1/html/HTMLElement69.xml"/>
+<suite.member href="../../level1/html/HTMLElement70.xml"/>
+<suite.member href="../../level1/html/HTMLElement71.xml"/>
+<suite.member href="../../level1/html/HTMLElement72.xml"/>
+<suite.member href="../../level1/html/HTMLElement73.xml"/>
+<suite.member href="../../level1/html/HTMLElement74.xml"/>
+<suite.member href="../../level1/html/HTMLElement75.xml"/>
+<suite.member href="../../level1/html/HTMLElement76.xml"/>
+<suite.member href="../../level1/html/HTMLElement77.xml"/>
+<suite.member href="../../level1/html/HTMLElement78.xml"/>
+<suite.member href="../../level1/html/HTMLElement79.xml"/>
+<suite.member href="../../level1/html/HTMLElement80.xml"/>
+<suite.member href="../../level1/html/HTMLElement81.xml"/>
+<suite.member href="../../level1/html/HTMLElement82.xml"/>
+<suite.member href="../../level1/html/HTMLElement83.xml"/>
+<suite.member href="../../level1/html/HTMLElement84.xml"/>
+<suite.member href="../../level1/html/HTMLElement85.xml"/>
+<suite.member href="../../level1/html/HTMLElement86.xml"/>
+<suite.member href="../../level1/html/HTMLElement87.xml"/>
+<suite.member href="../../level1/html/HTMLElement88.xml"/>
+<suite.member href="../../level1/html/HTMLElement89.xml"/>
+<suite.member href="../../level1/html/HTMLElement90.xml"/>
+<suite.member href="../../level1/html/HTMLElement91.xml"/>
+<suite.member href="../../level1/html/HTMLElement92.xml"/>
+<suite.member href="../../level1/html/HTMLElement93.xml"/>
+<suite.member href="../../level1/html/HTMLElement94.xml"/>
+<suite.member href="../../level1/html/HTMLElement95.xml"/>
+<suite.member href="../../level1/html/HTMLElement96.xml"/>
+<suite.member href="../../level1/html/HTMLElement97.xml"/>
+<suite.member href="../../level1/html/HTMLElement98.xml"/>
+<suite.member href="../../level1/html/HTMLElement99.xml"/>
+<suite.member href="../../level1/html/HTMLFieldSetElement01.xml"/>
+<suite.member href="../../level1/html/HTMLFieldSetElement02.xml"/>
+<suite.member href="../../level1/html/HTMLFontElement01.xml"/>
+<suite.member href="../../level1/html/HTMLFontElement02.xml"/>
+<suite.member href="../../level1/html/HTMLFontElement03.xml"/>
+<suite.member href="../../level1/html/HTMLFormElement01.xml"/>
+<suite.member href="../../level1/html/HTMLFormElement02.xml"/>
+<suite.member href="../../level1/html/HTMLFormElement03.xml"/>
+<suite.member href="../../level1/html/HTMLFormElement04.xml"/>
+<suite.member href="../../level1/html/HTMLFormElement05.xml"/>
+<suite.member href="../../level1/html/HTMLFormElement06.xml"/>
+<suite.member href="../../level1/html/HTMLFormElement07.xml"/>
+<suite.member href="../../level1/html/HTMLFormElement08.xml"/>
+<suite.member href="../../level1/html/HTMLFormElement09.xml"/>
+<suite.member href="../../level1/html/HTMLFormElement10.xml"/>
+<suite.member href="../../level1/html/HTMLFrameElement01.xml"/>
+<suite.member href="../../level1/html/HTMLFrameElement02.xml"/>
+<suite.member href="../../level1/html/HTMLFrameElement03.xml"/>
+<suite.member href="../../level1/html/HTMLFrameElement04.xml"/>
+<suite.member href="../../level1/html/HTMLFrameElement05.xml"/>
+<suite.member href="../../level1/html/HTMLFrameElement06.xml"/>
+<suite.member href="../../level1/html/HTMLFrameElement07.xml"/>
+<suite.member href="../../level1/html/HTMLFrameElement08.xml"/>
+<suite.member href="HTMLFrameElement09.xml"/>
+<suite.member href="../../level1/html/HTMLFrameSetElement01.xml"/>
+<suite.member href="../../level1/html/HTMLFrameSetElement02.xml"/>
+<suite.member href="../../level1/html/HTMLHRElement01.xml"/>
+<suite.member href="../../level1/html/HTMLHRElement02.xml"/>
+<suite.member href="../../level1/html/HTMLHRElement03.xml"/>
+<suite.member href="../../level1/html/HTMLHRElement04.xml"/>
+<suite.member href="../../level1/html/HTMLHeadElement01.xml"/>
+<suite.member href="../../level1/html/HTMLHeadingElement01.xml"/>
+<suite.member href="../../level1/html/HTMLHeadingElement02.xml"/>
+<suite.member href="../../level1/html/HTMLHeadingElement03.xml"/>
+<suite.member href="../../level1/html/HTMLHeadingElement04.xml"/>
+<suite.member href="../../level1/html/HTMLHeadingElement05.xml"/>
+<suite.member href="../../level1/html/HTMLHeadingElement06.xml"/>
+<suite.member href="../../level1/html/HTMLHtmlElement01.xml"/>
+<suite.member href="../../level1/html/HTMLIFrameElement01.xml"/>
+<suite.member href="../../level1/html/HTMLIFrameElement02.xml"/>
+<suite.member href="../../level1/html/HTMLIFrameElement03.xml"/>
+<suite.member href="../../level1/html/HTMLIFrameElement04.xml"/>
+<suite.member href="../../level1/html/HTMLIFrameElement05.xml"/>
+<suite.member href="../../level1/html/HTMLIFrameElement06.xml"/>
+<suite.member href="../../level1/html/HTMLIFrameElement07.xml"/>
+<suite.member href="../../level1/html/HTMLIFrameElement08.xml"/>
+<suite.member href="../../level1/html/HTMLIFrameElement09.xml"/>
+<suite.member href="../../level1/html/HTMLIFrameElement10.xml"/>
+<suite.member href="HTMLIFrameElement11.xml"/>
+<suite.member href="../../level1/html/HTMLImageElement01.xml"/>
+<suite.member href="../../level1/html/HTMLImageElement02.xml"/>
+<suite.member href="../../level1/html/HTMLImageElement03.xml"/>
+<suite.member href="../../level1/html/HTMLImageElement04.xml"/>
+<suite.member href="HTMLImageElement05.xml"/>
+<suite.member href="HTMLImageElement06.xml"/>
+<suite.member href="../../level1/html/HTMLImageElement07.xml"/>
+<suite.member href="../../level1/html/HTMLImageElement08.xml"/>
+<suite.member href="../../level1/html/HTMLImageElement09.xml"/>
+<suite.member href="../../level1/html/HTMLImageElement10.xml"/>
+<suite.member href="HTMLImageElement11.xml"/>
+<suite.member href="HTMLImageElement12.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement01.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement02.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement03.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement04.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement05.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement06.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement07.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement08.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement09.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement10.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement11.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement12.xml"/>
+<suite.member href="HTMLInputElement13.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement14.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement15.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement16.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement17.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement18.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement19.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement20.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement21.xml"/>
+<suite.member href="../../level1/html/HTMLInputElement22.xml"/>
+<suite.member href="../../level1/html/HTMLIsIndexElement01.xml"/>
+<suite.member href="../../level1/html/HTMLIsIndexElement02.xml"/>
+<suite.member href="../../level1/html/HTMLIsIndexElement03.xml"/>
+<suite.member href="../../level1/html/HTMLLIElement01.xml"/>
+<suite.member href="../../level1/html/HTMLLIElement02.xml"/>
+<suite.member href="../../level1/html/HTMLLabelElement01.xml"/>
+<suite.member href="../../level1/html/HTMLLabelElement02.xml"/>
+<suite.member href="../../level1/html/HTMLLabelElement03.xml"/>
+<suite.member href="../../level1/html/HTMLLabelElement04.xml"/>
+<suite.member href="../../level1/html/HTMLLegendElement01.xml"/>
+<suite.member href="../../level1/html/HTMLLegendElement02.xml"/>
+<suite.member href="../../level1/html/HTMLLegendElement03.xml"/>
+<suite.member href="../../level1/html/HTMLLegendElement04.xml"/>
+<suite.member href="../../level1/html/HTMLLinkElement01.xml"/>
+<suite.member href="../../level1/html/HTMLLinkElement02.xml"/>
+<suite.member href="../../level1/html/HTMLLinkElement03.xml"/>
+<suite.member href="../../level1/html/HTMLLinkElement04.xml"/>
+<suite.member href="../../level1/html/HTMLLinkElement05.xml"/>
+<suite.member href="../../level1/html/HTMLLinkElement06.xml"/>
+<suite.member href="../../level1/html/HTMLLinkElement07.xml"/>
+<suite.member href="../../level1/html/HTMLLinkElement08.xml"/>
+<suite.member href="../../level1/html/HTMLLinkElement09.xml"/>
+<suite.member href="../../level1/html/HTMLMapElement01.xml"/>
+<suite.member href="../../level1/html/HTMLMapElement02.xml"/>
+<suite.member href="../../level1/html/HTMLMenuElement01.xml"/>
+<suite.member href="../../level1/html/HTMLMetaElement01.xml"/>
+<suite.member href="../../level1/html/HTMLMetaElement02.xml"/>
+<suite.member href="../../level1/html/HTMLMetaElement03.xml"/>
+<suite.member href="../../level1/html/HTMLMetaElement04.xml"/>
+<suite.member href="../../level1/html/HTMLModElement01.xml"/>
+<suite.member href="../../level1/html/HTMLModElement02.xml"/>
+<suite.member href="../../level1/html/HTMLModElement03.xml"/>
+<suite.member href="../../level1/html/HTMLModElement04.xml"/>
+<suite.member href="../../level1/html/HTMLOListElement01.xml"/>
+<suite.member href="../../level1/html/HTMLOListElement02.xml"/>
+<suite.member href="../../level1/html/HTMLOListElement03.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement01.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement02.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement03.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement04.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement05.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement06.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement07.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement08.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement09.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement10.xml"/>
+<suite.member href="HTMLObjectElement11.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement12.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement13.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement14.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement15.xml"/>
+<suite.member href="HTMLObjectElement16.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement17.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement18.xml"/>
+<suite.member href="../../level1/html/HTMLObjectElement19.xml"/>
+<suite.member href="HTMLObjectElement20.xml"/>
+<suite.member href="../../level1/html/HTMLOptGroupElement01.xml"/>
+<suite.member href="../../level1/html/HTMLOptGroupElement02.xml"/>
+<suite.member href="../../level1/html/HTMLOptionElement01.xml"/>
+<suite.member href="../../level1/html/HTMLOptionElement02.xml"/>
+<suite.member href="../../level1/html/HTMLOptionElement03.xml"/>
+<suite.member href="../../level1/html/HTMLOptionElement04.xml"/>
+<suite.member href="../../level1/html/HTMLOptionElement05.xml"/>
+<suite.member href="../../level1/html/HTMLOptionElement06.xml"/>
+<suite.member href="../../level1/html/HTMLOptionElement07.xml"/>
+<suite.member href="../../level1/html/HTMLOptionElement08.xml"/>
+<suite.member href="../../level1/html/HTMLOptionElement09.xml"/>
+<suite.member href="HTMLOptionsCollection01.xml"/>
+<suite.member href="HTMLOptionsCollection02.xml"/>
+<suite.member href="HTMLOptionsCollection03.xml"/>
+<suite.member href="HTMLOptionsCollection04.xml"/>
+<suite.member href="HTMLOptionsCollection05.xml"/>
+<suite.member href="HTMLOptionsCollection06.xml"/>
+<suite.member href="HTMLOptionsCollection07.xml"/>
+<suite.member href="../../level1/html/HTMLParagraphElement01.xml"/>
+<suite.member href="../../level1/html/HTMLParamElement01.xml"/>
+<suite.member href="../../level1/html/HTMLParamElement02.xml"/>
+<suite.member href="../../level1/html/HTMLParamElement03.xml"/>
+<suite.member href="../../level1/html/HTMLParamElement04.xml"/>
+<suite.member href="../../level1/html/HTMLPreElement01.xml"/>
+<suite.member href="../../level1/html/HTMLQuoteElement01.xml"/>
+<suite.member href="../../level1/html/HTMLQuoteElement02.xml"/>
+<suite.member href="../../level1/html/HTMLScriptElement01.xml"/>
+<suite.member href="../../level1/html/HTMLScriptElement02.xml"/>
+<suite.member href="../../level1/html/HTMLScriptElement03.xml"/>
+<suite.member href="../../level1/html/HTMLScriptElement04.xml"/>
+<suite.member href="../../level1/html/HTMLScriptElement05.xml"/>
+<suite.member href="../../level1/html/HTMLScriptElement06.xml"/>
+<suite.member href="../../level1/html/HTMLScriptElement07.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement01.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement02.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement03.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement04.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement05.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement06.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement07.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement08.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement09.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement10.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement11.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement12.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement13.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement14.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement15.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement16.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement17.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement18.xml"/>
+<suite.member href="../../level1/html/HTMLSelectElement19.xml"/>
+<suite.member href="HTMLSelectElement20.xml"/>
+<suite.member href="../../level1/html/HTMLStyleElement01.xml"/>
+<suite.member href="../../level1/html/HTMLStyleElement02.xml"/>
+<suite.member href="../../level1/html/HTMLStyleElement03.xml"/>
+<suite.member href="../../level1/html/HTMLTableCaptionElement01.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement01.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement02.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement03.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement04.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement05.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement06.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement07.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement08.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement09.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement10.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement11.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement12.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement13.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement14.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement15.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement16.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement17.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement18.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement19.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement20.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement21.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement22.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement23.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement24.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement25.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement26.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement27.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement28.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement29.xml"/>
+<suite.member href="../../level1/html/HTMLTableCellElement30.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement01.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement02.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement03.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement04.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement05.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement06.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement07.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement08.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement09.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement10.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement11.xml"/>
+<suite.member href="../../level1/html/HTMLTableColElement12.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement01.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement02.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement03.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement04.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement05.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement06.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement07.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement08.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement09.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement10.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement11.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement12.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement13.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement14.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement15.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement16.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement17.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement18.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement19.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement20.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement21.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement22.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement23.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement24.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement25.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement26.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement27.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement28.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement29.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement30.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement31.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement32.xml"/>
+<suite.member href="../../level1/html/HTMLTableElement33.xml"/>
+<suite.member href="HTMLTableElement34.xml"/>
+<suite.member href="HTMLTableElement35.xml"/>
+<suite.member href="HTMLTableElement36.xml"/>
+<suite.member href="HTMLTableElement37.xml"/>
+<suite.member href="HTMLTableElement38.xml"/>
+<suite.member href="HTMLTableElement39.xml"/>
+<suite.member href="HTMLTableElement40.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement01.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement02.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement03.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement04.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement05.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement06.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement07.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement08.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement09.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement10.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement11.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement12.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement13.xml"/>
+<suite.member href="../../level1/html/HTMLTableRowElement14.xml"/>
+<suite.member href="HTMLTableRowElement15.xml"/>
+<suite.member href="HTMLTableRowElement16.xml"/>
+<suite.member href="HTMLTableRowElement17.xml"/>
+<suite.member href="HTMLTableRowElement18.xml"/>
+<suite.member href="HTMLTableRowElement19.xml"/>
+<suite.member href="HTMLTableRowElement20.xml"/>
+<suite.member href="HTMLTableRowElement21.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement01.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement02.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement03.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement04.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement05.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement06.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement07.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement08.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement09.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement10.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement11.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement12.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement13.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement14.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement15.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement16.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement17.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement18.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement19.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement20.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement21.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement22.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement23.xml"/>
+<suite.member href="../../level1/html/HTMLTableSectionElement24.xml"/>
+<suite.member href="HTMLTableSectionElement25.xml"/>
+<suite.member href="HTMLTableSectionElement26.xml"/>
+<suite.member href="HTMLTableSectionElement27.xml"/>
+<suite.member href="HTMLTableSectionElement28.xml"/>
+<suite.member href="HTMLTableSectionElement29.xml"/>
+<suite.member href="HTMLTableSectionElement30.xml"/>
+<suite.member href="HTMLTableSectionElement31.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement01.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement02.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement03.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement04.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement05.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement06.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement07.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement08.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement09.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement10.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement11.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement12.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement13.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement14.xml"/>
+<suite.member href="../../level1/html/HTMLTextAreaElement15.xml"/>
+<suite.member href="../../level1/html/HTMLTitleElement01.xml"/>
+<suite.member href="../../level1/html/HTMLUListElement01.xml"/>
+<suite.member href="../../level1/html/HTMLUListElement02.xml"/>
+
+
+ <suite.member href="../../level1/html/anchor01.xml"/>
+ <suite.member href="../../level1/html/anchor02.xml"/>
+ <suite.member href="../../level1/html/anchor03.xml"/>
+ <suite.member href="../../level1/html/anchor04.xml"/>
+ <suite.member href="../../level1/html/anchor05.xml"/>
+ <suite.member href="../../level1/html/anchor06.xml"/>
+ <suite.member href="../../level1/html/area01.xml"/>
+ <suite.member href="../../level1/html/area02.xml"/>
+ <suite.member href="../../level1/html/area03.xml"/>
+ <suite.member href="../../level1/html/area04.xml"/>
+ <suite.member href="../../level1/html/basefont01.xml"/>
+ <suite.member href="../../level1/html/body01.xml"/>
+ <suite.member href="../../level1/html/button01.xml"/>
+ <suite.member href="../../level1/html/button02.xml"/>
+ <suite.member href="../../level1/html/button03.xml"/>
+ <suite.member href="../../level1/html/button04.xml"/>
+ <suite.member href="../../level1/html/button05.xml"/>
+ <suite.member href="../../level1/html/button06.xml"/>
+ <suite.member href="../../level1/html/button07.xml"/>
+ <suite.member href="../../level1/html/button08.xml"/>
+ <suite.member href="../../level1/html/button09.xml"/>
+ <suite.member href="../../level1/html/dlist01.xml"/>
+ <suite.member href="../../level1/html/doc01.xml"/>
+ <suite.member href="../../level1/html/hasFeature01.xml"/>
+ <suite.member href="hasFeature02.xml"/>
+ <suite.member href="hasFeature03.xml"/>
+ <suite.member href="hasFeature04.xml"/>
+ <suite.member href="hasFeature05.xml"/>
+ <suite.member href="hasFeature06.xml"/>
+ <suite.member href="../../level1/html/object01.xml"/>
+ <suite.member href="../../level1/html/object02.xml"/>
+ <suite.member href="../../level1/html/object03.xml"/>
+ <suite.member href="../../level1/html/object04.xml"/>
+ <suite.member href="../../level1/html/object05.xml"/>
+ <suite.member href="../../level1/html/object06.xml"/>
+ <suite.member href="../../level1/html/object07.xml"/>
+ <suite.member href="object08.xml"/>
+ <suite.member href="../../level1/html/object09.xml"/>
+ <suite.member href="../../level1/html/object10.xml"/>
+ <suite.member href="../../level1/html/object11.xml"/>
+ <suite.member href="../../level1/html/object12.xml"/>
+ <suite.member href="object13.xml"/>
+ <suite.member href="../../level1/html/object14.xml"/>
+ <suite.member href="../../level1/html/object15.xml"/>
+ <suite.member href="../../level1/html/table01.xml"/>
+ <suite.member href="../../level1/html/table02.xml"/>
+ <suite.member href="../../level1/html/table03.xml"/>
+ <suite.member href="../../level1/html/table04.xml"/>
+ <suite.member href="../../level1/html/table06.xml"/>
+ <suite.member href="../../level1/html/table07.xml"/>
+ <suite.member href="../../level1/html/table08.xml"/>
+ <suite.member href="../../level1/html/table09.xml"/>
+ <suite.member href="../../level1/html/table10.xml"/>
+ <suite.member href="../../level1/html/table12.xml"/>
+ <suite.member href="../../level1/html/table15.xml"/>
+ <suite.member href="../../level1/html/table17.xml"/>
+ <suite.member href="../../level1/html/table18.xml"/>
+ <suite.member href="../../level1/html/table19.xml"/>
+ <suite.member href="../../level1/html/table20.xml"/>
+ <suite.member href="../../level1/html/table21.xml"/>
+ <suite.member href="../../level1/html/table22.xml"/>
+ <suite.member href="../../level1/html/table23.xml"/>
+ <suite.member href="../../level1/html/table24.xml"/>
+ <suite.member href="../../level1/html/table25.xml"/>
+ <suite.member href="../../level1/html/table26.xml"/>
+ <suite.member href="../../level1/html/table27.xml"/>
+ <suite.member href="../../level1/html/table28.xml"/>
+ <suite.member href="../../level1/html/table29.xml"/>
+ <suite.member href="../../level1/html/table30.xml"/>
+ <suite.member href="../../level1/html/table31.xml"/>
+ <suite.member href="../../level1/html/table32.xml"/>
+ <suite.member href="../../level1/html/table33.xml"/>
+ <suite.member href="../../level1/html/table34.xml"/>
+ <suite.member href="../../level1/html/table35.xml"/>
+ <suite.member href="../../level1/html/table36.xml"/>
+ <suite.member href="../../level1/html/table37.xml"/>
+ <suite.member href="../../level1/html/table38.xml"/>
+ <suite.member href="../../level1/html/table39.xml"/>
+ <suite.member href="../../level1/html/table40.xml"/>
+ <suite.member href="../../level1/html/table41.xml"/>
+ <suite.member href="../../level1/html/table42.xml"/>
+ <suite.member href="../../level1/html/table43.xml"/>
+ <suite.member href="../../level1/html/table44.xml"/>
+ <suite.member href="../../level1/html/table45.xml"/>
+ <suite.member href="../../level1/html/table46.xml"/>
+ <suite.member href="../../level1/html/table47.xml"/>
+ <suite.member href="../../level1/html/table48.xml"/>
+ <suite.member href="../../level1/html/table49.xml"/>
+ <suite.member href="../../level1/html/table50.xml"/>
+ <suite.member href="../../level1/html/table51.xml"/>
+ <suite.member href="../../level1/html/table52.xml"/>
+ <suite.member href="../../level1/html/table53.xml"/>
+
+</suite>
diff --git a/test/testcases/tests/level2/html/files/.cvsignore b/test/testcases/tests/level2/html/files/.cvsignore
new file mode 100644
index 0000000..30d6772
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/.cvsignore
@@ -0,0 +1,6 @@
+xhtml1-frameset.dtd
+xhtml1-strict.dtd
+xhtml1-transitional.dtd
+xhtml-lat1.ent
+xhtml-special.ent
+xhtml-symbol.ent
diff --git a/test/testcases/tests/level2/html/files/CVS/Entries b/test/testcases/tests/level2/html/files/CVS/Entries
new file mode 100644
index 0000000..b5780ce
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/CVS/Entries
@@ -0,0 +1,11 @@
+/.cvsignore/1.1/Fri Apr 3 02:47:56 2009//
+/frame2.html/1.3/Fri Apr 3 02:47:56 2009//
+/frame2.xhtml/1.4/Fri Apr 3 02:47:56 2009/-kb/
+/frame2.xml/1.4/Fri Apr 3 02:47:55 2009//
+/iframe2.html/1.4/Fri Apr 3 02:47:56 2009//
+/iframe2.xhtml/1.4/Fri Apr 3 02:47:56 2009/-kb/
+/iframe2.xml/1.4/Fri Apr 3 02:47:56 2009//
+/optionscollection.html/1.2/Fri Apr 3 02:47:56 2009//
+/optionscollection.xhtml/1.2/Fri Apr 3 02:47:56 2009/-kb/
+/optionscollection.xml/1.2/Fri Apr 3 02:47:56 2009//
+D
diff --git a/test/testcases/tests/level2/html/files/CVS/Repository b/test/testcases/tests/level2/html/files/CVS/Repository
new file mode 100644
index 0000000..f200009
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level2/html/files
diff --git a/test/testcases/tests/level2/html/files/CVS/Root b/test/testcases/tests/level2/html/files/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level2/html/files/CVS/Template b/test/testcases/tests/level2/html/files/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/CVS/Template
diff --git a/test/testcases/tests/level2/html/files/frame2.html b/test/testcases/tests/level2/html/files/frame2.html
new file mode 100644
index 0000000..6030ec5
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/frame2.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAME2</TITLE>
+<!-- required by frame contents -->
+<SCRIPT type="text/javascript">function loadComplete() { }</SCRIPT>
+</HEAD>
+<FRAMESET COLS="20, 80" onload="parent.loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME ID="Frame1" NAME="Frame1" SRC="frame.html">
+</FRAMESET>
+<FRAME ID="Frame2" NAME="Frame2" SRC="iframe.html">
+</FRAMESET>
+</HTML>
diff --git a/test/testcases/tests/level2/html/files/frame2.xhtml b/test/testcases/tests/level2/html/files/frame2.xhtml
new file mode 100644
index 0000000..09008eb
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/frame2.xhtml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
+ "xhtml1-frameset.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FRAME2</title>
+<!-- required by frame contents -->
+<script type="text/javascript">function loadComplete() { }</script>
+</head>
+<frameset cols="20, 80" onload="parent.loadComplete()">
+<frameset rows="100, 200">
+<frame id="Frame1" name="Frame1" src="frame.xhtml"/>
+</frameset>
+<frame id="Frame2" name="Frame2" src="iframe.xhtml"/>
+</frameset>
+</html>
diff --git a/test/testcases/tests/level2/html/files/frame2.xml b/test/testcases/tests/level2/html/files/frame2.xml
new file mode 100644
index 0000000..615f234
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/frame2.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
+ "xhtml1-frameset.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - FRAME2</title>
+<script type="text/javascript">function loadComplete() { }</script>
+</head>
+<frameset cols="20, 80" onload="parent.loadComplete()">
+<frameset rows="100, 200">
+<frame id="Frame1" name="Frame1" src="frame.html"/>
+</frameset>
+<frame id="Frame2" name="Frame2" src="iframe.html"/>
+</frameset>
+</html>
diff --git a/test/testcases/tests/level2/html/files/iframe2.html b/test/testcases/tests/level2/html/files/iframe2.html
new file mode 100644
index 0000000..7f302b8
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/iframe2.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME2</TITLE>
+<!-- required by frame contents -->
+<SCRIPT type="text/javascript">function loadComplete() { }</SCRIPT>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<IFRAME ID="Iframe1" NAME="Iframe1" SRC="iframe.html">IFRAME1</IFRAME>
+<IFRAME ID="Iframe2" SRC="frame.html" NAME="Iframe2">IFRAME2</IFRAME>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level2/html/files/iframe2.xhtml b/test/testcases/tests/level2/html/files/iframe2.xhtml
new file mode 100644
index 0000000..a1b1011
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/iframe2.xhtml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - IFRAME2</title>
+<!-- required by frame contents -->
+<script type="text/javascript">function loadComplete() { }</script>
+</head>
+<body onload="parent.loadComplete()">
+<iframe id="Iframe1" name="Iframe1" src="iframe.html">IFRAME1</iframe>
+<iframe id="Iframe2" src="frame.html" name="Iframe2">IFRAME2</iframe>
+</body>
+</html>
diff --git a/test/testcases/tests/level2/html/files/iframe2.xml b/test/testcases/tests/level2/html/files/iframe2.xml
new file mode 100644
index 0000000..a1b1011
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/iframe2.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - IFRAME2</title>
+<!-- required by frame contents -->
+<script type="text/javascript">function loadComplete() { }</script>
+</head>
+<body onload="parent.loadComplete()">
+<iframe id="Iframe1" name="Iframe1" src="iframe.html">IFRAME1</iframe>
+<iframe id="Iframe2" src="frame.html" name="Iframe2">IFRAME2</iframe>
+</body>
+</html>
diff --git a/test/testcases/tests/level2/html/files/optionscollection.html b/test/testcases/tests/level2/html/files/optionscollection.html
new file mode 100644
index 0000000..d1e8743
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/optionscollection.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTIONSCOLLECTION</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/test/testcases/tests/level2/html/files/optionscollection.xhtml b/test/testcases/tests/level2/html/files/optionscollection.xhtml
new file mode 100644
index 0000000..3f04194
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/optionscollection.xhtml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OPTIONSCOLLECTION</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<select id="selectId" dir="ltr" tabindex="7" name="select1" multiple="multiple" size="1">
+<option selected="selected" value="10001">EMP10001</option>
+<option label="l1">EMP10002</option>
+<option>EMP10003</option>
+<option>EMP10004</option>
+<option>EMP10005</option>
+</select>
+</p>
+</form>
+<p>
+<select name="select2" disabled="disabled">
+<option>EMP20001</option>
+<option>EMP20002</option>
+<option>EMP20003</option>
+<option>EMP20004</option>
+<option disabled="disabled">EMP20005</option>
+</select>
+</p>
+</body>
+</html>
+
+
diff --git a/test/testcases/tests/level2/html/files/optionscollection.xml b/test/testcases/tests/level2/html/files/optionscollection.xml
new file mode 100644
index 0000000..3f04194
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/optionscollection.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - OPTIONSCOLLECTION</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl" method="post">
+<p>
+<select id="selectId" dir="ltr" tabindex="7" name="select1" multiple="multiple" size="1">
+<option selected="selected" value="10001">EMP10001</option>
+<option label="l1">EMP10002</option>
+<option>EMP10003</option>
+<option>EMP10004</option>
+<option>EMP10005</option>
+</select>
+</p>
+</form>
+<p>
+<select name="select2" disabled="disabled">
+<option>EMP20001</option>
+<option>EMP20002</option>
+<option>EMP20003</option>
+<option>EMP20004</option>
+<option disabled="disabled">EMP20005</option>
+</select>
+</p>
+</body>
+</html>
+
+
diff --git a/test/testcases/tests/level2/html/hasFeature02.xml b/test/testcases/tests/level2/html/hasFeature02.xml
new file mode 100644
index 0000000..560a60c
--- /dev/null
+++ b/test/testcases/tests/level2/html/hasFeature02.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasFeature02">
+<metadata>
+<title>hasFeature02</title>
+<creator>Curt Arnold</creator>
+<description>
+hasFeature("hTmL", "2.0") should return true.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="version" type="DOMString" value='"2.0"'/>
+<var name="state" type="boolean"/>
+<implementation var="domImpl"/>
+<hasFeature obj="domImpl" var="state" feature='"hTmL"' version="version"/>
+<assertTrue actual="state" id="hasHTML2"/>
+</test>
diff --git a/test/testcases/tests/level2/html/hasFeature03.xml b/test/testcases/tests/level2/html/hasFeature03.xml
new file mode 100644
index 0000000..49fb3b5
--- /dev/null
+++ b/test/testcases/tests/level2/html/hasFeature03.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasFeature03">
+<metadata>
+<title>hasFeature03</title>
+<creator>Curt Arnold</creator>
+<description>
+hasFeature("xhTmL", null) should return true if hasFeature("XML", null) returns true.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="version" type="DOMString" isNull="true"/>
+<var name="state" type="boolean"/>
+<var name="hasXML" type="boolean"/>
+<implementation var="domImpl"/>
+<hasFeature obj="domImpl" var="hasXML" feature='"XML"' version="version"/>
+<hasFeature obj="domImpl" var="state" feature='"xhTmL"' version="version"/>
+<assertEquals actual="state" expected="hasXML" ignoreCase="false" id="hasXHTML"/>
+</test>
diff --git a/test/testcases/tests/level2/html/hasFeature04.xml b/test/testcases/tests/level2/html/hasFeature04.xml
new file mode 100644
index 0000000..077b913
--- /dev/null
+++ b/test/testcases/tests/level2/html/hasFeature04.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasFeature04">
+<metadata>
+<title>hasFeature04</title>
+<creator>Curt Arnold</creator>
+<description>
+hasFeature("xhTmL", "2.0") should return true if hasFeature("XML", "2.0") returns true.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="version" type="DOMString" value='"2.0"'/>
+<var name="state" type="boolean"/>
+<var name="hasXML" type="boolean"/>
+<implementation var="domImpl"/>
+<hasFeature obj="domImpl" var="hasXML" feature='"XML"' version="version"/>
+<hasFeature obj="domImpl" var="state" feature='"xhTmL"' version="version"/>
+<assertEquals actual="state" expected="hasXML" ignoreCase="false" id="hasXHTML"/>
+</test>
diff --git a/test/testcases/tests/level2/html/hasFeature05.xml b/test/testcases/tests/level2/html/hasFeature05.xml
new file mode 100644
index 0000000..c79f90b
--- /dev/null
+++ b/test/testcases/tests/level2/html/hasFeature05.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasFeature05">
+<metadata>
+<title>hasFeature05</title>
+<creator>Curt Arnold</creator>
+<description>
+hasFeature("cOrE", null) should return true.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="version" type="DOMString" isNull="true"/>
+<var name="state" type="boolean"/>
+<implementation var="domImpl"/>
+<hasFeature obj="domImpl" var="state" feature='"cOrE"' version="version"/>
+<assertTrue actual="state" id="hasCore"/>
+</test>
diff --git a/test/testcases/tests/level2/html/hasFeature06.xml b/test/testcases/tests/level2/html/hasFeature06.xml
new file mode 100644
index 0000000..162e5cf
--- /dev/null
+++ b/test/testcases/tests/level2/html/hasFeature06.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 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 "dom2.dtd">
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="hasFeature06">
+<metadata>
+<title>hasFeature06</title>
+<creator>Curt Arnold</creator>
+<description>
+hasFeature("cOrE", "2.0") should return true.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="version" type="DOMString" value='"2.0"'/>
+<var name="state" type="boolean"/>
+<implementation var="domImpl"/>
+<hasFeature obj="domImpl" var="state" feature='"cOrE"' version="version"/>
+<assertTrue actual="state" id="hasCore"/>
+</test>
diff --git a/test/testcases/tests/level2/html/metadata.xml b/test/testcases/tests/level2/html/metadata.xml
new file mode 100644
index 0000000..be6715a
--- /dev/null
+++ b/test/testcases/tests/level2/html/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2001 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 metadata SYSTEM "dom2.dtd">
+
+<metadata xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2">
+</metadata>
diff --git a/test/testcases/tests/level2/html/object08.xml b/test/testcases/tests/level2/html/object08.xml
new file mode 100644
index 0000000..32d32cf
--- /dev/null
+++ b/test/testcases/tests/level2/html/object08.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="object08">
+<metadata>
+<title>object08</title>
+<creator>Netscape</creator>
+<description>
+Horizontal space to the left and right of this image, applet, or object.
+The value of attribute hspace of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-17085376"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhspace" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<hspace interface="HTMLObjectElement" obj="testNode" var="vhspace"/>
+<assertEquals actual="vhspace" expected='0' id="hspaceLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/object13.xml b/test/testcases/tests/level2/html/object13.xml
new file mode 100644
index 0000000..a3a603a
--- /dev/null
+++ b/test/testcases/tests/level2/html/object13.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 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 "dom2.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2" name="object13">
+<metadata>
+<title>object13</title>
+<creator>Netscape</creator>
+<description>
+Vertical space above and below this image, applet, or object.
+The value of attribute vspace of the object element is read and checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-8682483"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvspace" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="object" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="nodeList" tagname='"object"'/>
+<assertSize collection="nodeList" size="2" id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode" index="0"/>
+<vspace interface="HTMLObjectElement" obj="testNode" var="vvspace"/>
+<assertEquals actual="vvspace" expected='0' id="vspaceLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/CVS/Entries b/test/testcases/tests/level3/CVS/Entries
new file mode 100644
index 0000000..03beefd
--- /dev/null
+++ b/test/testcases/tests/level3/CVS/Entries
@@ -0,0 +1,5 @@
+D/core////
+D/events////
+D/ls////
+D/validation////
+D/xpath////
diff --git a/test/testcases/tests/level3/CVS/Repository b/test/testcases/tests/level3/CVS/Repository
new file mode 100644
index 0000000..61d04a9
--- /dev/null
+++ b/test/testcases/tests/level3/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3
diff --git a/test/testcases/tests/level3/CVS/Root b/test/testcases/tests/level3/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/CVS/Template b/test/testcases/tests/level3/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/CVS/Template
diff --git a/test/testcases/tests/level3/core/.cvsignore b/test/testcases/tests/level3/core/.cvsignore
new file mode 100644
index 0000000..65d27fe
--- /dev/null
+++ b/test/testcases/tests/level3/core/.cvsignore
@@ -0,0 +1,3 @@
+dom3.dtd
+test-to-html.xsl
+dom3.xsd
diff --git a/test/testcases/tests/level3/core/CVS/Entries b/test/testcases/tests/level3/core/CVS/Entries
new file mode 100644
index 0000000..078b303
--- /dev/null
+++ b/test/testcases/tests/level3/core/CVS/Entries
@@ -0,0 +1,726 @@
+D/files////
+/.cvsignore/1.1/Fri Apr 3 02:48:00 2009//
+/alltests.xml/1.42/Fri Apr 3 02:47:59 2009//
+/attrgetschematypeinfo01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/attrgetschematypeinfo02.xml/1.4/Fri Apr 3 02:48:01 2009//
+/attrgetschematypeinfo03.xml/1.6/Fri Apr 3 02:47:59 2009//
+/attrgetschematypeinfo04.xml/1.6/Fri Apr 3 02:47:58 2009//
+/attrgetschematypeinfo05.xml/1.5/Fri Apr 3 02:48:00 2009//
+/attrgetschematypeinfo06.xml/1.4/Fri Apr 3 02:47:59 2009//
+/attrgetschematypeinfo07.xml/1.3/Fri Apr 3 02:48:00 2009//
+/attrgetschematypeinfo08.xml/1.3/Fri Apr 3 02:48:00 2009//
+/attrisid01.xml/1.6/Fri Apr 3 02:48:00 2009//
+/attrisid02.xml/1.6/Fri Apr 3 02:47:58 2009//
+/attrisid03.xml/1.6/Fri Apr 3 02:47:59 2009//
+/attrisid04.xml/1.5/Fri Apr 3 02:47:58 2009//
+/attrisid05.xml/1.6/Fri Apr 3 02:48:01 2009//
+/attrisid06.xml/1.5/Fri Apr 3 02:47:59 2009//
+/attrisid07.xml/1.2/Fri Apr 3 02:47:58 2009//
+/canonicalform01.xml/1.3/Fri Apr 3 02:47:58 2009//
+/canonicalform02.xml/1.3/Fri Apr 3 02:48:00 2009//
+/canonicalform03.xml/1.2/Fri Apr 3 02:48:01 2009//
+/canonicalform04.xml/1.3/Fri Apr 3 02:48:00 2009//
+/canonicalform05.xml/1.2/Fri Apr 3 02:47:59 2009//
+/canonicalform06.xml/1.2/Fri Apr 3 02:48:01 2009//
+/canonicalform07.xml/1.3/Fri Apr 3 02:48:00 2009//
+/canonicalform08.xml/1.4/Fri Apr 3 02:47:59 2009//
+/canonicalform09.xml/1.4/Fri Apr 3 02:47:59 2009//
+/canonicalform10.xml/1.3/Fri Apr 3 02:47:58 2009//
+/canonicalform11.xml/1.3/Fri Apr 3 02:48:01 2009//
+/canonicalform12.xml/1.2/Fri Apr 3 02:47:59 2009//
+/cdatasections01.xml/1.2/Fri Apr 3 02:48:00 2009//
+/checkcharacternormalization01.xml/1.3/Fri Apr 3 02:48:00 2009//
+/checkcharacternormalization02.xml/1.4/Fri Apr 3 02:48:00 2009//
+/checkcharacternormalization03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/comments01.xml/1.2/Fri Apr 3 02:47:59 2009//
+/datatypenormalization01.xml/1.7/Fri Apr 3 02:47:58 2009//
+/datatypenormalization02.xml/1.8/Fri Apr 3 02:47:59 2009//
+/datatypenormalization03.xml/1.8/Fri Apr 3 02:48:01 2009//
+/datatypenormalization04.xml/1.8/Fri Apr 3 02:48:00 2009//
+/datatypenormalization05.xml/1.8/Fri Apr 3 02:48:00 2009//
+/datatypenormalization06.xml/1.8/Fri Apr 3 02:47:58 2009//
+/datatypenormalization07.xml/1.3/Fri Apr 3 02:48:01 2009//
+/datatypenormalization08.xml/1.3/Fri Apr 3 02:48:01 2009//
+/datatypenormalization09.xml/1.3/Fri Apr 3 02:48:00 2009//
+/datatypenormalization10.xml/1.3/Fri Apr 3 02:47:58 2009//
+/datatypenormalization11.xml/1.3/Fri Apr 3 02:47:59 2009//
+/datatypenormalization12.xml/1.3/Fri Apr 3 02:47:59 2009//
+/datatypenormalization13.xml/1.3/Fri Apr 3 02:48:01 2009//
+/datatypenormalization14.xml/1.3/Fri Apr 3 02:48:00 2009//
+/datatypenormalization15.xml/1.3/Fri Apr 3 02:47:58 2009//
+/datatypenormalization16.xml/1.4/Fri Apr 3 02:48:00 2009//
+/datatypenormalization17.xml/1.3/Fri Apr 3 02:48:00 2009//
+/datatypenormalization18.xml/1.3/Fri Apr 3 02:48:00 2009//
+/documentadoptnode01.xml/1.7/Fri Apr 3 02:48:00 2009//
+/documentadoptnode02.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentadoptnode03.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentadoptnode04.xml/1.6/Fri Apr 3 02:48:01 2009//
+/documentadoptnode05.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentadoptnode06.xml/1.6/Fri Apr 3 02:47:59 2009//
+/documentadoptnode07.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentadoptnode08.xml/1.6/Fri Apr 3 02:47:59 2009//
+/documentadoptnode09.xml/1.6/Fri Apr 3 02:47:58 2009//
+/documentadoptnode10.xml/1.6/Fri Apr 3 02:48:01 2009//
+/documentadoptnode11.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentadoptnode12.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentadoptnode13.xml/1.7/Fri Apr 3 02:47:58 2009//
+/documentadoptnode14.xml/1.7/Fri Apr 3 02:48:00 2009//
+/documentadoptnode15.xml/1.7/Fri Apr 3 02:47:59 2009//
+/documentadoptnode16.xml/1.7/Fri Apr 3 02:47:58 2009//
+/documentadoptnode17.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentadoptnode18.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentadoptnode19.xml/1.6/Fri Apr 3 02:47:59 2009//
+/documentadoptnode20.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentadoptnode21.xml/1.2/Fri Apr 3 02:47:59 2009//
+/documentadoptnode22.xml/1.7/Fri Apr 3 02:48:01 2009//
+/documentadoptnode23.xml/1.7/Fri Apr 3 02:47:59 2009//
+/documentadoptnode24.xml/1.3/Fri Apr 3 02:47:59 2009//
+/documentadoptnode25.xml/1.7/Fri Apr 3 02:47:58 2009//
+/documentadoptnode26.xml/1.8/Fri Apr 3 02:47:58 2009//
+/documentadoptnode27.xml/1.8/Fri Apr 3 02:47:59 2009//
+/documentadoptnode28.xml/1.7/Fri Apr 3 02:48:01 2009//
+/documentadoptnode30.xml/1.7/Fri Apr 3 02:48:00 2009//
+/documentadoptnode31.xml/1.7/Fri Apr 3 02:48:00 2009//
+/documentadoptnode32.xml/1.7/Fri Apr 3 02:48:00 2009//
+/documentadoptnode33.xml/1.7/Fri Apr 3 02:48:00 2009//
+/documentadoptnode34.xml/1.7/Fri Apr 3 02:47:59 2009//
+/documentadoptnode35.xml/1.8/Fri Apr 3 02:48:00 2009//
+/documentadoptnode36.xml/1.8/Fri Apr 3 02:47:59 2009//
+/documentgetdoctype01.xml/1.5/Fri Apr 3 02:48:00 2009//
+/documentgetdocumenturi01.xml/1.4/Fri Apr 3 02:47:59 2009//
+/documentgetdocumenturi02.xml/1.5/Fri Apr 3 02:48:01 2009//
+/documentgetdocumenturi03.xml/1.5/Fri Apr 3 02:47:58 2009//
+/documentgetinputencoding01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/documentgetinputencoding02.xml/1.5/Fri Apr 3 02:48:01 2009//
+/documentgetinputencoding03.xml/1.4/Fri Apr 3 02:48:00 2009//
+/documentgetinputencoding04.xml/1.4/Fri Apr 3 02:48:00 2009//
+/documentgetstricterrorchecking01.xml/1.4/Fri Apr 3 02:48:00 2009//
+/documentgetstricterrorchecking02.xml/1.5/Fri Apr 3 02:47:58 2009//
+/documentgetxmlencoding01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/documentgetxmlencoding02.xml/1.5/Fri Apr 3 02:48:00 2009//
+/documentgetxmlencoding03.xml/1.4/Fri Apr 3 02:48:00 2009//
+/documentgetxmlencoding04.xml/1.4/Fri Apr 3 02:47:59 2009//
+/documentgetxmlencoding05.xml/1.4/Fri Apr 3 02:48:00 2009//
+/documentgetxmlstandalone01.xml/1.4/Fri Apr 3 02:48:00 2009//
+/documentgetxmlstandalone02.xml/1.5/Fri Apr 3 02:47:58 2009//
+/documentgetxmlstandalone03.xml/1.4/Fri Apr 3 02:47:58 2009//
+/documentgetxmlstandalone04.xml/1.4/Fri Apr 3 02:48:00 2009//
+/documentgetxmlstandalone05.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentgetxmlversion01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/documentgetxmlversion02.xml/1.5/Fri Apr 3 02:47:58 2009//
+/documentgetxmlversion03.xml/1.4/Fri Apr 3 02:48:00 2009//
+/documentnormalizedocument01.xml/1.6/Fri Apr 3 02:48:01 2009//
+/documentnormalizedocument02.xml/1.10/Fri Apr 3 02:48:00 2009//
+/documentnormalizedocument03.xml/1.11/Fri Apr 3 02:48:01 2009//
+/documentnormalizedocument04.xml/1.10/Fri Apr 3 02:47:58 2009//
+/documentnormalizedocument05.xml/1.3/Fri Apr 3 02:47:59 2009//
+/documentnormalizedocument06.xml/1.5/Fri Apr 3 02:47:59 2009//
+/documentnormalizedocument07.xml/1.4/Fri Apr 3 02:47:59 2009//
+/documentnormalizedocument08.xml/1.2/Fri Apr 3 02:48:00 2009//
+/documentnormalizedocument09.xml/1.3/Fri Apr 3 02:48:00 2009//
+/documentnormalizedocument10.xml/1.3/Fri Apr 3 02:48:00 2009//
+/documentnormalizedocument11.xml/1.3/Fri Apr 3 02:47:59 2009//
+/documentnormalizedocument12.xml/1.3/Fri Apr 3 02:48:00 2009//
+/documentnormalizedocument13.xml/1.2/Fri Apr 3 02:48:00 2009//
+/documentrenamenode01.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentrenamenode02.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentrenamenode03.xml/1.7/Fri Apr 3 02:47:58 2009//
+/documentrenamenode04.xml/1.7/Fri Apr 3 02:47:58 2009//
+/documentrenamenode05.xml/1.7/Fri Apr 3 02:47:59 2009//
+/documentrenamenode06.xml/1.6/Fri Apr 3 02:47:58 2009//
+/documentrenamenode07.xml/1.7/Fri Apr 3 02:48:00 2009//
+/documentrenamenode08.xml/1.7/Fri Apr 3 02:48:00 2009//
+/documentrenamenode09.xml/1.3/Fri Apr 3 02:48:00 2009//
+/documentrenamenode10.xml/1.3/Fri Apr 3 02:48:00 2009//
+/documentrenamenode11.xml/1.3/Fri Apr 3 02:48:01 2009//
+/documentrenamenode12.xml/1.3/Fri Apr 3 02:48:00 2009//
+/documentrenamenode13.xml/1.3/Fri Apr 3 02:47:59 2009//
+/documentrenamenode14.xml/1.3/Fri Apr 3 02:48:00 2009//
+/documentrenamenode15.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentrenamenode16.xml/1.6/Fri Apr 3 02:47:59 2009//
+/documentrenamenode17.xml/1.7/Fri Apr 3 02:47:58 2009//
+/documentrenamenode18.xml/1.7/Fri Apr 3 02:47:59 2009//
+/documentrenamenode19.xml/1.2/Fri Apr 3 02:48:00 2009//
+/documentrenamenode20.xml/1.7/Fri Apr 3 02:47:59 2009//
+/documentrenamenode21.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentrenamenode22.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentrenamenode23.xml/1.2/Fri Apr 3 02:48:00 2009//
+/documentrenamenode24.xml/1.2/Fri Apr 3 02:48:00 2009//
+/documentrenamenode25.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentrenamenode26.xml/1.6/Fri Apr 3 02:47:59 2009//
+/documentrenamenode27.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentrenamenode28.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentrenamenode29.xml/1.6/Fri Apr 3 02:48:00 2009//
+/documentsetdocumenturi01.xml/1.5/Fri Apr 3 02:47:59 2009//
+/documentsetdocumenturi02.xml/1.5/Fri Apr 3 02:48:00 2009//
+/documentsetdocumenturi03.xml/1.6/Fri Apr 3 02:47:58 2009//
+/documentsetstricterrorchecking01.xml/1.5/Fri Apr 3 02:48:00 2009//
+/documentsetstricterrorchecking02.xml/1.5/Fri Apr 3 02:48:00 2009//
+/documentsetstricterrorchecking03.xml/1.5/Fri Apr 3 02:48:01 2009//
+/documentsetxmlstandalone01.xml/1.5/Fri Apr 3 02:47:59 2009//
+/documentsetxmlstandalone02.xml/1.7/Fri Apr 3 02:47:59 2009//
+/documentsetxmlversion01.xml/1.6/Fri Apr 3 02:47:59 2009//
+/documentsetxmlversion02.xml/1.6/Fri Apr 3 02:47:58 2009//
+/documentsetxmlversion03.xml/1.6/Fri Apr 3 02:47:58 2009//
+/documentsetxmlversion05.xml/1.6/Fri Apr 3 02:47:59 2009//
+/domconfigcanonicalform1.xml/1.5/Fri Apr 3 02:48:00 2009//
+/domconfigcdatasections1.xml/1.4/Fri Apr 3 02:47:58 2009//
+/domconfigcheckcharacternormalization1.xml/1.4/Fri Apr 3 02:48:00 2009//
+/domconfigcomments1.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domconfigdatatypenormalization1.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domconfigdatatypenormalization2.xml/1.2/Fri Apr 3 02:48:01 2009//
+/domconfigelementcontentwhitespace1.xml/1.5/Fri Apr 3 02:48:00 2009//
+/domconfigentities1.xml/1.4/Fri Apr 3 02:47:59 2009//
+/domconfigerrorhandler1.xml/1.5/Fri Apr 3 02:47:58 2009//
+/domconfigerrorhandler2.xml/1.3/Fri Apr 3 02:47:58 2009//
+/domconfiginfoset1.xml/1.5/Fri Apr 3 02:47:59 2009//
+/domconfignamespacedeclarations1.xml/1.4/Fri Apr 3 02:48:00 2009//
+/domconfignamespaces1.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domconfignamespaces2.xml/1.3/Fri Apr 3 02:47:58 2009//
+/domconfignormalizecharacters1.xml/1.4/Fri Apr 3 02:47:58 2009//
+/domconfigparameternames01.xml/1.6/Fri Apr 3 02:48:00 2009//
+/domconfigschemalocation1.xml/1.4/Fri Apr 3 02:47:58 2009//
+/domconfigschematype1.xml/1.4/Fri Apr 3 02:48:01 2009//
+/domconfigsplitcdatasections1.xml/1.4/Fri Apr 3 02:48:01 2009//
+/domconfigurationcansetparameter01.xml/1.6/Fri Apr 3 02:48:00 2009//
+/domconfigurationcansetparameter02.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domconfigurationcansetparameter03.xml/1.4/Fri Apr 3 02:48:00 2009//
+/domconfigurationcansetparameter04.xml/1.4/Fri Apr 3 02:48:00 2009//
+/domconfigurationcansetparameter06.xml/1.4/Fri Apr 3 02:48:00 2009//
+/domconfigurationgetparameter01.xml/1.6/Fri Apr 3 02:48:00 2009//
+/domconfigurationgetparameter02.xml/1.5/Fri Apr 3 02:48:00 2009//
+/domconfigvalidate1.xml/1.4/Fri Apr 3 02:48:01 2009//
+/domconfigvalidateifschema1.xml/1.4/Fri Apr 3 02:48:00 2009//
+/domconfigwellformed1.xml/1.4/Fri Apr 3 02:48:00 2009//
+/domimplementationgetfeature01.xml/1.5/Fri Apr 3 02:48:00 2009//
+/domimplementationgetfeature02.xml/1.5/Fri Apr 3 02:48:00 2009//
+/domimplementationgetfeature03.xml/1.4/Fri Apr 3 02:47:58 2009//
+/domimplementationgetfeature05.xml/1.4/Fri Apr 3 02:47:58 2009//
+/domimplementationgetfeature06.xml/1.4/Fri Apr 3 02:48:00 2009//
+/domimplementationregistry01.xml/1.2/Fri Apr 3 02:48:00 2009//
+/domimplementationregistry02.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domimplementationregistry03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/domimplementationregistry04.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domimplementationregistry05.xml/1.3/Fri Apr 3 02:47:59 2009//
+/domimplementationregistry06.xml/1.3/Fri Apr 3 02:47:58 2009//
+/domimplementationregistry07.xml/1.3/Fri Apr 3 02:48:01 2009//
+/domimplementationregistry08.xml/1.3/Fri Apr 3 02:48:01 2009//
+/domimplementationregistry09.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domimplementationregistry10.xml/1.3/Fri Apr 3 02:48:01 2009//
+/domimplementationregistry11.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domimplementationregistry12.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domimplementationregistry13.xml/1.4/Fri Apr 3 02:48:01 2009//
+/domimplementationregistry14.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domimplementationregistry15.xml/1.3/Fri Apr 3 02:47:59 2009//
+/domimplementationregistry16.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domimplementationregistry17.xml/1.3/Fri Apr 3 02:48:01 2009//
+/domimplementationregistry18.xml/1.3/Fri Apr 3 02:47:59 2009//
+/domimplementationregistry19.xml/1.3/Fri Apr 3 02:47:59 2009//
+/domimplementationregistry20.xml/1.4/Fri Apr 3 02:48:00 2009//
+/domimplementationregistry21.xml/1.3/Fri Apr 3 02:48:00 2009//
+/domimplementationregistry22.xml/1.3/Fri Apr 3 02:47:59 2009//
+/domimplementationregistry23.xml/1.4/Fri Apr 3 02:47:59 2009//
+/domimplementationregistry24.xml/1.2/Fri Apr 3 02:48:01 2009//
+/domimplementationregistry25.xml/1.2/Fri Apr 3 02:47:58 2009//
+/domstringlistcontains01.xml/1.3/Fri Apr 3 02:47:59 2009//
+/domstringlistcontains02.xml/1.2/Fri Apr 3 02:47:58 2009//
+/domstringlistgetlength01.xml/1.5/Fri Apr 3 02:48:00 2009//
+/domstringlistitem01.xml/1.4/Fri Apr 3 02:48:00 2009//
+/domstringlistitem02.xml/1.2/Fri Apr 3 02:47:59 2009//
+/elementcontentwhitespace01.xml/1.5/Fri Apr 3 02:48:01 2009//
+/elementcontentwhitespace02.xml/1.3/Fri Apr 3 02:48:00 2009//
+/elementcontentwhitespace03.xml/1.3/Fri Apr 3 02:48:01 2009//
+/elementgetschematypeinfo01.xml/1.3/Fri Apr 3 02:48:00 2009//
+/elementgetschematypeinfo02.xml/1.5/Fri Apr 3 02:47:58 2009//
+/elementgetschematypeinfo03.xml/1.4/Fri Apr 3 02:47:58 2009//
+/elementgetschematypeinfo04.xml/1.3/Fri Apr 3 02:48:00 2009//
+/elementgetschematypeinfo05.xml/1.4/Fri Apr 3 02:48:00 2009//
+/elementgetschematypeinfo06.xml/1.3/Fri Apr 3 02:48:00 2009//
+/elementgetschematypeinfo07.xml/1.3/Fri Apr 3 02:47:58 2009//
+/elementsetidattribute01.xml/1.6/Fri Apr 3 02:47:58 2009//
+/elementsetidattribute03.xml/1.6/Fri Apr 3 02:48:00 2009//
+/elementsetidattribute04.xml/1.6/Fri Apr 3 02:47:59 2009//
+/elementsetidattribute05.xml/1.6/Fri Apr 3 02:48:01 2009//
+/elementsetidattribute06.xml/1.6/Fri Apr 3 02:48:01 2009//
+/elementsetidattribute07.xml/1.6/Fri Apr 3 02:47:59 2009//
+/elementsetidattribute08.xml/1.6/Fri Apr 3 02:48:01 2009//
+/elementsetidattribute09.xml/1.6/Fri Apr 3 02:48:01 2009//
+/elementsetidattribute10.xml/1.6/Fri Apr 3 02:48:00 2009//
+/elementsetidattribute11.xml/1.6/Fri Apr 3 02:48:00 2009//
+/elementsetidattributenode01.xml/1.6/Fri Apr 3 02:47:59 2009//
+/elementsetidattributenode02.xml/1.6/Fri Apr 3 02:48:00 2009//
+/elementsetidattributenode03.xml/1.6/Fri Apr 3 02:48:00 2009//
+/elementsetidattributenode04.xml/1.6/Fri Apr 3 02:48:00 2009//
+/elementsetidattributenode05.xml/1.6/Fri Apr 3 02:48:00 2009//
+/elementsetidattributenode06.xml/1.6/Fri Apr 3 02:48:00 2009//
+/elementsetidattributenode07.xml/1.6/Fri Apr 3 02:47:58 2009//
+/elementsetidattributenode08.xml/1.2/Fri Apr 3 02:48:01 2009//
+/elementsetidattributenode09.xml/1.2/Fri Apr 3 02:48:00 2009//
+/elementsetidattributenode10.xml/1.2/Fri Apr 3 02:48:00 2009//
+/elementsetidattributens01.xml/1.6/Fri Apr 3 02:48:01 2009//
+/elementsetidattributens02.xml/1.5/Fri Apr 3 02:47:58 2009//
+/elementsetidattributens03.xml/1.6/Fri Apr 3 02:47:58 2009//
+/elementsetidattributens04.xml/1.2/Fri Apr 3 02:48:00 2009//
+/elementsetidattributens05.xml/1.2/Fri Apr 3 02:48:00 2009//
+/elementsetidattributens06.xml/1.6/Fri Apr 3 02:47:58 2009//
+/elementsetidattributens07.xml/1.6/Fri Apr 3 02:47:58 2009//
+/elementsetidattributens08.xml/1.6/Fri Apr 3 02:48:00 2009//
+/elementsetidattributens09.xml/1.2/Fri Apr 3 02:47:59 2009//
+/elementsetidattributens10.xml/1.2/Fri Apr 3 02:48:00 2009//
+/elementsetidattributens11.xml/1.2/Fri Apr 3 02:48:00 2009//
+/elementsetidattributens12.xml/1.2/Fri Apr 3 02:48:01 2009//
+/elementsetidattributens13.xml/1.6/Fri Apr 3 02:47:58 2009//
+/elementsetidattributens14.xml/1.2/Fri Apr 3 02:48:01 2009//
+/entities01.xml/1.3/Fri Apr 3 02:47:58 2009//
+/entities02.xml/1.3/Fri Apr 3 02:48:00 2009//
+/entities03.xml/1.3/Fri Apr 3 02:47:59 2009//
+/entities04.xml/1.3/Fri Apr 3 02:48:01 2009//
+/entitygetinputencoding01.xml/1.4/Fri Apr 3 02:48:00 2009//
+/entitygetinputencoding02.xml/1.4/Fri Apr 3 02:48:00 2009//
+/entitygetinputencoding03.xml/1.5/Fri Apr 3 02:47:59 2009//
+/entitygetinputencoding04.xml/1.5/Fri Apr 3 02:48:00 2009//
+/entitygetxmlencoding01.xml/1.4/Fri Apr 3 02:48:00 2009//
+/entitygetxmlencoding02.xml/1.4/Fri Apr 3 02:48:00 2009//
+/entitygetxmlencoding03.xml/1.4/Fri Apr 3 02:48:00 2009//
+/entitygetxmlencoding04.xml/1.4/Fri Apr 3 02:48:00 2009//
+/entitygetxmlversion01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/entitygetxmlversion02.xml/1.4/Fri Apr 3 02:47:59 2009//
+/entitygetxmlversion03.xml/1.4/Fri Apr 3 02:48:01 2009//
+/entitygetxmlversion04.xml/1.4/Fri Apr 3 02:48:01 2009//
+/handleerror01.xml/1.3/Fri Apr 3 02:48:01 2009//
+/handleerror02.xml/1.3/Fri Apr 3 02:48:00 2009//
+/hasFeature01.xml/1.5/Fri Apr 3 02:48:01 2009//
+/hasFeature02.xml/1.2/Fri Apr 3 02:48:00 2009//
+/hasFeature03.xml/1.2/Fri Apr 3 02:48:01 2009//
+/hasFeature04.xml/1.2/Fri Apr 3 02:48:00 2009//
+/infoset01.xml/1.3/Fri Apr 3 02:47:58 2009//
+/infoset02.xml/1.3/Fri Apr 3 02:48:01 2009//
+/infoset03.xml/1.2/Fri Apr 3 02:47:59 2009//
+/infoset04.xml/1.2/Fri Apr 3 02:48:01 2009//
+/infoset05.xml/1.3/Fri Apr 3 02:47:59 2009//
+/infoset06.xml/1.2/Fri Apr 3 02:47:59 2009//
+/infoset07.xml/1.4/Fri Apr 3 02:48:00 2009//
+/infoset08.xml/1.3/Fri Apr 3 02:48:00 2009//
+/infoset09.xml/1.2/Fri Apr 3 02:48:00 2009//
+/metadata.xml/1.2/Fri Apr 3 02:47:58 2009//
+/namespacedeclarations01.xml/1.3/Fri Apr 3 02:48:01 2009//
+/namespacedeclarations02.xml/1.3/Fri Apr 3 02:48:00 2009//
+/nodeappendchild01.xml/1.2/Fri Apr 3 02:48:00 2009//
+/nodeappendchild02.xml/1.2/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition01.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition02.xml/1.7/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition03.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodecomparedocumentposition04.xml/1.4/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition05.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition06.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition07.xml/1.8/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition08.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition09.xml/1.7/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition10.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition11.xml/1.7/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition12.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition13.xml/1.7/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition14.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition15.xml/1.7/Fri Apr 3 02:47:58 2009//
+/nodecomparedocumentposition16.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition17.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition18.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition19.xml/1.2/Fri Apr 3 02:47:58 2009//
+/nodecomparedocumentposition20.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition21.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodecomparedocumentposition22.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition23.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition24.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodecomparedocumentposition25.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition26.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition27.xml/1.6/Fri Apr 3 02:48:01 2009//
+/nodecomparedocumentposition28.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodecomparedocumentposition29.xml/1.7/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition30.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodecomparedocumentposition31.xml/1.7/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition32.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodecomparedocumentposition33.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition34.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition35.xml/1.6/Fri Apr 3 02:48:01 2009//
+/nodecomparedocumentposition36.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition37.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodecomparedocumentposition38.xml/1.6/Fri Apr 3 02:48:01 2009//
+/nodecomparedocumentposition39.xml/1.7/Fri Apr 3 02:47:59 2009//
+/nodecomparedocumentposition40.xml/1.8/Fri Apr 3 02:48:00 2009//
+/nodegetbaseuri01.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodegetbaseuri02.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodegetbaseuri03.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodegetbaseuri04.xml/1.6/Fri Apr 3 02:48:01 2009//
+/nodegetbaseuri05.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodegetbaseuri06.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodegetbaseuri07.xml/1.8/Fri Apr 3 02:48:00 2009//
+/nodegetbaseuri09.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodegetbaseuri10.xml/1.7/Fri Apr 3 02:48:01 2009//
+/nodegetbaseuri11.xml/1.7/Fri Apr 3 02:48:01 2009//
+/nodegetbaseuri12.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodegetbaseuri13.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodegetbaseuri14.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodegetbaseuri15.xml/1.3/Fri Apr 3 02:48:00 2009//
+/nodegetbaseuri16.xml/1.4/Fri Apr 3 02:48:00 2009//
+/nodegetbaseuri17.xml/1.3/Fri Apr 3 02:47:59 2009//
+/nodegetbaseuri18.xml/1.3/Fri Apr 3 02:47:58 2009//
+/nodegetbaseuri19.xml/1.4/Fri Apr 3 02:48:00 2009//
+/nodegetbaseuri20.xml/1.3/Fri Apr 3 02:48:00 2009//
+/nodegetfeature01.xml/1.3/Fri Apr 3 02:48:00 2009//
+/nodegetfeature02.xml/1.3/Fri Apr 3 02:47:59 2009//
+/nodegetfeature03.xml/1.3/Fri Apr 3 02:48:00 2009//
+/nodegetfeature04.xml/1.3/Fri Apr 3 02:47:59 2009//
+/nodegetfeature05.xml/1.3/Fri Apr 3 02:47:59 2009//
+/nodegetfeature06.xml/1.3/Fri Apr 3 02:48:01 2009//
+/nodegetfeature07.xml/1.3/Fri Apr 3 02:48:01 2009//
+/nodegetfeature08.xml/1.3/Fri Apr 3 02:48:01 2009//
+/nodegetfeature09.xml/1.3/Fri Apr 3 02:48:00 2009//
+/nodegetfeature10.xml/1.3/Fri Apr 3 02:47:59 2009//
+/nodegetfeature11.xml/1.3/Fri Apr 3 02:48:01 2009//
+/nodegetfeature12.xml/1.3/Fri Apr 3 02:48:00 2009//
+/nodegetfeature13.xml/1.3/Fri Apr 3 02:47:58 2009//
+/nodegettextcontent01.xml/1.4/Fri Apr 3 02:48:00 2009//
+/nodegettextcontent02.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodegettextcontent03.xml/1.4/Fri Apr 3 02:48:01 2009//
+/nodegettextcontent04.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodegettextcontent05.xml/1.4/Fri Apr 3 02:48:01 2009//
+/nodegettextcontent06.xml/1.5/Fri Apr 3 02:48:01 2009//
+/nodegettextcontent07.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodegettextcontent08.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodegettextcontent09.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodegettextcontent10.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodegettextcontent11.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodegettextcontent12.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodegettextcontent13.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodegettextcontent14.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodegettextcontent15.xml/1.2/Fri Apr 3 02:48:01 2009//
+/nodegettextcontent16.xml/1.2/Fri Apr 3 02:48:00 2009//
+/nodegettextcontent17.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodegettextcontent18.xml/1.4/Fri Apr 3 02:47:59 2009//
+/nodegettextcontent19.xml/1.4/Fri Apr 3 02:47:59 2009//
+/nodegetuserdata01.xml/1.4/Fri Apr 3 02:47:58 2009//
+/nodegetuserdata02.xml/1.4/Fri Apr 3 02:48:01 2009//
+/nodegetuserdata03.xml/1.7/Fri Apr 3 02:48:00 2009//
+/nodegetuserdata04.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodegetuserdata05.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodegetuserdata06.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodegetuserdata07.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodeinsertbefore01.xml/1.6/Fri Apr 3 02:48:01 2009//
+/nodeinsertbefore02.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodeinsertbefore03.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodeinsertbefore04.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeinsertbefore05.xml/1.7/Fri Apr 3 02:48:00 2009//
+/nodeinsertbefore06.xml/1.8/Fri Apr 3 02:48:01 2009//
+/nodeinsertbefore07.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodeinsertbefore08.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodeinsertbefore09.xml/1.2/Fri Apr 3 02:48:00 2009//
+/nodeinsertbefore10.xml/1.8/Fri Apr 3 02:47:58 2009//
+/nodeinsertbefore11.xml/1.7/Fri Apr 3 02:47:58 2009//
+/nodeinsertbefore12.xml/1.3/Fri Apr 3 02:48:00 2009//
+/nodeinsertbefore13.xml/1.8/Fri Apr 3 02:48:00 2009//
+/nodeinsertbefore14.xml/1.2/Fri Apr 3 02:48:00 2009//
+/nodeinsertbefore15.xml/1.7/Fri Apr 3 02:48:01 2009//
+/nodeinsertbefore16.xml/1.7/Fri Apr 3 02:47:59 2009//
+/nodeinsertbefore17.xml/1.2/Fri Apr 3 02:48:00 2009//
+/nodeinsertbefore18.xml/1.2/Fri Apr 3 02:47:59 2009//
+/nodeinsertbefore19.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodeinsertbefore20.xml/1.6/Fri Apr 3 02:48:01 2009//
+/nodeinsertbefore21.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodeinsertbefore22.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodeinsertbefore23.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodeinsertbefore24.xml/1.6/Fri Apr 3 02:48:01 2009//
+/nodeinsertbefore25.xml/1.6/Fri Apr 3 02:48:01 2009//
+/nodeisdefaultnamespace01.xml/1.4/Fri Apr 3 02:47:59 2009//
+/nodeisdefaultnamespace02.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisdefaultnamespace03.xml/1.4/Fri Apr 3 02:48:00 2009//
+/nodeisdefaultnamespace04.xml/1.4/Fri Apr 3 02:47:58 2009//
+/nodeisdefaultnamespace05.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisdefaultnamespace06.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodeisdefaultnamespace07.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisdefaultnamespace08.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisdefaultnamespace09.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisdefaultnamespace10.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodeisdefaultnamespace11.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodeisdefaultnamespace13.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodeisdefaultnamespace14.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodeisdefaultnamespace15.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodeisdefaultnamespace16.xml/1.5/Fri Apr 3 02:48:01 2009//
+/nodeisequalnode01.xml/1.5/Fri Apr 3 02:48:01 2009//
+/nodeisequalnode02.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodeisequalnode03.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode04.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode05.xml/1.4/Fri Apr 3 02:47:58 2009//
+/nodeisequalnode06.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodeisequalnode07.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode08.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodeisequalnode09.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode10.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode11.xml/1.7/Fri Apr 3 02:47:59 2009//
+/nodeisequalnode12.xml/1.4/Fri Apr 3 02:47:58 2009//
+/nodeisequalnode13.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode14.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode15.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode16.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodeisequalnode17.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodeisequalnode18.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode19.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode20.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode21.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode22.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodeisequalnode25.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodeisequalnode26.xml/1.4/Fri Apr 3 02:48:00 2009//
+/nodeisequalnode27.xml/1.4/Fri Apr 3 02:47:59 2009//
+/nodeisequalnode28.xml/1.4/Fri Apr 3 02:47:59 2009//
+/nodeisequalnode29.xml/1.4/Fri Apr 3 02:48:01 2009//
+/nodeisequalnode31.xml/1.4/Fri Apr 3 02:47:58 2009//
+/nodeisequalnode32.xml/1.4/Fri Apr 3 02:48:01 2009//
+/nodeissamenode01.xml/1.4/Fri Apr 3 02:48:01 2009//
+/nodeissamenode02.xml/1.4/Fri Apr 3 02:47:59 2009//
+/nodeissamenode03.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodeissamenode04.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodeissamenode05.xml/1.4/Fri Apr 3 02:47:58 2009//
+/nodeissamenode06.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodeissamenode07.xml/1.4/Fri Apr 3 02:47:58 2009//
+/nodeissamenode08.xml/1.4/Fri Apr 3 02:48:01 2009//
+/nodeissamenode09.xml/1.4/Fri Apr 3 02:47:59 2009//
+/nodeissamenode10.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupnamespaceuri01.xml/1.4/Fri Apr 3 02:47:58 2009//
+/nodelookupnamespaceuri02.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodelookupnamespaceuri03.xml/1.4/Fri Apr 3 02:48:00 2009//
+/nodelookupnamespaceuri04.xml/1.4/Fri Apr 3 02:48:00 2009//
+/nodelookupnamespaceuri05.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupnamespaceuri06.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodelookupnamespaceuri07.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupnamespaceuri08.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupnamespaceuri09.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodelookupnamespaceuri10.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupnamespaceuri11.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupnamespaceuri13.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodelookupnamespaceuri14.xml/1.6/Fri Apr 3 02:48:01 2009//
+/nodelookupnamespaceuri15.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodelookupnamespaceuri16.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodelookupnamespaceuri17.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodelookupnamespaceuri18.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodelookupnamespaceuri19.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodelookupnamespaceuri20.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix01.xml/1.4/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix02.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix03.xml/1.4/Fri Apr 3 02:47:59 2009//
+/nodelookupprefix04.xml/1.4/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix05.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodelookupprefix06.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix07.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix08.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix09.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix10.xml/1.5/Fri Apr 3 02:48:01 2009//
+/nodelookupprefix11.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodelookupprefix12.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix13.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodelookupprefix14.xml/1.6/Fri Apr 3 02:48:01 2009//
+/nodelookupprefix15.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix16.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix17.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix18.xml/1.5/Fri Apr 3 02:47:58 2009//
+/nodelookupprefix19.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodelookupprefix20.xml/1.5/Fri Apr 3 02:47:59 2009//
+/noderemovechild01.xml/1.6/Fri Apr 3 02:47:59 2009//
+/noderemovechild02.xml/1.6/Fri Apr 3 02:47:58 2009//
+/noderemovechild03.xml/1.6/Fri Apr 3 02:48:00 2009//
+/noderemovechild04.xml/1.6/Fri Apr 3 02:48:00 2009//
+/noderemovechild05.xml/1.7/Fri Apr 3 02:48:00 2009//
+/noderemovechild07.xml/1.7/Fri Apr 3 02:48:01 2009//
+/noderemovechild08.xml/1.6/Fri Apr 3 02:48:00 2009//
+/noderemovechild09.xml/1.6/Fri Apr 3 02:48:00 2009//
+/noderemovechild10.xml/1.6/Fri Apr 3 02:48:00 2009//
+/noderemovechild11.xml/1.6/Fri Apr 3 02:48:01 2009//
+/noderemovechild12.xml/1.2/Fri Apr 3 02:48:00 2009//
+/noderemovechild13.xml/1.6/Fri Apr 3 02:48:01 2009//
+/noderemovechild14.xml/1.6/Fri Apr 3 02:48:00 2009//
+/noderemovechild15.xml/1.6/Fri Apr 3 02:48:01 2009//
+/noderemovechild16.xml/1.6/Fri Apr 3 02:47:59 2009//
+/noderemovechild17.xml/1.6/Fri Apr 3 02:48:00 2009//
+/noderemovechild18.xml/1.6/Fri Apr 3 02:48:00 2009//
+/noderemovechild19.xml/1.7/Fri Apr 3 02:47:58 2009//
+/noderemovechild20.xml/1.6/Fri Apr 3 02:47:59 2009//
+/noderemovechild21.xml/1.6/Fri Apr 3 02:47:59 2009//
+/noderemovechild22.xml/1.6/Fri Apr 3 02:48:01 2009//
+/noderemovechild23.xml/1.6/Fri Apr 3 02:47:58 2009//
+/noderemovechild24.xml/1.6/Fri Apr 3 02:47:59 2009//
+/noderemovechild25.xml/1.6/Fri Apr 3 02:48:00 2009//
+/noderemovechild26.xml/1.6/Fri Apr 3 02:47:59 2009//
+/noderemovechild27.xml/1.2/Fri Apr 3 02:47:58 2009//
+/noderemovechild28.xml/1.6/Fri Apr 3 02:47:58 2009//
+/noderemovechild29.xml/1.6/Fri Apr 3 02:48:00 2009//
+/noderemovechild30.xml/1.6/Fri Apr 3 02:48:00 2009//
+/noderemovechild31.xml/1.7/Fri Apr 3 02:47:59 2009//
+/nodereplacechild01.xml/1.2/Fri Apr 3 02:47:58 2009//
+/nodereplacechild02.xml/1.2/Fri Apr 3 02:48:01 2009//
+/nodereplacechild03.xml/1.2/Fri Apr 3 02:47:59 2009//
+/nodereplacechild04.xml/1.2/Fri Apr 3 02:47:58 2009//
+/nodereplacechild06.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild07.xml/1.7/Fri Apr 3 02:47:59 2009//
+/nodereplacechild08.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodereplacechild10.xml/1.3/Fri Apr 3 02:48:01 2009//
+/nodereplacechild12.xml/1.7/Fri Apr 3 02:47:58 2009//
+/nodereplacechild13.xml/1.7/Fri Apr 3 02:48:01 2009//
+/nodereplacechild14.xml/1.2/Fri Apr 3 02:47:58 2009//
+/nodereplacechild15.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodereplacechild16.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild17.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild18.xml/1.7/Fri Apr 3 02:48:00 2009//
+/nodereplacechild19.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild20.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodereplacechild21.xml/1.2/Fri Apr 3 02:48:00 2009//
+/nodereplacechild22.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild23.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild24.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodereplacechild25.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodereplacechild26.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild27.xml/1.2/Fri Apr 3 02:48:01 2009//
+/nodereplacechild28.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodereplacechild29.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild30.xml/1.7/Fri Apr 3 02:47:58 2009//
+/nodereplacechild31.xml/1.7/Fri Apr 3 02:48:00 2009//
+/nodereplacechild32.xml/1.2/Fri Apr 3 02:48:00 2009//
+/nodereplacechild33.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild34.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild35.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild36.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodereplacechild37.xml/1.6/Fri Apr 3 02:47:58 2009//
+/nodereplacechild38.xml/1.9/Fri Apr 3 02:48:00 2009//
+/nodereplacechild39.xml/1.3/Fri Apr 3 02:47:59 2009//
+/nodereplacechild40.xml/1.2/Fri Apr 3 02:48:00 2009//
+/nodesettextcontent01.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodesettextcontent02.xml/1.2/Fri Apr 3 02:48:01 2009//
+/nodesettextcontent03.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodesettextcontent04.xml/1.6/Fri Apr 3 02:48:01 2009//
+/nodesettextcontent05.xml/1.6/Fri Apr 3 02:47:59 2009//
+/nodesettextcontent06.xml/1.7/Fri Apr 3 02:48:00 2009//
+/nodesettextcontent07.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodesettextcontent08.xml/1.7/Fri Apr 3 02:47:59 2009//
+/nodesettextcontent10.xml/1.2/Fri Apr 3 02:47:58 2009//
+/nodesettextcontent11.xml/1.7/Fri Apr 3 02:48:00 2009//
+/nodesettextcontent12.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodesettextcontent13.xml/1.5/Fri Apr 3 02:47:59 2009//
+/nodesetuserdata01.xml/1.5/Fri Apr 3 02:48:00 2009//
+/nodesetuserdata02.xml/1.6/Fri Apr 3 02:48:00 2009//
+/nodesetuserdata03.xml/1.8/Fri Apr 3 02:47:58 2009//
+/nodesetuserdata04.xml/1.8/Fri Apr 3 02:48:01 2009//
+/nodesetuserdata05.xml/1.7/Fri Apr 3 02:48:00 2009//
+/nodesetuserdata06.xml/1.7/Fri Apr 3 02:48:00 2009//
+/nodesetuserdata07.xml/1.7/Fri Apr 3 02:47:59 2009//
+/nodesetuserdata08.xml/1.8/Fri Apr 3 02:48:00 2009//
+/nodesetuserdata09.xml/1.7/Fri Apr 3 02:47:59 2009//
+/nodesetuserdata10.xml/1.6/Fri Apr 3 02:48:01 2009//
+/normalizecharacters01.xml/1.3/Fri Apr 3 02:48:00 2009//
+/normalizecharacters02.xml/1.4/Fri Apr 3 02:48:00 2009//
+/normalizecharacters03.xml/1.3/Fri Apr 3 02:48:00 2009//
+/normalizecharacters04.xml/1.3/Fri Apr 3 02:48:00 2009//
+/normalizecharacters05.xml/1.3/Fri Apr 3 02:47:59 2009//
+/normalizecharacters06.xml/1.3/Fri Apr 3 02:48:00 2009//
+/normalizecharacters07.xml/1.3/Fri Apr 3 02:48:00 2009//
+/normalizecharacters08.xml/1.3/Fri Apr 3 02:48:00 2009//
+/splitcdatasections01.xml/1.2/Fri Apr 3 02:47:59 2009//
+/textiselementcontentwhitespace01.xml/1.6/Fri Apr 3 02:47:59 2009//
+/textiselementcontentwhitespace02.xml/1.5/Fri Apr 3 02:48:00 2009//
+/textiselementcontentwhitespace03.xml/1.6/Fri Apr 3 02:48:00 2009//
+/textiselementcontentwhitespace04.xml/1.2/Fri Apr 3 02:48:00 2009//
+/textiselementcontentwhitespace05.xml/1.4/Fri Apr 3 02:47:58 2009//
+/textiselementcontentwhitespace06.xml/1.4/Fri Apr 3 02:48:01 2009//
+/textreplacewholetext01.xml/1.7/Fri Apr 3 02:48:00 2009//
+/textreplacewholetext02.xml/1.6/Fri Apr 3 02:48:00 2009//
+/textreplacewholetext03.xml/1.5/Fri Apr 3 02:47:59 2009//
+/textreplacewholetext04.xml/1.6/Fri Apr 3 02:48:00 2009//
+/textreplacewholetext05.xml/1.6/Fri Apr 3 02:48:00 2009//
+/textreplacewholetext06.xml/1.2/Fri Apr 3 02:48:01 2009//
+/textreplacewholetext07.xml/1.5/Fri Apr 3 02:47:59 2009//
+/textreplacewholetext08.xml/1.4/Fri Apr 3 02:47:59 2009//
+/textwholetext01.xml/1.6/Fri Apr 3 02:48:00 2009//
+/textwholetext02.xml/1.7/Fri Apr 3 02:48:00 2009//
+/textwholetext03.xml/1.6/Fri Apr 3 02:48:00 2009//
+/typeinfogettypename03.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfogettypename04.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfogettypenamespace01.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfogettypenamespace03.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfogettypenamespace04.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom01.xml/1.4/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom02.xml/1.7/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom03.xml/1.6/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom04.xml/1.6/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom05.xml/1.6/Fri Apr 3 02:48:01 2009//
+/typeinfoisderivedfrom06.xml/1.5/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom07.xml/1.5/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom08.xml/1.5/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom09.xml/1.5/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom10.xml/1.5/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom11.xml/1.5/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom12.xml/1.5/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom13.xml/1.5/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom14.xml/1.6/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom15.xml/1.4/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom16.xml/1.4/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom17.xml/1.4/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom18.xml/1.6/Fri Apr 3 02:48:01 2009//
+/typeinfoisderivedfrom19.xml/1.5/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom20.xml/1.5/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom21.xml/1.5/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom22.xml/1.4/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom23.xml/1.4/Fri Apr 3 02:48:01 2009//
+/typeinfoisderivedfrom24.xml/1.4/Fri Apr 3 02:48:01 2009//
+/typeinfoisderivedfrom25.xml/1.4/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom26.xml/1.4/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom27.xml/1.5/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom28.xml/1.5/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom29.xml/1.4/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom30.xml/1.4/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom31.xml/1.4/Fri Apr 3 02:48:01 2009//
+/typeinfoisderivedfrom32.xml/1.4/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom33.xml/1.4/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom34.xml/1.5/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom35.xml/1.4/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom36.xml/1.4/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom37.xml/1.5/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom38.xml/1.6/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom39.xml/1.5/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom40.xml/1.4/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom41.xml/1.4/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom42.xml/1.4/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom43.xml/1.7/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom44.xml/1.7/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom45.xml/1.6/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom46.xml/1.6/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom47.xml/1.6/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom48.xml/1.6/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom49.xml/1.2/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom50.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom51.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom52.xml/1.2/Fri Apr 3 02:48:01 2009//
+/typeinfoisderivedfrom53.xml/1.2/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom54.xml/1.2/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom55.xml/1.3/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom56.xml/1.3/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom57.xml/1.2/Fri Apr 3 02:48:01 2009//
+/typeinfoisderivedfrom58.xml/1.2/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom59.xml/1.2/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom60.xml/1.2/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom61.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom62.xml/1.2/Fri Apr 3 02:48:01 2009//
+/typeinfoisderivedfrom63.xml/1.2/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom64.xml/1.4/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom65.xml/1.4/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom66.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom67.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom68.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom69.xml/1.2/Fri Apr 3 02:47:58 2009//
+/typeinfoisderivedfrom70.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom71.xml/1.2/Fri Apr 3 02:47:59 2009//
+/typeinfoisderivedfrom72.xml/1.2/Fri Apr 3 02:48:00 2009//
+/typeinfoisderivedfrom73.xml/1.2/Fri Apr 3 02:48:00 2009//
+/userdatahandler01.xml/1.3/Fri Apr 3 02:48:00 2009//
+/userdatahandler02.xml/1.3/Fri Apr 3 02:48:00 2009//
+/userdatahandler03.xml/1.3/Fri Apr 3 02:48:00 2009//
+/userdatahandler04.xml/1.3/Fri Apr 3 02:47:58 2009//
+/wellformed01.xml/1.2/Fri Apr 3 02:47:59 2009//
+/wellformed02.xml/1.3/Fri Apr 3 02:48:00 2009//
+/wellformed03.xml/1.4/Fri Apr 3 02:48:01 2009//
+/wellformed04.xml/1.3/Fri Apr 3 02:47:59 2009//
diff --git a/test/testcases/tests/level3/core/CVS/Repository b/test/testcases/tests/level3/core/CVS/Repository
new file mode 100644
index 0000000..798d143
--- /dev/null
+++ b/test/testcases/tests/level3/core/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3/core
diff --git a/test/testcases/tests/level3/core/CVS/Root b/test/testcases/tests/level3/core/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/core/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/core/CVS/Template b/test/testcases/tests/level3/core/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/core/CVS/Template
diff --git a/test/testcases/tests/level3/core/alltests.xml b/test/testcases/tests/level3/core/alltests.xml
new file mode 100644
index 0000000..4e0a35c
--- /dev/null
+++ b/test/testcases/tests/level3/core/alltests.xml
@@ -0,0 +1,745 @@
+<?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 suite SYSTEM "dom3.dtd">
+
+<suite xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="alltests">
+<metadata>
+<title>DOM Level 3 Core Test Suite</title>
+<creator>DOM Test Suite Project</creator>
+</metadata>
+<suite.member href="attrgetschematypeinfo01.xml"/>
+<suite.member href="attrgetschematypeinfo02.xml"/>
+<suite.member href="attrgetschematypeinfo03.xml"/>
+<suite.member href="attrgetschematypeinfo04.xml"/>
+<suite.member href="attrgetschematypeinfo05.xml"/>
+<suite.member href="attrgetschematypeinfo06.xml"/>
+<suite.member href="attrgetschematypeinfo07.xml"/>
+<suite.member href="attrgetschematypeinfo08.xml"/>
+<suite.member href="attrisid01.xml"/>
+<suite.member href="attrisid02.xml"/>
+<suite.member href="attrisid03.xml"/>
+<suite.member href="attrisid04.xml"/>
+<suite.member href="attrisid05.xml"/>
+<suite.member href="attrisid06.xml"/>
+<suite.member href="attrisid07.xml"/>
+<suite.member href="canonicalform01.xml"/>
+<suite.member href="canonicalform02.xml"/>
+<suite.member href="canonicalform03.xml"/>
+<suite.member href="canonicalform04.xml"/>
+<suite.member href="canonicalform05.xml"/>
+<suite.member href="canonicalform06.xml"/>
+<suite.member href="canonicalform07.xml"/>
+<suite.member href="canonicalform08.xml"/>
+<suite.member href="canonicalform09.xml"/>
+<suite.member href="canonicalform10.xml"/>
+<suite.member href="canonicalform11.xml"/>
+<suite.member href="canonicalform12.xml"/>
+<suite.member href="cdatasections01.xml"/>
+<suite.member href="checkcharacternormalization01.xml"/>
+<suite.member href="checkcharacternormalization02.xml"/>
+<suite.member href="checkcharacternormalization03.xml"/>
+<suite.member href="comments01.xml"/>
+<suite.member href="datatypenormalization01.xml"/>
+<suite.member href="datatypenormalization02.xml"/>
+<suite.member href="datatypenormalization03.xml"/>
+<suite.member href="datatypenormalization04.xml"/>
+<suite.member href="datatypenormalization05.xml"/>
+<suite.member href="datatypenormalization06.xml"/>
+<suite.member href="datatypenormalization07.xml"/>
+<suite.member href="datatypenormalization08.xml"/>
+<suite.member href="datatypenormalization09.xml"/>
+<suite.member href="datatypenormalization10.xml"/>
+<suite.member href="datatypenormalization11.xml"/>
+<suite.member href="datatypenormalization12.xml"/>
+<suite.member href="datatypenormalization13.xml"/>
+<suite.member href="datatypenormalization14.xml"/>
+<suite.member href="datatypenormalization15.xml"/>
+<suite.member href="datatypenormalization16.xml"/>
+<suite.member href="datatypenormalization17.xml"/>
+<suite.member href="datatypenormalization18.xml"/>
+<suite.member href="documentadoptnode01.xml"/>
+<suite.member href="documentadoptnode02.xml"/>
+<suite.member href="documentadoptnode03.xml"/>
+<suite.member href="documentadoptnode04.xml"/>
+<suite.member href="documentadoptnode05.xml"/>
+<suite.member href="documentadoptnode06.xml"/>
+<suite.member href="documentadoptnode07.xml"/>
+<suite.member href="documentadoptnode08.xml"/>
+<suite.member href="documentadoptnode09.xml"/>
+<suite.member href="documentadoptnode10.xml"/>
+<suite.member href="documentadoptnode11.xml"/>
+<suite.member href="documentadoptnode12.xml"/>
+<suite.member href="documentadoptnode13.xml"/>
+<suite.member href="documentadoptnode14.xml"/>
+<suite.member href="documentadoptnode15.xml"/>
+<suite.member href="documentadoptnode16.xml"/>
+<suite.member href="documentadoptnode17.xml"/>
+<suite.member href="documentadoptnode18.xml"/>
+<suite.member href="documentadoptnode19.xml"/>
+<suite.member href="documentadoptnode20.xml"/>
+<suite.member href="documentadoptnode21.xml"/>
+<suite.member href="documentadoptnode22.xml"/>
+<suite.member href="documentadoptnode23.xml"/>
+<suite.member href="documentadoptnode24.xml"/>
+<suite.member href="documentadoptnode25.xml"/>
+<suite.member href="documentadoptnode26.xml"/>
+<suite.member href="documentadoptnode27.xml"/>
+<suite.member href="documentadoptnode28.xml"/>
+<suite.member href="documentadoptnode30.xml"/>
+<suite.member href="documentadoptnode31.xml"/>
+<suite.member href="documentadoptnode32.xml"/>
+<suite.member href="documentadoptnode33.xml"/>
+<suite.member href="documentadoptnode34.xml"/>
+<suite.member href="documentadoptnode35.xml"/>
+<suite.member href="documentadoptnode36.xml"/>
+<suite.member href="documentgetdoctype01.xml"/>
+<suite.member href="documentgetdocumenturi01.xml"/>
+<suite.member href="documentgetdocumenturi02.xml"/>
+<suite.member href="documentgetdocumenturi03.xml"/>
+<suite.member href="documentgetinputencoding01.xml"/>
+<suite.member href="documentgetinputencoding02.xml"/>
+<suite.member href="documentgetinputencoding03.xml"/>
+<suite.member href="documentgetinputencoding04.xml"/>
+<suite.member href="documentgetstricterrorchecking01.xml"/>
+<suite.member href="documentgetstricterrorchecking02.xml"/>
+<suite.member href="documentgetxmlencoding01.xml"/>
+<suite.member href="documentgetxmlencoding02.xml"/>
+<suite.member href="documentgetxmlencoding03.xml"/>
+<suite.member href="documentgetxmlencoding04.xml"/>
+<suite.member href="documentgetxmlencoding05.xml"/>
+<suite.member href="documentgetxmlstandalone01.xml"/>
+<suite.member href="documentgetxmlstandalone02.xml"/>
+<suite.member href="documentgetxmlstandalone03.xml"/>
+<suite.member href="documentgetxmlstandalone04.xml"/>
+<suite.member href="documentgetxmlstandalone05.xml"/>
+<suite.member href="documentgetxmlversion01.xml"/>
+<suite.member href="documentgetxmlversion02.xml"/>
+<suite.member href="documentgetxmlversion03.xml"/>
+<suite.member href="documentnormalizedocument01.xml"/>
+<suite.member href="documentnormalizedocument02.xml"/>
+<suite.member href="documentnormalizedocument03.xml"/>
+<suite.member href="documentnormalizedocument04.xml"/>
+<suite.member href="documentnormalizedocument05.xml"/>
+<suite.member href="documentnormalizedocument06.xml"/>
+<suite.member href="documentnormalizedocument07.xml"/>
+<suite.member href="documentnormalizedocument08.xml"/>
+<suite.member href="documentnormalizedocument09.xml"/>
+<suite.member href="documentnormalizedocument10.xml"/>
+<suite.member href="documentnormalizedocument11.xml"/>
+<suite.member href="documentnormalizedocument12.xml"/>
+<suite.member href="documentnormalizedocument13.xml"/>
+<suite.member href="documentrenamenode01.xml"/>
+<suite.member href="documentrenamenode02.xml"/>
+<suite.member href="documentrenamenode03.xml"/>
+<suite.member href="documentrenamenode04.xml"/>
+<suite.member href="documentrenamenode05.xml"/>
+<suite.member href="documentrenamenode06.xml"/>
+<suite.member href="documentrenamenode07.xml"/>
+<suite.member href="documentrenamenode08.xml"/>
+<suite.member href="documentrenamenode09.xml"/>
+<suite.member href="documentrenamenode10.xml"/>
+<suite.member href="documentrenamenode11.xml"/>
+<suite.member href="documentrenamenode12.xml"/>
+<suite.member href="documentrenamenode13.xml"/>
+<suite.member href="documentrenamenode14.xml"/>
+<suite.member href="documentrenamenode15.xml"/>
+<suite.member href="documentrenamenode16.xml"/>
+<suite.member href="documentrenamenode17.xml"/>
+<suite.member href="documentrenamenode18.xml"/>
+<suite.member href="documentrenamenode19.xml"/>
+<suite.member href="documentrenamenode20.xml"/>
+<suite.member href="documentrenamenode21.xml"/>
+<suite.member href="documentrenamenode22.xml"/>
+<suite.member href="documentrenamenode23.xml"/>
+<suite.member href="documentrenamenode24.xml"/>
+<suite.member href="documentrenamenode25.xml"/>
+<suite.member href="documentrenamenode26.xml"/>
+<suite.member href="documentrenamenode27.xml"/>
+<suite.member href="documentrenamenode28.xml"/>
+<suite.member href="documentrenamenode29.xml"/>
+<suite.member href="documentsetdocumenturi01.xml"/>
+<suite.member href="documentsetdocumenturi02.xml"/>
+<suite.member href="documentsetdocumenturi03.xml"/>
+<suite.member href="documentsetstricterrorchecking01.xml"/>
+<suite.member href="documentsetstricterrorchecking02.xml"/>
+<suite.member href="documentsetstricterrorchecking03.xml"/>
+<suite.member href="documentsetxmlstandalone01.xml"/>
+<suite.member href="documentsetxmlstandalone02.xml"/>
+<suite.member href="documentsetxmlversion01.xml"/>
+<suite.member href="documentsetxmlversion02.xml"/>
+<suite.member href="documentsetxmlversion03.xml"/>
+<suite.member href="documentsetxmlversion05.xml"/>
+<suite.member href="domconfigcanonicalform1.xml"/>
+<suite.member href="domconfigcdatasections1.xml"/>
+<suite.member href="domconfigcheckcharacternormalization1.xml"/>
+<suite.member href="domconfigcomments1.xml"/>
+<suite.member href="domconfigdatatypenormalization1.xml"/>
+<suite.member href="domconfigdatatypenormalization2.xml"/>
+<suite.member href="domconfigelementcontentwhitespace1.xml"/>
+<suite.member href="domconfigentities1.xml"/>
+<suite.member href="domconfigerrorhandler1.xml"/>
+<suite.member href="domconfigerrorhandler2.xml"/>
+<suite.member href="domconfiginfoset1.xml"/>
+<suite.member href="domconfignamespacedeclarations1.xml"/>
+<suite.member href="domconfignamespaces1.xml"/>
+<suite.member href="domconfignamespaces2.xml"/>
+<suite.member href="domconfignormalizecharacters1.xml"/>
+<suite.member href="domconfigparameternames01.xml"/>
+<suite.member href="domconfigschemalocation1.xml"/>
+<suite.member href="domconfigschematype1.xml"/>
+<suite.member href="domconfigsplitcdatasections1.xml"/>
+<suite.member href="domconfigurationcansetparameter01.xml"/>
+<suite.member href="domconfigurationcansetparameter02.xml"/>
+<suite.member href="domconfigurationcansetparameter03.xml"/>
+<suite.member href="domconfigurationcansetparameter04.xml"/>
+<suite.member href="domconfigurationcansetparameter06.xml"/>
+<suite.member href="domconfigurationgetparameter01.xml"/>
+<suite.member href="domconfigurationgetparameter02.xml"/>
+<suite.member href="domconfigvalidate1.xml"/>
+<suite.member href="domconfigvalidateifschema1.xml"/>
+<suite.member href="domconfigwellformed1.xml"/>
+<suite.member href="domimplementationgetfeature01.xml"/>
+<suite.member href="domimplementationgetfeature02.xml"/>
+<suite.member href="domimplementationgetfeature03.xml"/>
+<suite.member href="domimplementationgetfeature05.xml"/>
+<suite.member href="domimplementationgetfeature06.xml"/>
+<suite.member href="domimplementationregistry01.xml"/>
+<suite.member href="domimplementationregistry02.xml"/>
+<suite.member href="domimplementationregistry03.xml"/>
+<suite.member href="domimplementationregistry04.xml"/>
+<suite.member href="domimplementationregistry05.xml"/>
+<suite.member href="domimplementationregistry06.xml"/>
+<suite.member href="domimplementationregistry07.xml"/>
+<suite.member href="domimplementationregistry08.xml"/>
+<suite.member href="domimplementationregistry09.xml"/>
+<suite.member href="domimplementationregistry10.xml"/>
+<suite.member href="domimplementationregistry11.xml"/>
+<suite.member href="domimplementationregistry12.xml"/>
+<suite.member href="domimplementationregistry13.xml"/>
+<suite.member href="domimplementationregistry14.xml"/>
+<suite.member href="domimplementationregistry15.xml"/>
+<suite.member href="domimplementationregistry16.xml"/>
+<suite.member href="domimplementationregistry17.xml"/>
+<suite.member href="domimplementationregistry18.xml"/>
+<suite.member href="domimplementationregistry19.xml"/>
+<suite.member href="domimplementationregistry20.xml"/>
+<suite.member href="domimplementationregistry21.xml"/>
+<suite.member href="domimplementationregistry22.xml"/>
+<suite.member href="domimplementationregistry23.xml"/>
+<suite.member href="domimplementationregistry24.xml"/>
+<suite.member href="domimplementationregistry25.xml"/>
+<suite.member href="domstringlistcontains01.xml"/>
+<suite.member href="domstringlistcontains02.xml"/>
+<suite.member href="domstringlistgetlength01.xml"/>
+<suite.member href="domstringlistitem01.xml"/>
+<suite.member href="domstringlistitem02.xml"/>
+<suite.member href="elementcontentwhitespace01.xml"/>
+<suite.member href="elementcontentwhitespace02.xml"/>
+<suite.member href="elementcontentwhitespace03.xml"/>
+<suite.member href="elementgetschematypeinfo01.xml"/>
+<suite.member href="elementgetschematypeinfo02.xml"/>
+<suite.member href="elementgetschematypeinfo03.xml"/>
+<suite.member href="elementgetschematypeinfo04.xml"/>
+<suite.member href="elementgetschematypeinfo05.xml"/>
+<suite.member href="elementgetschematypeinfo06.xml"/>
+<suite.member href="elementgetschematypeinfo07.xml"/>
+<suite.member href="elementsetidattribute01.xml"/>
+<suite.member href="elementsetidattribute03.xml"/>
+<suite.member href="elementsetidattribute04.xml"/>
+<suite.member href="elementsetidattribute05.xml"/>
+<suite.member href="elementsetidattribute06.xml"/>
+<suite.member href="elementsetidattribute07.xml"/>
+<suite.member href="elementsetidattribute08.xml"/>
+<suite.member href="elementsetidattribute09.xml"/>
+<suite.member href="elementsetidattribute10.xml"/>
+<suite.member href="elementsetidattribute11.xml"/>
+<suite.member href="elementsetidattributenode01.xml"/>
+<suite.member href="elementsetidattributenode02.xml"/>
+<suite.member href="elementsetidattributenode03.xml"/>
+<suite.member href="elementsetidattributenode04.xml"/>
+<suite.member href="elementsetidattributenode05.xml"/>
+<suite.member href="elementsetidattributenode06.xml"/>
+<suite.member href="elementsetidattributenode07.xml"/>
+<suite.member href="elementsetidattributenode08.xml"/>
+<suite.member href="elementsetidattributenode09.xml"/>
+<suite.member href="elementsetidattributenode10.xml"/>
+<suite.member href="elementsetidattributens01.xml"/>
+<suite.member href="elementsetidattributens02.xml"/>
+<suite.member href="elementsetidattributens03.xml"/>
+<suite.member href="elementsetidattributens04.xml"/>
+<suite.member href="elementsetidattributens05.xml"/>
+<suite.member href="elementsetidattributens06.xml"/>
+<suite.member href="elementsetidattributens07.xml"/>
+<suite.member href="elementsetidattributens08.xml"/>
+<suite.member href="elementsetidattributens09.xml"/>
+<suite.member href="elementsetidattributens10.xml"/>
+<suite.member href="elementsetidattributens11.xml"/>
+<suite.member href="elementsetidattributens12.xml"/>
+<suite.member href="elementsetidattributens13.xml"/>
+<suite.member href="elementsetidattributens14.xml"/>
+<suite.member href="entities01.xml"/>
+<suite.member href="entities02.xml"/>
+<suite.member href="entities03.xml"/>
+<suite.member href="entities04.xml"/>
+<suite.member href="entitygetinputencoding01.xml"/>
+<suite.member href="entitygetinputencoding02.xml"/>
+<suite.member href="entitygetinputencoding03.xml"/>
+<suite.member href="entitygetinputencoding04.xml"/>
+<suite.member href="entitygetxmlencoding01.xml"/>
+<suite.member href="entitygetxmlencoding02.xml"/>
+<suite.member href="entitygetxmlencoding03.xml"/>
+<suite.member href="entitygetxmlencoding04.xml"/>
+<suite.member href="entitygetxmlversion01.xml"/>
+<suite.member href="entitygetxmlversion02.xml"/>
+<suite.member href="entitygetxmlversion03.xml"/>
+<suite.member href="entitygetxmlversion04.xml"/>
+<suite.member href="handleerror01.xml"/>
+<suite.member href="handleerror02.xml"/>
+<suite.member href="hasFeature01.xml"/>
+<suite.member href="hasFeature02.xml"/>
+<suite.member href="hasFeature03.xml"/>
+<suite.member href="hasFeature04.xml"/>
+<suite.member href="infoset01.xml"/>
+<suite.member href="infoset02.xml"/>
+<suite.member href="infoset03.xml"/>
+<suite.member href="infoset04.xml"/>
+<suite.member href="infoset05.xml"/>
+<suite.member href="infoset06.xml"/>
+<suite.member href="infoset07.xml"/>
+<suite.member href="infoset08.xml"/>
+<suite.member href="infoset09.xml"/>
+<suite.member href="namespacedeclarations01.xml"/>
+<suite.member href="namespacedeclarations02.xml"/>
+<suite.member href="nodeappendchild01.xml"/>
+<suite.member href="nodeappendchild02.xml"/>
+<suite.member href="nodecomparedocumentposition01.xml"/>
+<suite.member href="nodecomparedocumentposition02.xml"/>
+<suite.member href="nodecomparedocumentposition03.xml"/>
+<suite.member href="nodecomparedocumentposition04.xml"/>
+<suite.member href="nodecomparedocumentposition05.xml"/>
+<suite.member href="nodecomparedocumentposition06.xml"/>
+<suite.member href="nodecomparedocumentposition07.xml"/>
+<suite.member href="nodecomparedocumentposition08.xml"/>
+<suite.member href="nodecomparedocumentposition09.xml"/>
+<suite.member href="nodecomparedocumentposition10.xml"/>
+<suite.member href="nodecomparedocumentposition11.xml"/>
+<suite.member href="nodecomparedocumentposition12.xml"/>
+<suite.member href="nodecomparedocumentposition13.xml"/>
+<suite.member href="nodecomparedocumentposition14.xml"/>
+<suite.member href="nodecomparedocumentposition15.xml"/>
+<suite.member href="nodecomparedocumentposition16.xml"/>
+<suite.member href="nodecomparedocumentposition17.xml"/>
+<suite.member href="nodecomparedocumentposition18.xml"/>
+<suite.member href="nodecomparedocumentposition19.xml"/>
+<suite.member href="nodecomparedocumentposition20.xml"/>
+<suite.member href="nodecomparedocumentposition21.xml"/>
+<suite.member href="nodecomparedocumentposition22.xml"/>
+<suite.member href="nodecomparedocumentposition23.xml"/>
+<suite.member href="nodecomparedocumentposition24.xml"/>
+<suite.member href="nodecomparedocumentposition25.xml"/>
+<suite.member href="nodecomparedocumentposition26.xml"/>
+<suite.member href="nodecomparedocumentposition27.xml"/>
+<suite.member href="nodecomparedocumentposition28.xml"/>
+<suite.member href="nodecomparedocumentposition29.xml"/>
+<suite.member href="nodecomparedocumentposition30.xml"/>
+<suite.member href="nodecomparedocumentposition31.xml"/>
+<suite.member href="nodecomparedocumentposition32.xml"/>
+<suite.member href="nodecomparedocumentposition33.xml"/>
+<suite.member href="nodecomparedocumentposition34.xml"/>
+<suite.member href="nodecomparedocumentposition35.xml"/>
+<suite.member href="nodecomparedocumentposition36.xml"/>
+<suite.member href="nodecomparedocumentposition37.xml"/>
+<suite.member href="nodecomparedocumentposition38.xml"/>
+<suite.member href="nodecomparedocumentposition39.xml"/>
+<suite.member href="nodecomparedocumentposition40.xml"/>
+<suite.member href="nodegetbaseuri01.xml"/>
+<suite.member href="nodegetbaseuri02.xml"/>
+<suite.member href="nodegetbaseuri03.xml"/>
+<suite.member href="nodegetbaseuri04.xml"/>
+<suite.member href="nodegetbaseuri05.xml"/>
+<suite.member href="nodegetbaseuri06.xml"/>
+<suite.member href="nodegetbaseuri07.xml"/>
+<suite.member href="nodegetbaseuri09.xml"/>
+<suite.member href="nodegetbaseuri10.xml"/>
+<suite.member href="nodegetbaseuri11.xml"/>
+<suite.member href="nodegetbaseuri12.xml"/>
+<suite.member href="nodegetbaseuri13.xml"/>
+<suite.member href="nodegetbaseuri14.xml"/>
+<suite.member href="nodegetbaseuri15.xml"/>
+<suite.member href="nodegetbaseuri16.xml"/>
+<suite.member href="nodegetbaseuri17.xml"/>
+<suite.member href="nodegetbaseuri18.xml"/>
+<suite.member href="nodegetbaseuri19.xml"/>
+<suite.member href="nodegetbaseuri20.xml"/>
+<suite.member href="nodegetfeature01.xml"/>
+<suite.member href="nodegetfeature02.xml"/>
+<suite.member href="nodegetfeature03.xml"/>
+<suite.member href="nodegetfeature04.xml"/>
+<suite.member href="nodegetfeature05.xml"/>
+<suite.member href="nodegetfeature06.xml"/>
+<suite.member href="nodegetfeature07.xml"/>
+<suite.member href="nodegetfeature08.xml"/>
+<suite.member href="nodegetfeature09.xml"/>
+<suite.member href="nodegetfeature10.xml"/>
+<suite.member href="nodegetfeature11.xml"/>
+<suite.member href="nodegetfeature12.xml"/>
+<suite.member href="nodegetfeature13.xml"/>
+<suite.member href="nodegettextcontent01.xml"/>
+<suite.member href="nodegettextcontent02.xml"/>
+<suite.member href="nodegettextcontent03.xml"/>
+<suite.member href="nodegettextcontent04.xml"/>
+<suite.member href="nodegettextcontent05.xml"/>
+<suite.member href="nodegettextcontent06.xml"/>
+<suite.member href="nodegettextcontent07.xml"/>
+<suite.member href="nodegettextcontent08.xml"/>
+<suite.member href="nodegettextcontent09.xml"/>
+<suite.member href="nodegettextcontent10.xml"/>
+<suite.member href="nodegettextcontent11.xml"/>
+<suite.member href="nodegettextcontent12.xml"/>
+<suite.member href="nodegettextcontent13.xml"/>
+<suite.member href="nodegettextcontent14.xml"/>
+<suite.member href="nodegettextcontent15.xml"/>
+<suite.member href="nodegettextcontent16.xml"/>
+<suite.member href="nodegettextcontent17.xml"/>
+<suite.member href="nodegettextcontent18.xml"/>
+<suite.member href="nodegettextcontent19.xml"/>
+<suite.member href="nodegetuserdata01.xml"/>
+<suite.member href="nodegetuserdata02.xml"/>
+<suite.member href="nodegetuserdata03.xml"/>
+<suite.member href="nodegetuserdata04.xml"/>
+<suite.member href="nodegetuserdata05.xml"/>
+<suite.member href="nodegetuserdata06.xml"/>
+<suite.member href="nodegetuserdata07.xml"/>
+<suite.member href="nodeinsertbefore01.xml"/>
+<suite.member href="nodeinsertbefore02.xml"/>
+<suite.member href="nodeinsertbefore03.xml"/>
+<suite.member href="nodeinsertbefore04.xml"/>
+<suite.member href="nodeinsertbefore05.xml"/>
+<suite.member href="nodeinsertbefore06.xml"/>
+<suite.member href="nodeinsertbefore07.xml"/>
+<suite.member href="nodeinsertbefore08.xml"/>
+<suite.member href="nodeinsertbefore09.xml"/>
+<suite.member href="nodeinsertbefore10.xml"/>
+<suite.member href="nodeinsertbefore11.xml"/>
+<suite.member href="nodeinsertbefore12.xml"/>
+<suite.member href="nodeinsertbefore13.xml"/>
+<suite.member href="nodeinsertbefore14.xml"/>
+<suite.member href="nodeinsertbefore15.xml"/>
+<suite.member href="nodeinsertbefore16.xml"/>
+<suite.member href="nodeinsertbefore17.xml"/>
+<suite.member href="nodeinsertbefore18.xml"/>
+<suite.member href="nodeinsertbefore19.xml"/>
+<suite.member href="nodeinsertbefore20.xml"/>
+<suite.member href="nodeinsertbefore21.xml"/>
+<suite.member href="nodeinsertbefore22.xml"/>
+<suite.member href="nodeinsertbefore23.xml"/>
+<suite.member href="nodeinsertbefore24.xml"/>
+<suite.member href="nodeinsertbefore25.xml"/>
+<suite.member href="nodeisdefaultnamespace01.xml"/>
+<suite.member href="nodeisdefaultnamespace02.xml"/>
+<suite.member href="nodeisdefaultnamespace03.xml"/>
+<suite.member href="nodeisdefaultnamespace04.xml"/>
+<suite.member href="nodeisdefaultnamespace05.xml"/>
+<suite.member href="nodeisdefaultnamespace06.xml"/>
+<suite.member href="nodeisdefaultnamespace07.xml"/>
+<suite.member href="nodeisdefaultnamespace08.xml"/>
+<suite.member href="nodeisdefaultnamespace09.xml"/>
+<suite.member href="nodeisdefaultnamespace10.xml"/>
+<suite.member href="nodeisdefaultnamespace11.xml"/>
+<suite.member href="nodeisdefaultnamespace13.xml"/>
+<suite.member href="nodeisdefaultnamespace14.xml"/>
+<suite.member href="nodeisdefaultnamespace15.xml"/>
+<suite.member href="nodeisdefaultnamespace16.xml"/>
+<suite.member href="nodeisequalnode01.xml"/>
+<suite.member href="nodeisequalnode02.xml"/>
+<suite.member href="nodeisequalnode03.xml"/>
+<suite.member href="nodeisequalnode04.xml"/>
+<suite.member href="nodeisequalnode05.xml"/>
+<suite.member href="nodeisequalnode06.xml"/>
+<suite.member href="nodeisequalnode07.xml"/>
+<suite.member href="nodeisequalnode08.xml"/>
+<suite.member href="nodeisequalnode09.xml"/>
+<suite.member href="nodeisequalnode10.xml"/>
+<suite.member href="nodeisequalnode11.xml"/>
+<suite.member href="nodeisequalnode12.xml"/>
+<suite.member href="nodeisequalnode13.xml"/>
+<suite.member href="nodeisequalnode14.xml"/>
+<suite.member href="nodeisequalnode15.xml"/>
+<suite.member href="nodeisequalnode16.xml"/>
+<suite.member href="nodeisequalnode17.xml"/>
+<suite.member href="nodeisequalnode18.xml"/>
+<suite.member href="nodeisequalnode19.xml"/>
+<suite.member href="nodeisequalnode20.xml"/>
+<suite.member href="nodeisequalnode21.xml"/>
+<suite.member href="nodeisequalnode22.xml"/>
+<suite.member href="nodeisequalnode25.xml"/>
+<suite.member href="nodeisequalnode26.xml"/>
+<suite.member href="nodeisequalnode27.xml"/>
+<suite.member href="nodeisequalnode28.xml"/>
+<suite.member href="nodeisequalnode29.xml"/>
+<suite.member href="nodeisequalnode31.xml"/>
+<suite.member href="nodeisequalnode32.xml"/>
+<suite.member href="nodeissamenode01.xml"/>
+<suite.member href="nodeissamenode02.xml"/>
+<suite.member href="nodeissamenode03.xml"/>
+<suite.member href="nodeissamenode04.xml"/>
+<suite.member href="nodeissamenode05.xml"/>
+<suite.member href="nodeissamenode06.xml"/>
+<suite.member href="nodeissamenode07.xml"/>
+<suite.member href="nodeissamenode08.xml"/>
+<suite.member href="nodeissamenode09.xml"/>
+<suite.member href="nodeissamenode10.xml"/>
+<suite.member href="nodelookupnamespaceuri01.xml"/>
+<suite.member href="nodelookupnamespaceuri02.xml"/>
+<suite.member href="nodelookupnamespaceuri03.xml"/>
+<suite.member href="nodelookupnamespaceuri04.xml"/>
+<suite.member href="nodelookupnamespaceuri05.xml"/>
+<suite.member href="nodelookupnamespaceuri06.xml"/>
+<suite.member href="nodelookupnamespaceuri07.xml"/>
+<suite.member href="nodelookupnamespaceuri08.xml"/>
+<suite.member href="nodelookupnamespaceuri09.xml"/>
+<suite.member href="nodelookupnamespaceuri10.xml"/>
+<suite.member href="nodelookupnamespaceuri11.xml"/>
+<suite.member href="nodelookupnamespaceuri13.xml"/>
+<suite.member href="nodelookupnamespaceuri14.xml"/>
+<suite.member href="nodelookupnamespaceuri15.xml"/>
+<suite.member href="nodelookupnamespaceuri16.xml"/>
+<suite.member href="nodelookupnamespaceuri17.xml"/>
+<suite.member href="nodelookupnamespaceuri18.xml"/>
+<suite.member href="nodelookupnamespaceuri19.xml"/>
+<suite.member href="nodelookupnamespaceuri20.xml"/>
+<suite.member href="nodelookupprefix01.xml"/>
+<suite.member href="nodelookupprefix02.xml"/>
+<suite.member href="nodelookupprefix03.xml"/>
+<suite.member href="nodelookupprefix04.xml"/>
+<suite.member href="nodelookupprefix05.xml"/>
+<suite.member href="nodelookupprefix06.xml"/>
+<suite.member href="nodelookupprefix07.xml"/>
+<suite.member href="nodelookupprefix08.xml"/>
+<suite.member href="nodelookupprefix09.xml"/>
+<suite.member href="nodelookupprefix10.xml"/>
+<suite.member href="nodelookupprefix11.xml"/>
+<suite.member href="nodelookupprefix12.xml"/>
+<suite.member href="nodelookupprefix13.xml"/>
+<suite.member href="nodelookupprefix14.xml"/>
+<suite.member href="nodelookupprefix15.xml"/>
+<suite.member href="nodelookupprefix16.xml"/>
+<suite.member href="nodelookupprefix17.xml"/>
+<suite.member href="nodelookupprefix18.xml"/>
+<suite.member href="nodelookupprefix19.xml"/>
+<suite.member href="nodelookupprefix20.xml"/>
+<suite.member href="noderemovechild01.xml"/>
+<suite.member href="noderemovechild02.xml"/>
+<suite.member href="noderemovechild03.xml"/>
+<suite.member href="noderemovechild04.xml"/>
+<suite.member href="noderemovechild05.xml"/>
+<suite.member href="noderemovechild07.xml"/>
+<suite.member href="noderemovechild08.xml"/>
+<suite.member href="noderemovechild09.xml"/>
+<suite.member href="noderemovechild10.xml"/>
+<suite.member href="noderemovechild11.xml"/>
+<suite.member href="noderemovechild12.xml"/>
+<suite.member href="noderemovechild13.xml"/>
+<suite.member href="noderemovechild14.xml"/>
+<suite.member href="noderemovechild15.xml"/>
+<suite.member href="noderemovechild16.xml"/>
+<suite.member href="noderemovechild17.xml"/>
+<suite.member href="noderemovechild18.xml"/>
+<suite.member href="noderemovechild19.xml"/>
+<suite.member href="noderemovechild20.xml"/>
+<suite.member href="noderemovechild21.xml"/>
+<suite.member href="noderemovechild22.xml"/>
+<suite.member href="noderemovechild23.xml"/>
+<suite.member href="noderemovechild24.xml"/>
+<suite.member href="noderemovechild25.xml"/>
+<suite.member href="noderemovechild26.xml"/>
+<suite.member href="noderemovechild27.xml"/>
+<suite.member href="noderemovechild28.xml"/>
+<suite.member href="noderemovechild29.xml"/>
+<suite.member href="noderemovechild30.xml"/>
+<suite.member href="noderemovechild31.xml"/>
+<suite.member href="nodereplacechild01.xml"/>
+<suite.member href="nodereplacechild02.xml"/>
+<suite.member href="nodereplacechild03.xml"/>
+<suite.member href="nodereplacechild04.xml"/>
+<suite.member href="nodereplacechild06.xml"/>
+<suite.member href="nodereplacechild07.xml"/>
+<suite.member href="nodereplacechild08.xml"/>
+<suite.member href="nodereplacechild10.xml"/>
+<suite.member href="nodereplacechild12.xml"/>
+<suite.member href="nodereplacechild13.xml"/>
+<suite.member href="nodereplacechild14.xml"/>
+<suite.member href="nodereplacechild15.xml"/>
+<suite.member href="nodereplacechild16.xml"/>
+<suite.member href="nodereplacechild17.xml"/>
+<suite.member href="nodereplacechild18.xml"/>
+<suite.member href="nodereplacechild19.xml"/>
+<suite.member href="nodereplacechild20.xml"/>
+<suite.member href="nodereplacechild21.xml"/>
+<suite.member href="nodereplacechild22.xml"/>
+<suite.member href="nodereplacechild23.xml"/>
+<suite.member href="nodereplacechild24.xml"/>
+<suite.member href="nodereplacechild25.xml"/>
+<suite.member href="nodereplacechild26.xml"/>
+<suite.member href="nodereplacechild27.xml"/>
+<suite.member href="nodereplacechild28.xml"/>
+<suite.member href="nodereplacechild29.xml"/>
+<suite.member href="nodereplacechild30.xml"/>
+<suite.member href="nodereplacechild31.xml"/>
+<suite.member href="nodereplacechild32.xml"/>
+<suite.member href="nodereplacechild33.xml"/>
+<suite.member href="nodereplacechild34.xml"/>
+<suite.member href="nodereplacechild35.xml"/>
+<suite.member href="nodereplacechild36.xml"/>
+<suite.member href="nodereplacechild37.xml"/>
+<suite.member href="nodereplacechild38.xml"/>
+<suite.member href="nodereplacechild39.xml"/>
+<suite.member href="nodereplacechild40.xml"/>
+<suite.member href="nodesettextcontent01.xml"/>
+<suite.member href="nodesettextcontent02.xml"/>
+<suite.member href="nodesettextcontent03.xml"/>
+<suite.member href="nodesettextcontent04.xml"/>
+<suite.member href="nodesettextcontent05.xml"/>
+<suite.member href="nodesettextcontent06.xml"/>
+<suite.member href="nodesettextcontent07.xml"/>
+<suite.member href="nodesettextcontent08.xml"/>
+<suite.member href="nodesettextcontent10.xml"/>
+<suite.member href="nodesettextcontent11.xml"/>
+<suite.member href="nodesettextcontent12.xml"/>
+<suite.member href="nodesettextcontent13.xml"/>
+<suite.member href="nodesetuserdata01.xml"/>
+<suite.member href="nodesetuserdata02.xml"/>
+<suite.member href="nodesetuserdata03.xml"/>
+<suite.member href="nodesetuserdata04.xml"/>
+<suite.member href="nodesetuserdata05.xml"/>
+<suite.member href="nodesetuserdata06.xml"/>
+<suite.member href="nodesetuserdata07.xml"/>
+<suite.member href="nodesetuserdata08.xml"/>
+<suite.member href="nodesetuserdata09.xml"/>
+<suite.member href="nodesetuserdata10.xml"/>
+<suite.member href="normalizecharacters01.xml"/>
+<suite.member href="normalizecharacters02.xml"/>
+<suite.member href="normalizecharacters03.xml"/>
+<suite.member href="normalizecharacters04.xml"/>
+<suite.member href="normalizecharacters05.xml"/>
+<suite.member href="normalizecharacters06.xml"/>
+<suite.member href="normalizecharacters07.xml"/>
+<suite.member href="normalizecharacters08.xml"/>
+<suite.member href="splitcdatasections01.xml"/>
+<suite.member href="textiselementcontentwhitespace01.xml"/>
+<suite.member href="textiselementcontentwhitespace02.xml"/>
+<suite.member href="textiselementcontentwhitespace03.xml"/>
+<suite.member href="textiselementcontentwhitespace04.xml"/>
+<suite.member href="textiselementcontentwhitespace05.xml"/>
+<suite.member href="textiselementcontentwhitespace06.xml"/>
+<suite.member href="textreplacewholetext01.xml"/>
+<suite.member href="textreplacewholetext02.xml"/>
+<suite.member href="textreplacewholetext03.xml"/>
+<suite.member href="textreplacewholetext04.xml"/>
+<suite.member href="textreplacewholetext05.xml"/>
+<suite.member href="textreplacewholetext06.xml"/>
+<suite.member href="textreplacewholetext07.xml"/>
+<suite.member href="textreplacewholetext08.xml"/>
+<suite.member href="textwholetext01.xml"/>
+<suite.member href="textwholetext02.xml"/>
+<suite.member href="textwholetext03.xml"/>
+<suite.member href="typeinfogettypename03.xml"/>
+<suite.member href="typeinfogettypename04.xml"/>
+<suite.member href="typeinfogettypenamespace01.xml"/>
+<suite.member href="typeinfogettypenamespace03.xml"/>
+<suite.member href="typeinfogettypenamespace04.xml"/>
+<suite.member href="typeinfoisderivedfrom01.xml"/>
+<suite.member href="typeinfoisderivedfrom02.xml"/>
+<suite.member href="typeinfoisderivedfrom03.xml"/>
+<suite.member href="typeinfoisderivedfrom04.xml"/>
+<suite.member href="typeinfoisderivedfrom05.xml"/>
+<suite.member href="typeinfoisderivedfrom06.xml"/>
+<suite.member href="typeinfoisderivedfrom07.xml"/>
+<suite.member href="typeinfoisderivedfrom08.xml"/>
+<suite.member href="typeinfoisderivedfrom09.xml"/>
+<suite.member href="typeinfoisderivedfrom10.xml"/>
+<suite.member href="typeinfoisderivedfrom11.xml"/>
+<suite.member href="typeinfoisderivedfrom12.xml"/>
+<suite.member href="typeinfoisderivedfrom13.xml"/>
+<suite.member href="typeinfoisderivedfrom14.xml"/>
+<suite.member href="typeinfoisderivedfrom15.xml"/>
+<suite.member href="typeinfoisderivedfrom16.xml"/>
+<suite.member href="typeinfoisderivedfrom17.xml"/>
+<suite.member href="typeinfoisderivedfrom18.xml"/>
+<suite.member href="typeinfoisderivedfrom19.xml"/>
+<suite.member href="typeinfoisderivedfrom20.xml"/>
+<suite.member href="typeinfoisderivedfrom21.xml"/>
+<suite.member href="typeinfoisderivedfrom22.xml"/>
+<suite.member href="typeinfoisderivedfrom23.xml"/>
+<suite.member href="typeinfoisderivedfrom24.xml"/>
+<suite.member href="typeinfoisderivedfrom25.xml"/>
+<suite.member href="typeinfoisderivedfrom26.xml"/>
+<suite.member href="typeinfoisderivedfrom27.xml"/>
+<suite.member href="typeinfoisderivedfrom28.xml"/>
+<suite.member href="typeinfoisderivedfrom29.xml"/>
+<suite.member href="typeinfoisderivedfrom30.xml"/>
+<suite.member href="typeinfoisderivedfrom31.xml"/>
+<suite.member href="typeinfoisderivedfrom32.xml"/>
+<suite.member href="typeinfoisderivedfrom33.xml"/>
+<suite.member href="typeinfoisderivedfrom34.xml"/>
+<suite.member href="typeinfoisderivedfrom35.xml"/>
+<suite.member href="typeinfoisderivedfrom36.xml"/>
+<suite.member href="typeinfoisderivedfrom37.xml"/>
+<suite.member href="typeinfoisderivedfrom38.xml"/>
+<suite.member href="typeinfoisderivedfrom39.xml"/>
+<suite.member href="typeinfoisderivedfrom40.xml"/>
+<suite.member href="typeinfoisderivedfrom41.xml"/>
+<suite.member href="typeinfoisderivedfrom42.xml"/>
+<suite.member href="typeinfoisderivedfrom43.xml"/>
+<suite.member href="typeinfoisderivedfrom44.xml"/>
+<suite.member href="typeinfoisderivedfrom45.xml"/>
+<suite.member href="typeinfoisderivedfrom46.xml"/>
+<suite.member href="typeinfoisderivedfrom47.xml"/>
+<suite.member href="typeinfoisderivedfrom48.xml"/>
+<suite.member href="typeinfoisderivedfrom49.xml"/>
+<suite.member href="typeinfoisderivedfrom50.xml"/>
+<suite.member href="typeinfoisderivedfrom51.xml"/>
+<suite.member href="typeinfoisderivedfrom52.xml"/>
+<suite.member href="typeinfoisderivedfrom53.xml"/>
+<suite.member href="typeinfoisderivedfrom54.xml"/>
+<suite.member href="typeinfoisderivedfrom55.xml"/>
+<suite.member href="typeinfoisderivedfrom56.xml"/>
+<suite.member href="typeinfoisderivedfrom57.xml"/>
+<suite.member href="typeinfoisderivedfrom58.xml"/>
+<suite.member href="typeinfoisderivedfrom59.xml"/>
+<suite.member href="typeinfoisderivedfrom60.xml"/>
+<suite.member href="typeinfoisderivedfrom61.xml"/>
+<suite.member href="typeinfoisderivedfrom62.xml"/>
+<suite.member href="typeinfoisderivedfrom63.xml"/>
+<suite.member href="typeinfoisderivedfrom64.xml"/>
+<suite.member href="typeinfoisderivedfrom65.xml"/>
+<suite.member href="typeinfoisderivedfrom66.xml"/>
+<suite.member href="typeinfoisderivedfrom67.xml"/>
+<suite.member href="typeinfoisderivedfrom68.xml"/>
+<suite.member href="typeinfoisderivedfrom69.xml"/>
+<suite.member href="typeinfoisderivedfrom70.xml"/>
+<suite.member href="typeinfoisderivedfrom71.xml"/>
+<suite.member href="typeinfoisderivedfrom72.xml"/>
+<suite.member href="typeinfoisderivedfrom73.xml"/>
+<suite.member href="userdatahandler01.xml"/>
+<suite.member href="userdatahandler02.xml"/>
+<suite.member href="userdatahandler03.xml"/>
+<suite.member href="userdatahandler04.xml"/>
+<suite.member href="wellformed01.xml"/>
+<suite.member href="wellformed02.xml"/>
+<suite.member href="wellformed03.xml"/>
+<suite.member href="wellformed04.xml"/>
+
+</suite>
+
diff --git a/test/testcases/tests/level3/core/attrgetschematypeinfo01.xml b/test/testcases/tests/level3/core/attrgetschematypeinfo01.xml
new file mode 100644
index 0000000..822dcdd
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrgetschematypeinfo01.xml
@@ -0,0 +1,51 @@
+<?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="attrgetschematypeinfo01">
+<metadata>
+<title>attrgetschematypeinfo01</title>
+<creator>Curt Arnold</creator>
+<description>
+Call getSchemaTypeInfo on title attribute for the first acronym element.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-schemaTypeInfo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeNamespace"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="typeNS" type="DOMString"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"title"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"CDATA"' ignoreCase="false" id="nameIsCDATA"/>
+<typeNamespace var="typeNS" obj="typeInfo"/>
+<assertEquals actual="typeNS" expected='"http://www.w3.org/TR/REC-xml"' ignoreCase="false" id="nsIsXML"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrgetschematypeinfo02.xml b/test/testcases/tests/level3/core/attrgetschematypeinfo02.xml
new file mode 100644
index 0000000..527c237
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrgetschematypeinfo02.xml
@@ -0,0 +1,51 @@
+<?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="attrgetschematypeinfo02">
+<metadata>
+<title>attrgetschematypeinfo02</title>
+<creator>Curt Arnold</creator>
+<description>
+Call getSchemaTypeInfo on id attribute for the third acronym element.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-schemaTypeInfo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeNamespace"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="typeNS" type="DOMString"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"id"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"ID"' ignoreCase="false" id="nameIsID"/>
+<typeNamespace var="typeNS" obj="typeInfo"/>
+<assertEquals actual="typeNS" expected='"http://www.w3.org/TR/REC-xml"' ignoreCase="false" id="nsIsXML"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrgetschematypeinfo03.xml b/test/testcases/tests/level3/core/attrgetschematypeinfo03.xml
new file mode 100644
index 0000000..e472f62
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrgetschematypeinfo03.xml
@@ -0,0 +1,51 @@
+<?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="attrgetschematypeinfo03">
+<metadata>
+<title>attrgetschematypeinfo03</title>
+<creator>Curt Arnold</creator>
+<description>
+Call getSchemaTypeInfo on title attribute for the first acronym element.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-schemaTypeInfo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeNamespace"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="typeNS" type="DOMString"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"title"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"string"' ignoreCase="false" id="nameIsString"/>
+<typeNamespace var="typeNS" obj="typeInfo"/>
+<assertEquals actual="typeNS" expected='"http://www.w3.org/2001/XMLSchema"' ignoreCase="false" id="nsIsXML"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrgetschematypeinfo04.xml b/test/testcases/tests/level3/core/attrgetschematypeinfo04.xml
new file mode 100644
index 0000000..11eb253
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrgetschematypeinfo04.xml
@@ -0,0 +1,51 @@
+<?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="attrgetschematypeinfo04">
+<metadata>
+<title>attrgetschematypeinfo04</title>
+<creator>Curt Arnold</creator>
+<description>
+Call getSchemaTypeInfo on id attribute for the third acronym element.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-schemaTypeInfo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeNamespace"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="typeNS" type="DOMString"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"id"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"ID"' ignoreCase="false" id="nameIsID"/>
+<typeNamespace var="typeNS" obj="typeInfo"/>
+<assertEquals actual="typeNS" expected='"http://www.w3.org/2001/XMLSchema"' ignoreCase="false" id="nsIsXmlSchema"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrgetschematypeinfo05.xml b/test/testcases/tests/level3/core/attrgetschematypeinfo05.xml
new file mode 100644
index 0000000..f75d772
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrgetschematypeinfo05.xml
@@ -0,0 +1,51 @@
+<?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="attrgetschematypeinfo05">
+<metadata>
+<title>attrgetschematypeinfo05</title>
+<creator>Curt Arnold</creator>
+<description>
+Call getSchemaTypeInfo on class attribute for the third acronym element.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-schemaTypeInfo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeNamespace"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="typeNS" type="DOMString"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"class"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"classType"' ignoreCase="false" id="nameIsClassType"/>
+<typeNamespace var="typeNS" obj="typeInfo"/>
+<assertEquals actual="typeNS" expected='"http://www.w3.org/1999/xhtml"' ignoreCase="false" id="nsIsXHTML"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrgetschematypeinfo06.xml b/test/testcases/tests/level3/core/attrgetschematypeinfo06.xml
new file mode 100644
index 0000000..8ba58aa
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrgetschematypeinfo06.xml
@@ -0,0 +1,50 @@
+<?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="attrgetschematypeinfo06">
+<metadata>
+<title>attrgetschematypeinfo06</title>
+<creator>Curt Arnold</creator>
+<description>
+Attr.schemaTypeInfo should return null if not validating or schema validating.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-schemaTypeInfo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeNamespace"/>
+</metadata>
+<implementationAttribute name="validating" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="typeNS" type="DOMString"/>
+<load var="doc" href="hc_nodtdstaff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"title"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertNull actual="typeName" id="typeName"/>
+<typeNamespace var="typeNS" obj="typeInfo"/>
+<assertNull actual="typeNS" id="typeNS"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrgetschematypeinfo07.xml b/test/testcases/tests/level3/core/attrgetschematypeinfo07.xml
new file mode 100644
index 0000000..1f7ea65
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrgetschematypeinfo07.xml
@@ -0,0 +1,54 @@
+<?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="attrgetschematypeinfo07">
+<metadata>
+<title>attrgetschematypeinfo07</title>
+<creator>IBM</creator>
+<description>
+ The getSchemaTypeInfo method retrieves the type information associated with this attribute.
+
+ Load a valid document with an XML Schema.
+
+ Invoke getSchemaTypeInfo method on an attribute having [type definition] property. Expose {name} and {target namespace}
+ properties of the [type definition] property. Verity that the typeName and typeNamespace of the title attribute's
+ schemaTypeInfo are correct. getSchemaTypeInfo on the 'id' attribute of the fourth 'acronym' element
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-27</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-schemaTypeInfo"/>
+</metadata>
+
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="attrTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="typeNamespace" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acElem" obj="elemList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acElem" name='"id"'/>
+<schemaTypeInfo var="attrTypeInfo" obj="attr" interface="Attr"/>
+<assertNotNull actual="attrTypeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="attrTypeInfo"/>
+<typeNamespace var="typeNamespace" obj="attrTypeInfo"/>
+<assertEquals expected='"ID"' actual="typeName" id="attrgetschematypeinfo07_typeName" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/2001/XMLSchema"' actual="typeNamespace" id="attrgetschematypeinfo07_typeNamespace" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrgetschematypeinfo08.xml b/test/testcases/tests/level3/core/attrgetschematypeinfo08.xml
new file mode 100644
index 0000000..cc8f254
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrgetschematypeinfo08.xml
@@ -0,0 +1,50 @@
+<?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="attrgetschematypeinfo08">
+<metadata>
+<title>attrgetschematypeinfo08</title>
+<creator>IBM</creator>
+<description>
+ The getSchemaTypeInfo method retrieves the type information associated with this attribute.
+
+ Load a valid document with an XML Schema.
+ Invoke getSchemaTypeInfo method on an attribute having [type definition] property. Expose {name} and {target namespace}
+ properties of the [type definition] property. Verity that the typeName and typeNamespace of the 'title' attribute's (of first 'acronym' element)
+ schemaTypeInfo are correct.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-27</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-schemaTypeInfo"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="attrTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="typeNamespace" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acElem" name='"title"'/>
+<schemaTypeInfo var="attrTypeInfo" obj="attr" interface="Attr"/>
+<typeName var="typeName" obj="attrTypeInfo"/>
+<typeNamespace var="typeNamespace" obj="attrTypeInfo"/>
+<assertEquals expected='"string"' actual="typeName" id="attrgetschematypeinfo08_typeName" ignoreCase="false"/>
+<assertEquals actual="typeNamespace" expected='"http://www.w3.org/2001/XMLSchema"' id="attrgetschematypeinfo08_typeNamespace" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrisid01.xml b/test/testcases/tests/level3/core/attrisid01.xml
new file mode 100644
index 0000000..0e777bb
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrisid01.xml
@@ -0,0 +1,44 @@
+<?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="attrisid01">
+<metadata>
+<title>attrisid01</title>
+<creator>IBM</creator>
+<description>
+ Retrieve the third acronyms element's class attribute, whose type is not ID.
+ Invoke isID on the class attribute, this should return false.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2003-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-isId"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"class"'/>
+<isId var="id" obj="attr"/>
+<assertFalse actual="id" id="AttrIsIDFalse01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrisid02.xml b/test/testcases/tests/level3/core/attrisid02.xml
new file mode 100644
index 0000000..e6abd22
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrisid02.xml
@@ -0,0 +1,49 @@
+<?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="attrisid02">
+<metadata>
+<title>attrisid02</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttribute on the third acronym element's new attribute and set
+ isID=true. Verify by calling isID on the new attribute and check if the
+ value returned is true.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2003-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-isId"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="xmlNS" type="DOMString" value='"http://www.w3.org/XML/1998/namespace"'/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<setAttributeNS obj="acronymElem" namespaceURI='xmlNS' qualifiedName='"xml:lang"' value='"FR-fr"'/>
+<setIdAttributeNS obj="acronymElem" localName='"lang"' namespaceURI='xmlNS' isId="true"/>
+<getAttributeNodeNS var="attr" obj="acronymElem" namespaceURI='xmlNS' localName='"lang"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="AttrIsIDTrue02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrisid03.xml b/test/testcases/tests/level3/core/attrisid03.xml
new file mode 100644
index 0000000..435e3fb
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrisid03.xml
@@ -0,0 +1,47 @@
+<?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="attrisid03">
+<metadata>
+<title>attrisid03</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttribute(false) on a newly created attribute and then check Attr.isID.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2003-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-isId"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="xmlNS" type="DOMString" value='"http://www.w3.org/XML/1998/namespace"'/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<setAttributeNS obj="acronymElem" namespaceURI='xmlNS' qualifiedName='"xml:lang"' value='"FR-fr"'/>
+<setIdAttributeNS obj="acronymElem" localName='"lang"' namespaceURI='xmlNS' isId="false"/>
+<getAttributeNodeNS var="attr" obj="acronymElem" namespaceURI='xmlNS' localName='"lang"'/>
+<isId var="id" obj="attr"/>
+<assertFalse actual="id" id="AttrIsIDFalse03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrisid04.xml b/test/testcases/tests/level3/core/attrisid04.xml
new file mode 100644
index 0000000..6e52c0a
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrisid04.xml
@@ -0,0 +1,47 @@
+<?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="attrisid04">
+<metadata>
+<title>attrisid04</title>
+<creator>IBM</creator>
+<description>
+Attr.isID should return true for the id attribute on the fourth acronym node
+since its type is ID.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2003-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-isId"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="clonedacronymElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"id"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="AttrIsIDTrue04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrisid05.xml b/test/testcases/tests/level3/core/attrisid05.xml
new file mode 100644
index 0000000..b60dd32
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrisid05.xml
@@ -0,0 +1,54 @@
+<?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="attrisid05">
+<metadata>
+<title>attrisid05</title>
+<creator>IBM</creator>
+<description>
+ Retrieve the fourth acronym element's id attribute, whose type is ID.
+ Deep clone the element node and append it as a sibling of the acronym node.
+ We now have two id attributes of type ID with identical values.
+ Invoke isID on the class attribute, should this return true???
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2003-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-isId"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="clonedacronymElem" type="Element"/>
+<var name="acronymParentElem" type="Element"/>
+<var name="appendedNode" type="Node"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="3" interface="NodeList"/>
+<parentNode var="acronymParentElem" obj="acronymElem" interface="Node"/>
+<cloneNode var="clonedacronymElem" obj="acronymElem" deep="true"/>
+<appendChild var="appendedNode" obj="acronymParentElem" newChild="clonedacronymElem"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"id"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="AttrIsIDTrue05"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrisid06.xml b/test/testcases/tests/level3/core/attrisid06.xml
new file mode 100644
index 0000000..1c11c6d
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrisid06.xml
@@ -0,0 +1,37 @@
+<?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="attrisid06">
+<metadata>
+<title>attrisid06</title>
+<creator>IBM</creator>
+<description>
+ Invoke isId on a new Attr node. Check if the value returned is false.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2003-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-isId"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<isId var="id" obj="attr"/>
+<assertFalse actual="id" id="AttrIsIDFalse06"/>
+</test>
diff --git a/test/testcases/tests/level3/core/attrisid07.xml b/test/testcases/tests/level3/core/attrisid07.xml
new file mode 100644
index 0000000..7785079
--- /dev/null
+++ b/test/testcases/tests/level3/core/attrisid07.xml
@@ -0,0 +1,58 @@
+<?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="attrisid07">
+<metadata>
+<title>attrisid07</title>
+<creator>IBM</creator>
+<description>
+ The method isId returns whether this attribute is known to be of type ID or not.
+
+ Add a new attribute of type ID to the third acronym element node of this document. Verify that the method
+ isId returns true. The use of Element.setIdAttributeNS() makes 'isId' a user-determined ID attribute.
+ Import the newly created attribute node into this document.
+ Since user data assocated to the imported node is not carried over, verify that the method isId
+ returns false on the imported attribute node.
+
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2003-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Attr-isId"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="attrImported" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagNameNS var="elemList" obj="doc" localName='"acronym"' namespaceURI='"*"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<setAttributeNS obj="acronymElem" namespaceURI='"http://www.w3.org/DOM"' qualifiedName='"dom3:newAttr"' value='"null"'/>
+<setIdAttributeNS obj="acronymElem" localName='"newAttr"' namespaceURI='"http://www.w3.org/DOM"' isId="true"/>
+<getAttributeNodeNS var="attr" obj="acronymElem" namespaceURI='"http://www.w3.org/DOM"' localName='"newAttr"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="AttrIsIDTrue07_1"/>
+<importNode var="attrImported" obj="doc" importedNode="attr" deep="false"/>
+<isId var="id" obj="attrImported"/>
+<assertFalse actual="id" id="AttrIsID07_isFalseforImportedNode"/>
+</test>
diff --git a/test/testcases/tests/level3/core/canonicalform01.xml b/test/testcases/tests/level3/core/canonicalform01.xml
new file mode 100644
index 0000000..8f3b2dd
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform01.xml
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform01">
+<metadata>
+<title>canonicalform01</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with 'canonical-form' set to true, check that
+entity references are expanded and unused entity declaration are maintained.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="entRef" type="EntityReference"/>
+<var name="childValue" type="DOMString"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="ent2" type="Entity"/>
+<var name="doctype" type="DocumentType"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<!-- add an entity reference to the content of the p element -->
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<createEntityReference var="entRef" obj="doc" name='"ent1"'/>
+<appendChild var="child" obj="pElem" newChild="entRef"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<lastChild var="child" obj="pElem" interface="Node"/>
+<assertNotNull actual="child" id="lastChildNotNull"/>
+<!-- this should be a Text node -->
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"#text"' ignoreCase="false" id="firstChildName"/>
+<nodeValue var="childValue" obj="child"/>
+<assertEquals actual="childValue" expected='"barfoo"' ignoreCase="false" id="firstChildValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/canonicalform02.xml b/test/testcases/tests/level3/core/canonicalform02.xml
new file mode 100644
index 0000000..9644e9c
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform02.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform02">
+<metadata>
+<title>canonicalform02</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with normalize-characters set to false, check that
+characters are not normalized.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<var name="canSet" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<firstChild var="text" obj="pElem" interface="Node"/>
+<nodeValue var="textValue" obj="text"/>
+<assertEquals actual="textValue" expected='"barsuc&#x327;on"'
+ ignoreCase="false" id="noCharNormalization"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/canonicalform03.xml b/test/testcases/tests/level3/core/canonicalform03.xml
new file mode 100644
index 0000000..b42e09b
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform03.xml
@@ -0,0 +1,62 @@
+<?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="canonicalform03">
+<metadata>
+<title>canonicalform03</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize a document with the 'canonical-form' parameter set to true and
+check that a CDATASection has been eliminated.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="coalescing" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elemName" type="Element"/>
+<var name="cdata" type="CDATASection"/>
+<var name="text" type="Text"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="canSet" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elemName" obj="elemList" index="1" interface="NodeList"/>
+<lastChild var="cdata" obj="elemName" interface="Node"/>
+<nodeName var="nodeName" obj="cdata"/>
+<assertEquals actual="nodeName" expected='"#cdata-section"' id="documentnormalizedocument02" ignoreCase="false"/>
+<domConfig interface="Document" obj="doc" var="domConfig"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<normalizeDocument obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="normalization2Error"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elemName" obj="elemList" index="1" interface="NodeList"/>
+<lastChild var="text" obj="elemName" interface="Node"/>
+<nodeName var="nodeName" obj="text"/>
+<assertEquals actual="nodeName" expected='"#text"' id="documentnormalizedocument02_false" ignoreCase="false"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/core/canonicalform04.xml b/test/testcases/tests/level3/core/canonicalform04.xml
new file mode 100644
index 0000000..a7fb891
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform04.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform04">
+<metadata>
+<title>canonicalform04</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with canonical-form set to true, check that
+namespace declaration attributes are maintained.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="xmlnsAttr" type="Attr"/>
+<var name="canSet" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<documentElement var="docElem" obj="doc"/>
+<getAttributeNode var="xmlnsAttr" obj="docElem" name='"xmlns"'/>
+<assertNotNull actual="xmlnsAttr" id="xmlnsAttrNotNull"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/canonicalform05.xml b/test/testcases/tests/level3/core/canonicalform05.xml
new file mode 100644
index 0000000..fff3bd2
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform05.xml
@@ -0,0 +1,107 @@
+<?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="canonicalform05">
+<metadata>
+<title>canonicalform05</title>
+<creator>Curt Arnold</creator>
+<description>
+Add a L1 element to a L2 namespace aware document and perform namespace normalization. Should result
+in an error.
+</description>
+<date qualifier="created">2004-01-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/namespaces-algorithms#normalizeDocumentAlgo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="pList" type="NodeList"/>
+<var name="newChild" type="Element"/>
+<var name="retval" type="Element"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<var name="problemNode" type="Node"/>
+<var name="location" type="DOMLocator"/>
+<var name="lineNumber" type="int"/>
+<var name="columnNumber" type="int"/>
+<var name="byteOffset" type="int"/>
+<var name="utf16Offset" type="int"/>
+<var name="uri" type="DOMString"/>
+<var name="type" type="DOMString"/>
+<var name="message" type="DOMString"/>
+<var name="relatedException" type="DOMObject"/>
+<var name="relatedData" type="DOMObject"/>
+<var name="length" type="int"/>
+<var name="canSet" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<createElement var="newChild" obj="doc" tagName='"br"'/>
+<appendChild var="retval" obj="elem" newChild="newChild"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <if>
+ <equals actual="severity" expected="2" ignoreCase="false"/>
+ <!-- location should have relatedNode, everything else should be -1 or null -->
+ <location var="location" obj="error"/>
+ <relatedNode var="problemNode" obj="location" interface="DOMLocator"/>
+ <assertSame actual="problemNode" expected="newChild" id="relatedNodeIsL1Node"/>
+ <lineNumber var="lineNumber" obj="location"/>
+ <assertEquals actual="lineNumber" expected="-1" ignoreCase="false" id="lineNumber"/>
+ <columnNumber var="columnNumber" obj="location"/>
+ <assertEquals actual="columnNumber" expected="-1" ignoreCase="false" id="columnNumber"/>
+ <byteOffset var="byteOffset" obj="location"/>
+ <assertEquals actual="byteOffset" expected="-1" ignoreCase="false" id="byteOffset"/>
+ <utf16Offset var="utf16Offset" obj="location"/>
+ <assertEquals actual="utf16Offset" expected="-1" ignoreCase="false" id="utf16Offset"/>
+ <uri var="uri" obj="location" interface="DOMLocator"/>
+ <assertNull actual="uri" id="uri"/>
+ <!-- message and type should be non-empty -->
+ <message var="message" obj="error"/>
+ <length var="length" obj="message" interface="DOMString"/>
+ <assertTrue id="messageNotEmpty">
+ <greater actual="length" expected="0"/>
+ </assertTrue>
+ <!-- can't make any assertions about type, relatedData and relatedException
+ other than access should not raise exception -->
+ <type var="type" obj="error" interface="DOMError"/>
+ <relatedData var="relatedData" obj="error"/>
+ <relatedException var="relatedException" obj="error"/>
+ <increment var="errorCount" value="1"/>
+ <else>
+ <assertEquals actual="severity" expected="1" ignoreCase="false" id="anyOthersShouldBeWarnings"/>
+ </else>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneError"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/core/canonicalform06.xml b/test/testcases/tests/level3/core/canonicalform06.xml
new file mode 100644
index 0000000..e672e60
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform06.xml
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform06">
+<metadata>
+<title>canonicalform06</title>
+<creator>Curt Arnold</creator>
+<description>
+Create a document with an XML 1.1 valid but XML 1.0 invalid element and
+normalize document with canonical-form set to true.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullString" type="DOMString" isNull="true"/>
+<var name="nullDoctype" type="DocumentType" isNull="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="retval" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="locator" type="DOMLocator"/>
+<var name="relatedNode" type="Node"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImpl"/>
+<createDocument var="doc" obj="domImpl"
+ namespaceURI="nullString"
+ qualifiedName="nullString"
+ doctype="nullDoctype"/>
+<assertDOMException id="xml10InvalidName">
+ <INVALID_CHARACTER_ERR>
+ <createElementNS var="elem" obj="doc"
+ namespaceURI='"http://www.example.org/domts/wellformed01"'
+ qualifiedName='"LegalName&#2190;"'/>
+ </INVALID_CHARACTER_ERR>
+</assertDOMException>
+<try>
+ <xmlVersion obj="doc" value='"1.1"' interface="Document"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<createElementNS var="elem" obj="doc"
+ namespaceURI='"http://www.example.org/domts/wellformed01"'
+ qualifiedName='"LegalName&#2190;"'/>
+<appendChild var="retval" obj="doc" newChild="elem"/>
+<xmlVersion obj="doc" value='"1.0"' interface="Document"/>
+<domConfig var="domConfig" obj="doc" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <assertEquals actual="severity" expected="2" ignoreCase="false" id="severity"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <assertEquals actual="type" expected='"wf-invalid-character-in-node-name"'
+ ignoreCase="false" id="type"/>
+ <location var="locator" obj="error" interface="DOMError"/>
+ <relatedNode var="relatedNode" obj="locator" interface="DOMLocator"/>
+ <assertSame actual="relatedNode" expected="elem" id="relatedNode"/>
+</for-each>
+<assertSize size="1" collection="errors" id="oneError"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/canonicalform07.xml b/test/testcases/tests/level3/core/canonicalform07.xml
new file mode 100644
index 0000000..8ee40d7
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform07.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform07">
+<metadata>
+<title>canonicalform07</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with canonical-form set to true and validation set to true, check that
+whitespace in element content is preserved.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="bodyList" type="NodeList"/>
+<var name="body" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="text" type="Text"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<!-- if we discarded whitespace on parse, add some back -->
+<if><implementationAttribute name="ignoringElementContentWhitespace" value="true"/>
+ <getElementsByTagName
+ var="bodyList"
+ obj="doc"
+ tagname='"body"'
+ interface="Document"/>
+ <item var="body" obj="bodyList" interface="NodeList" index="0"/>
+ <firstChild var="child" obj="body" interface="Node"/>
+ <createTextNode var="text" obj="doc" data='" "'/>
+ <insertBefore var="child" obj="body" newChild="text" refChild="child"/>
+</if>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName
+ var="bodyList"
+ obj="doc"
+ tagname='"body"'
+ interface="Document"/>
+<item var="body" obj="bodyList" interface="NodeList" index="0"/>
+<firstChild var="child" obj="body" interface="Node"/>
+<assertNotNull actual="child" id="firstChildNotNull"/>
+<!-- this should be a Text node -->
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"#text"' ignoreCase="false" id="firstChild"/>
+<nextSibling var="child" obj="child" interface="Node"/>
+<assertNotNull actual="child" id="secondChildNotNull"/>
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"p"' ignoreCase="false" id="secondChild"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/canonicalform08.xml b/test/testcases/tests/level3/core/canonicalform08.xml
new file mode 100644
index 0000000..45a83b1
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform08.xml
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform08">
+<metadata>
+<title>canonicalform08</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document based on section 3.1 with canonical-form set to true and check normalized document.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="false"/>
+<var name="doc" type="Document"/>
+<var name="bodyList" type="NodeList"/>
+<var name="body" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="length" type="int"/>
+<var name="text" type="Text"/>
+<load var="doc" href="canonicalform01" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<firstChild var="node" obj="doc" interface="Node"/>
+<nodeType var="nodeType" obj="node" interface="Node"/>
+<assertEquals expected="7" actual="nodeType" ignoreCase="false" id="PIisFirstChild"/>
+<data var="nodeValue" obj="node" interface="ProcessingInstruction"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="36" ignoreCase="false" id="piDataLength"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisSecondChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="secondChildLength"/>
+<!-- next sibling is document element -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="1" actual="nodeType" ignoreCase="false" id="ElementisThirdChild"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisFourthChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="fourthChildLength"/>
+<!-- next sibling is a processing instruction -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="7" actual="nodeType" ignoreCase="false" id="PIisFifthChild"/>
+<data var="nodeValue" obj="node" interface="ProcessingInstruction"/>
+<assertEquals actual="nodeValue" expected='""' ignoreCase="false" id="trailingPIData"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisSixthChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="sixthChildLength"/>
+<!-- next sibling is a comment -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="8" actual="nodeType" ignoreCase="false" id="CommentisSeventhChild"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisEighthChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="eighthChildLength"/>
+<!-- next sibling is a comment -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="8" actual="nodeType" ignoreCase="false" id="CommentisNinthChild"/>
+<!-- next sibling is a null -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<assertNull actual="node" id="TenthIsNull"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/canonicalform09.xml b/test/testcases/tests/level3/core/canonicalform09.xml
new file mode 100644
index 0000000..f60f7fe
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform09.xml
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform09">
+<metadata>
+<title>canonicalform09</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document based on section 3.1 with canonical-form set to true
+and comments to false and check normalized document.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="false"/>
+<var name="doc" type="Document"/>
+<var name="bodyList" type="NodeList"/>
+<var name="body" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="length" type="int"/>
+<var name="text" type="Text"/>
+<load var="doc" href="canonicalform01" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<setParameter obj="domConfig" name='"comments"' value="false"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<firstChild var="node" obj="doc" interface="Node"/>
+<nodeType var="nodeType" obj="node" interface="Node"/>
+<assertEquals expected="7" actual="nodeType" ignoreCase="false" id="PIisFirstChild"/>
+<data var="nodeValue" obj="node" interface="ProcessingInstruction"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="36" ignoreCase="false" id="piDataLength"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisSecondChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="secondChildLength"/>
+<!-- next sibling is document element -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="1" actual="nodeType" ignoreCase="false" id="ElementisThirdChild"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisFourthChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="fourthChildLength"/>
+<!-- next sibling is a processing instruction -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="7" actual="nodeType" ignoreCase="false" id="PIisFifthChild"/>
+<data var="nodeValue" obj="node" interface="ProcessingInstruction"/>
+<assertEquals actual="nodeValue" expected='""' ignoreCase="false" id="trailingPIData"/>
+<!-- next sibling is a null -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<assertNull actual="node" id="SixthIsNull"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/canonicalform10.xml b/test/testcases/tests/level3/core/canonicalform10.xml
new file mode 100644
index 0000000..6895bf6
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform10.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform10">
+<metadata>
+<title>canonicalform10</title>
+<creator>Curt Arnold</creator>
+<description>
+Check elimination of unnecessary namespace prefixes when
+normalized with canonical-form = true.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="false"/>
+<var name="doc" type="Document"/>
+<var name="divList" type="NodeList"/>
+<var name="div" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="node" type="Node"/>
+<load var="doc" href="canonicalform03" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="divList" obj="doc"
+ tagname='"div"' interface="Document"/>
+<item var="div" obj="divList" index="5" interface="NodeList"/>
+<getAttributeNode var="node" obj="div" name='"xmlns"'/>
+<assertNotNull actual="node" id="xmlnsPresent"/>
+<getAttributeNode var="node" obj="div" name='"xmlns:a"'/>
+<assertNull actual="node" id="xmlnsANotPresent"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/canonicalform11.xml b/test/testcases/tests/level3/core/canonicalform11.xml
new file mode 100644
index 0000000..8179e12
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform11.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform11">
+<metadata>
+<title>canonicalform11</title>
+<creator>Curt Arnold</creator>
+<description>
+Check that default attributes are made explicitly specified.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="attr" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<var name="attrSpecified" type="boolean"/>
+<load var="doc" href="canonicalform03" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="elemList" obj="doc"
+ tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="elem" name='"title"'/>
+<assertNotNull actual="attr" id="titlePresent"/>
+<specified var="attrSpecified" obj="attr"/>
+<assertTrue actual="attrSpecified" id="titleSpecified"/>
+<nodeValue var="attrValue" obj="attr"/>
+<assertEquals actual="attrValue" expected='"default"' ignoreCase="false"
+ id="titleValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/canonicalform12.xml b/test/testcases/tests/level3/core/canonicalform12.xml
new file mode 100644
index 0000000..551afc5
--- /dev/null
+++ b/test/testcases/tests/level3/core/canonicalform12.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform12">
+<metadata>
+<title>canonicalform12</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with 'canonical-form' set to true, check that
+DocumentType nodes are removed.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="doctype" type="DocumentType"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<doctype var="doctype" obj="doc"/>
+<assertNull actual="doctype" id="docTypeNull"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/cdatasections01.xml b/test/testcases/tests/level3/core/cdatasections01.xml
new file mode 100644
index 0000000..df8218e
--- /dev/null
+++ b/test/testcases/tests/level3/core/cdatasections01.xml
@@ -0,0 +1,59 @@
+<?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="cdatasections01">
+<metadata>
+<title>cdatasections01</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize a document using Node.normalize and check that
+the value of the 'cdata-sections' parameter is ignored.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-cdata-sections"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="newCdata" type="CDATASection"/>
+<var name="cdata" type="CDATASection"/>
+<var name="text" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="pList" type="NodeList"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<createCDATASection var="newCdata" obj="doc" data='"CDATA"'/>
+<appendChild obj="elem" var="appendedChild" newChild="newCdata"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalize obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="normalizationError"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<lastChild var="cdata" obj="elem" interface="Node"/>
+<nodeName var="nodeName" obj="cdata"/>
+<assertEquals actual="nodeName" expected='"#cdata-section"' id="documentnormalizedocument03_true" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/checkcharacternormalization01.xml b/test/testcases/tests/level3/core/checkcharacternormalization01.xml
new file mode 100644
index 0000000..b2ead74
--- /dev/null
+++ b/test/testcases/tests/level3/core/checkcharacternormalization01.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="checkcharacternormalization01">
+<metadata>
+<title>checkcharacternormalization01</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with check-character-normalization set to false, check that
+no errors are dispatched.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-check-character-normalization"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<setParameter obj="domConfig" name='"check-character-normalization"' value="false"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<firstChild var="text" obj="pElem" interface="Node"/>
+<nodeValue var="textValue" obj="text"/>
+<assertEquals actual="textValue" expected='"barsuc&#x327;on"'
+ ignoreCase="false" id="noCharNormalization"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/checkcharacternormalization02.xml b/test/testcases/tests/level3/core/checkcharacternormalization02.xml
new file mode 100644
index 0000000..d757489
--- /dev/null
+++ b/test/testcases/tests/level3/core/checkcharacternormalization02.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="checkcharacternormalization02">
+<metadata>
+<title>checkcharacternormalization02</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with check-character-normalization set to true, check that
+non-normalized characters are signaled.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-check-character-normalization"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<var name="canSet" type="boolean"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="locator" type="DOMLocator"/>
+<var name="relatedNode" type="Node"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="errorType" type="DOMString"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"check-character-normalization"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"check-character-normalization"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <if><equals actual="severity" expected="2" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ <type var="errorType" obj="error" interface="DOMError"/>
+ <!-- type name is specified in LS spec -->
+ <assertEquals actual="errorType" expected='"check-character-normalization-failure"'
+ ignoreCase="false" id="errorType"/>
+ <location var="locator" obj="error"/>
+ <relatedNode var="relatedNode" obj="locator" interface="DOMLocator"/>
+ <assertSame actual="relatedNode" expected="text" id="relatedNodeSame"/>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneError"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/checkcharacternormalization03.xml b/test/testcases/tests/level3/core/checkcharacternormalization03.xml
new file mode 100644
index 0000000..1287814
--- /dev/null
+++ b/test/testcases/tests/level3/core/checkcharacternormalization03.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="checkcharacternormalization03">
+<metadata>
+<title>checkcharacternormalization03</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document using Node.normalize checking that "check-character-normalization"
+is ignored.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-check-character-normalization"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<var name="canSet" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"check-character-normalization"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"check-character-normalization"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalize obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<firstChild var="text" obj="pElem" interface="Node"/>
+<nodeValue var="textValue" obj="text"/>
+<assertEquals actual="textValue" expected='"barsuc&#x327;on"'
+ ignoreCase="false" id="noCharNormalization"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/comments01.xml b/test/testcases/tests/level3/core/comments01.xml
new file mode 100644
index 0000000..a54c0fe
--- /dev/null
+++ b/test/testcases/tests/level3/core/comments01.xml
@@ -0,0 +1,57 @@
+<?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="comments01">
+<metadata>
+<title>comments01</title>
+<creator>Curt Arnold</creator>
+<description>
+Check that Node.normalize ignores the setting of configuration parameter 'comments'.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-comments"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="newComment" type="Comment"/>
+<var name="lastChild" type="Node"/>
+<var name="text" type="Text"/>
+<var name="nodeName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<createComment var="newComment" obj="doc" data='"COMMENT_NODE"'/>
+<appendChild obj="elem" var="appendedChild" newChild="newComment"/>
+<domConfig interface="Document" obj="doc" var="domConfig" />
+<setParameter obj="domConfig" name='"comments"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalize obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="normalizationError"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<lastChild var="lastChild" obj="elem" interface="Node"/>
+<nodeName var="nodeName" obj="lastChild"/>
+<assertEquals actual="nodeName" expected='"#comment"' id="documentnormalizedocument04_true" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization01.xml b/test/testcases/tests/level3/core/datatypenormalization01.xml
new file mode 100644
index 0000000..cb5169e
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization01.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization01">
+<metadata>
+<title>datatypenormalization01</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if double values were normalized.
+</description>
+<date qualifier="created">2004-01-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"double"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"+0003.141592600E+0000"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"+0003.141592600E+0000"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"-31415926.00E-7 2.718"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"NaN"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"NaN"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"INF -INF"' ignoreCase="false" id="secondList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"1"' ignoreCase="false" id="thirdValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"1"' ignoreCase="false" id="thirdUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"-0"' ignoreCase="false" id="thirdList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization02.xml b/test/testcases/tests/level3/core/datatypenormalization02.xml
new file mode 100644
index 0000000..f94b266
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization02.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization02">
+<metadata>
+<title>datatypenormalization02</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if decimal values were normalized.
+</description>
+<date qualifier="created">2004-01-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"decimal"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"+0003.141592600"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"+0003.141592600"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"+10 .1"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"01"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"01"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"-.001"' ignoreCase="false" id="secondList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization03.xml b/test/testcases/tests/level3/core/datatypenormalization03.xml
new file mode 100644
index 0000000..dd71f57
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization03.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization03">
+<metadata>
+<title>datatypenormalization03</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if boolean values were whitespace normalized.
+</description>
+<date qualifier="created">2004-01-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"boolean"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"true"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"false"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"false true false"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"1"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"0"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"0 1 0"' ignoreCase="false" id="secondList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization04.xml b/test/testcases/tests/level3/core/datatypenormalization04.xml
new file mode 100644
index 0000000..1af5485
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization04.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization04">
+<metadata>
+<title>datatypenormalization04</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if float values were normalized.
+</description>
+<date qualifier="created">2004-01-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"float"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"+0003.141592600E+0000"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"+0003.141592600E+0000"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"-31415926.00E-7 2.718"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"NaN"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"NaN"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"INF -INF"' ignoreCase="false" id="secondList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"1"' ignoreCase="false" id="thirdValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"1"' ignoreCase="false" id="thirdUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"-0"' ignoreCase="false" id="thirdList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization05.xml b/test/testcases/tests/level3/core/datatypenormalization05.xml
new file mode 100644
index 0000000..4e945b5
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization05.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization05">
+<metadata>
+<title>datatypenormalization05</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if dateTime values were correctly normalized.
+</description>
+<date qualifier="created">2004-01-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"dateTime"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00-05:00"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"2004-01-21T20:30:00-05:00"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00 2004-01-21T15:30:00Z"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0000-05:00"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0000-05:00"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0000"' ignoreCase="false" id="secondList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0001-05:00"' ignoreCase="false" id="thirdValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0001-05:00"' ignoreCase="false" id="thirdUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0001"' ignoreCase="false" id="thirdList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization06.xml b/test/testcases/tests/level3/core/datatypenormalization06.xml
new file mode 100644
index 0000000..ed76ba3
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization06.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization06">
+<metadata>
+<title>datatypenormalization06</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if time values were normalized.
+</description>
+<date qualifier="created">2004-01-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"time"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"15:30:00-05:00"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"15:30:00-05:00"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"15:30:00"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"15:30:00.0000-05:00"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"15:30:00.0000-05:00"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"15:30:00.0000"' ignoreCase="false" id="secondList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"15:30:00.0001-05:00"' ignoreCase="false" id="thirdValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"15:30:00.0001-05:00"' ignoreCase="false" id="thirdUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"15:30:00.0001"' ignoreCase="false" id="thirdList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization07.xml b/test/testcases/tests/level3/core/datatypenormalization07.xml
new file mode 100644
index 0000000..a478a37
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization07.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization07">
+<metadata>
+<title>datatypenormalization07</title>
+<creator>Curt Arnold</creator>
+<description>
+The default value for the double element must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"double"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <assertEquals actual="str" expected='"3.1415926E0"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization08.xml b/test/testcases/tests/level3/core/datatypenormalization08.xml
new file mode 100644
index 0000000..275e05a
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization08.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization08">
+<metadata>
+<title>datatypenormalization08</title>
+<creator>Curt Arnold</creator>
+<description>
+The default value for the decimal element must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"decimal"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <assertEquals actual="str" expected='"3.1415926"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization09.xml b/test/testcases/tests/level3/core/datatypenormalization09.xml
new file mode 100644
index 0000000..2da2979
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization09.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization09">
+<metadata>
+<title>datatypenormalization09</title>
+<creator>Curt Arnold</creator>
+<description>
+The default value for the boolean element must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"boolean"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <assertEquals actual="str" expected='"true"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization10.xml b/test/testcases/tests/level3/core/datatypenormalization10.xml
new file mode 100644
index 0000000..d31239b
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization10.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization10">
+<metadata>
+<title>datatypenormalization10</title>
+<creator>Curt Arnold</creator>
+<description>
+The default value for the float element must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"float"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <assertEquals actual="str" expected='"3.1415926E0"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization11.xml b/test/testcases/tests/level3/core/datatypenormalization11.xml
new file mode 100644
index 0000000..b20a783
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization11.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization11">
+<metadata>
+<title>datatypenormalization11</title>
+<creator>Curt Arnold</creator>
+<description>
+The default value for the dateTime element must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"dateTime"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <!-- .0 would not be correct, see http://www.w3.org/2001/05/xmlschema-errata#E2-63 -->
+ <assertEquals actual="str" expected='"2004-01-21T20:30:00Z"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization12.xml b/test/testcases/tests/level3/core/datatypenormalization12.xml
new file mode 100644
index 0000000..e462f3d
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization12.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization12">
+<metadata>
+<title>datatypenormalization12</title>
+<creator>Curt Arnold</creator>
+<description>
+Default values must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="datatype_normalization" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"time"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <!-- .0 would not be correct, see http://www.w3.org/2001/05/xmlschema-errata#E2-63 -->
+ <assertEquals actual="str" expected='"20:30:00Z"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization13.xml b/test/testcases/tests/level3/core/datatypenormalization13.xml
new file mode 100644
index 0000000..e3edfbe
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization13.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization13">
+<metadata>
+<title>datatypenormalization13</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if string values were normalized per default whitespace
+facet of xsd:string.
+</description>
+<date qualifier="created">2004-01-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="datatype_normalization2" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"em"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <assertNotNull actual="childNode" id="childNodeNotNull"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='" EMP 0001 "' ignoreCase="false" id="content"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization14.xml b/test/testcases/tests/level3/core/datatypenormalization14.xml
new file mode 100644
index 0000000..c11aa82
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization14.xml
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization14">
+<metadata>
+<title>datatypenormalization14</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if string values were normalized per explicit whitespace=preserve.
+</description>
+<date qualifier="created">2004-01-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="datatype_normalization2" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"acronym"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <assertNotNull actual="childNode" id="childNodeNotNull"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='" EMP 0001 "' ignoreCase="false" id="content"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization15.xml b/test/testcases/tests/level3/core/datatypenormalization15.xml
new file mode 100644
index 0000000..574db8d
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization15.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization15">
+<metadata>
+<title>datatypenormalization15</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if string values were normalized per an explicit whitespace=collapse.
+</description>
+<date qualifier="created">2004-01-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="datatype_normalization2" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"code"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content1"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content2"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content3"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization16.xml b/test/testcases/tests/level3/core/datatypenormalization16.xml
new file mode 100644
index 0000000..ee4c971
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization16.xml
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization16">
+<metadata>
+<title>datatypenormalization16</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if string values were normalized per explicit whitespace=replace.
+</description>
+<date qualifier="created">2004-01-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="datatype_normalization2" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"sup"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='" EMP 0001 "' ignoreCase="false" id="content1"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content2"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content3"/>
+ <item var="element" obj="elemList" interface="NodeList" index="3"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content4"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization17.xml b/test/testcases/tests/level3/core/datatypenormalization17.xml
new file mode 100644
index 0000000..79a0dd6
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization17.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization17">
+<metadata>
+<title>datatypenormalization17</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to false, string values
+should not be normalized.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="datatype_normalization2" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="false"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"code"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content2"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content3"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertNotEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content1"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/datatypenormalization18.xml b/test/testcases/tests/level3/core/datatypenormalization18.xml
new file mode 100644
index 0000000..a6533f6
--- /dev/null
+++ b/test/testcases/tests/level3/core/datatypenormalization18.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization18">
+<metadata>
+<title>datatypenormalization18</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document using Node.normalize which is not affected by DOMConfiguration unlike
+Document.normalizeDocument. Strings should not have been normalized.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="canSetDataNorm" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<load var="doc" href="datatype_normalization2" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<canSetParameter var="canSetDataNorm" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ <isTrue value="canSetDataNorm"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalize obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"code"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content2"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content3"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertNotEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content1"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/documentadoptnode01.xml b/test/testcases/tests/level3/core/documentadoptnode01.xml
new file mode 100644
index 0000000..47190c4
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode01.xml
@@ -0,0 +1,81 @@
+<?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="documentadoptnode01">
+<metadata>
+<title>documentadoptnode01</title>
+<creator>IBM</creator>
+<description>
+ Adopt the class attribute node of the fourth acronym element. Check if this attribute has been adopted successfully by verifying the
+ nodeName, nodeType, nodeValue, specified and ownerElement attributes of the adopted node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attrOwnerElem" type="Element"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="adoptedclass" type="Node"/>
+<var name="attrsParent" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="firstChild" type="Text"/>
+<var name="firstChildValue" type="DOMString"/>
+<var name="secondChild" type="EntityReference"/>
+<var name="secondChildType" type="int"/>
+<var name="secondChildName" type="DOMString"/>
+
+
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="element" obj="childList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="element" name='"class"'/>
+<adoptNode var="adoptedclass" obj="doc" source="attr"/>
+<if><notNull obj="adoptedclass"/>
+<nodeName var="nodeName" obj="adoptedclass"/>
+<nodeValue var="nodeValue" obj="adoptedclass"/>
+<nodeType var="nodeType" obj="adoptedclass"/>
+<ownerElement var="attrOwnerElem" obj="adoptedclass" interface="Attr"/>
+<assertEquals expected='"class"' actual="nodeName" id="documentadoptode01_nodeName" ignoreCase="false"/>
+<assertEquals expected="2" actual="nodeType" id="documentadoptNode01_nodeType" ignoreCase="false"/>
+<assertNull actual="attrOwnerElem" id="documentadoptnode01_ownerDoc"/>
+<!-- The attribute's child list can either be a text node "Y&#945;" or
+ an text node "Y" and a entity reference to "alpha" -->
+<firstChild var="firstChild" obj="adoptedclass" interface="Node"/>
+<assertNotNull actual="firstChild" id="firstChildNotNull"/>
+<nodeValue var="firstChildValue" obj="firstChild"/>
+<if>
+ <equals actual="firstChildValue" expected='"Y"' ignoreCase="false"/>
+ <nextSibling var="secondChild" obj="firstChild" interface="Node"/>
+ <assertNotNull actual="secondChild" id="secondChildNotNull"/>
+ <nodeType var="secondChildType" obj="secondChild"/>
+ <assertEquals actual="secondChildType" expected="5"
+ id="secondChildIsEntityReference" ignoreCase="false"/>
+ <nodeName var="secondChildName" obj="secondChild"/>
+ <assertEquals actual="secondChildName" expected='"alpha"'
+ id="secondChildIsEnt1Reference" ignoreCase="false"/>
+ <else>
+ <assertEquals expected='"Y&#945;"' actual="nodeValue" id="documentadoptnode01_nodeValue" ignoreCase="false"/>
+ </else>
+</if>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode02.xml b/test/testcases/tests/level3/core/documentadoptnode02.xml
new file mode 100644
index 0000000..cc035ef
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode02.xml
@@ -0,0 +1,95 @@
+<?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="documentadoptnode02">
+<metadata>
+<title>documentadoptnode02</title>
+<creator>IBM</creator>
+<description>
+ Adopt the class attribute node of the fourth acronym element. Check if this attribute has been adopted
+ successfully by verifying the nodeName, nodeType, ownerElement, specified attributes and child nodes
+ of the adopted node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="attrOwnerElem" type="Element"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="adoptedclass" type="Node"/>
+<var name="attrsParent" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="isSpecified" type="boolean"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="firstChild" type="Text"/>
+<var name="firstChildValue" type="DOMString"/>
+<var name="secondChild" type="EntityReference"/>
+<var name="secondChildType" type="int"/>
+<var name="secondChildName" type="DOMString"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="element" obj="childList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="element" name='"class"'/>
+<adoptNode var="adoptedclass" obj="newDoc" source="attr"/>
+<if><notNull obj="adoptedclass"/>
+<nodeName var="nodeName" obj="adoptedclass"/>
+<nodeValue var="nodeValue" obj="adoptedclass"/>
+<nodeType var="nodeType" obj="adoptedclass"/>
+<ownerElement var="attrOwnerElem" obj="adoptedclass" interface="Attr"/>
+<specified var="isSpecified" obj="adoptedclass" />
+<assertEquals expected='"class"' actual="nodeName" id="documentadoptnode02_nodeName" ignoreCase="false"/>
+<assertEquals expected="2" actual="nodeType" id="documentadoptnode02_nodeType" ignoreCase="false"/>
+<assertNull actual="attrOwnerElem" id="documentadoptnode02_ownerDoc"/>
+<assertTrue actual="isSpecified" id="documentadoptnode02_specified"/>
+<!-- The attribute's child list can either be a text node "Yes" or
+ an text node "Y" and a entity reference to "alpha" -->
+<firstChild var="firstChild" obj="adoptedclass" interface="Node"/>
+<assertNotNull actual="firstChild" id="firstChildNotNull"/>
+<nodeValue var="firstChildValue" obj="firstChild"/>
+<if>
+ <equals actual="firstChildValue" expected='"Y"' ignoreCase="false"/>
+ <nextSibling var="secondChild" obj="firstChild" interface="Node"/>
+ <assertNotNull actual="secondChild" id="secondChildNotNull"/>
+ <nodeType var="secondChildType" obj="secondChild"/>
+ <assertEquals actual="secondChildType" expected="5"
+ id="secondChildIsEntityReference" ignoreCase="false"/>
+ <nodeName var="secondChildName" obj="secondChild"/>
+ <assertEquals actual="secondChildName" expected='"alpha"'
+ id="secondChildIsEnt1Reference" ignoreCase="false"/>
+ <else>
+ <assertEquals expected='"Y&#945;"' actual="nodeValue" id="documentadoptnode02_nodeValue" ignoreCase="false"/>
+ </else>
+</if>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode03.xml b/test/testcases/tests/level3/core/documentadoptnode03.xml
new file mode 100644
index 0000000..f3a8a34
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode03.xml
@@ -0,0 +1,56 @@
+<?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="documentadoptnode03">
+<metadata>
+<title>documentadoptnode03</title>
+<creator>IBM</creator>
+<description>
+ Invoke adoptNode on this document to adopt the a new namespace aware attribute node. Check
+ if this attribute has been adopted successfully by verifying the nodeName, namespaceURI, prefix,
+ specified and ownerElement attributes of the adopted node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<var name="adoptedAttr" type="Attr"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeNamespaceURI" type="DOMString"/>
+<var name="nodePrefix" type="DOMString"/>
+<var name="attrOwnerElem" type="Element"/>
+<var name="isSpecified" type="boolean"/>
+<var name="xmlNS" type="DOMString" value='"http://www.w3.org/XML/1998/namespace"'/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttributeNS var="newAttr" obj="doc" namespaceURI="xmlNS" qualifiedName='"xml:lang"'/>
+<adoptNode var="adoptedAttr" obj="doc" source="newAttr"/>
+<if><notNull obj="adoptedAttr"/>
+<nodeName var="nodeName" obj="adoptedAttr"/>
+<namespaceURI var="nodeNamespaceURI" obj="adoptedAttr" interface="Node"/>
+<prefix var="nodePrefix" obj="adoptedAttr"/>
+<ownerElement var="attrOwnerElem" obj="adoptedAttr" interface="Attr"/>
+<specified var="isSpecified" obj="adoptedAttr" />
+<assertEquals expected='"xml:lang"' actual="nodeName" id="documentadoptode03_nodeName" ignoreCase="false"/>
+<assertEquals expected='xmlNS' actual="nodeNamespaceURI" id="documentadoptNode03_namespaceURI" ignoreCase="false"/>
+<assertEquals expected='"xml"' actual="nodePrefix" id="documentadoptnode03_prefix" ignoreCase="false"/>
+<assertNull actual="attrOwnerElem" id="documentadoptnode03_ownerDoc"/>
+<assertTrue actual="isSpecified" id="documentadoptnode03_specified"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode04.xml b/test/testcases/tests/level3/core/documentadoptnode04.xml
new file mode 100644
index 0000000..f67060c
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode04.xml
@@ -0,0 +1,67 @@
+<?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="documentadoptnode04">
+<metadata>
+<title>documentadoptnode04</title>
+<creator>IBM</creator>
+<description>
+ Invoke adoptNode on a new document to adopt a new namespace aware attribute node created by
+ this document. Check if this attribute has been adopted successfully by verifying the nodeName,
+ namespaceURI, prefix, specified and ownerElement attributes of the adopted node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newAttr" type="Attr"/>
+<var name="adoptedAttr" type="Attr"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeNamespaceURI" type="DOMString"/>
+<var name="nodePrefix" type="DOMString"/>
+<var name="attrOwnerElem" type="Element"/>
+<var name="isSpecified" type="boolean"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="xmlNS" type="DOMString" value='"http://www.w3.org/XML/1998/namespace"'/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<createAttributeNS var="newAttr" obj="doc" namespaceURI="xmlNS" qualifiedName='"xml:lang"'/>
+<adoptNode var="adoptedAttr" obj="newDoc" source="newAttr"/>
+<if><notNull obj="adoptedAttr"/>
+<nodeName var="nodeName" obj="adoptedAttr"/>
+<namespaceURI var="nodeNamespaceURI" obj="adoptedAttr" interface="Node"/>
+<prefix var="nodePrefix" obj="adoptedAttr"/>
+<ownerElement var="attrOwnerElem" obj="adoptedAttr" interface="Attr"/>
+<specified var="isSpecified" obj="adoptedAttr" />
+<assertEquals expected='"xml:lang"' actual="nodeName" id="documentadoptnode04_nodeName" ignoreCase="false"/>
+<assertEquals expected="xmlNS" actual="nodeNamespaceURI" id="documentadoptnode04_namespaceURI" ignoreCase="false"/>
+<assertEquals expected='"xml"' actual="nodePrefix" id="documentadoptnode04_prefix" ignoreCase="false"/>
+<assertNull actual="attrOwnerElem" id="documentadoptnode04_ownerDoc"/>
+<assertTrue actual="isSpecified" id="documentadoptnode04_specified"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode05.xml b/test/testcases/tests/level3/core/documentadoptnode05.xml
new file mode 100644
index 0000000..4a66023
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode05.xml
@@ -0,0 +1,71 @@
+<?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="documentadoptnode05">
+<metadata>
+<title>documentadoptnode05</title>
+<creator>IBM</creator>
+<description>
+ Invoke adoptNode on a new document to adopt the default attribute "dir". Check if
+ this attribute has been adopted successfully by verifying the nodeName, namespaceURI, prefix,
+ specified and ownerElement attributes of the adopted node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="elementEmp" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="dir" type="Attr"/>
+<var name="adoptedAttr" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeNamespaceURI" type="DOMString"/>
+<var name="nodePrefix" type="DOMString"/>
+<var name="attrOwnerElem" type="Element"/>
+<var name="isSpecified" 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="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elementEmp" obj="childList" index="3" interface="NodeList"/>
+<getAttributeNode var="dir" obj="elementEmp" name='"dir"'/>
+<adoptNode var="adoptedAttr" obj="newDoc" source="dir"/>
+<if><notNull obj="adoptedAttr"/>
+<nodeName var="nodeName" obj="adoptedAttr"/>
+<namespaceURI var="nodeNamespaceURI" obj="adoptedAttr" interface="Node"/>
+<prefix var="nodePrefix" obj="adoptedAttr"/>
+<ownerElement var="attrOwnerElem" obj="adoptedAttr" interface="Attr"/>
+<specified var="isSpecified" obj="adoptedAttr" />
+<assertEquals expected='"dir"' actual="nodeName" id="documentadoptnode05_nodeName" ignoreCase="false"/>
+<assertNull actual="nodeNamespaceURI" id="documentadoptnode05_namespaceURI"/>
+<assertNull actual="nodePrefix" id="documentadoptnode05_prefix"/>
+<assertNull actual="attrOwnerElem" id="documentadoptnode05_ownerDoc"/>
+<assertTrue actual="isSpecified" id="documentadoptnode05_specified"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode06.xml b/test/testcases/tests/level3/core/documentadoptnode06.xml
new file mode 100644
index 0000000..719f733
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode06.xml
@@ -0,0 +1,87 @@
+<?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="documentadoptnode06">
+<metadata>
+<title>documentadoptnode06</title>
+<creator>IBM</creator>
+<description>
+ Invoke adoptNode on a new document to adopt the a new Attribute node having a Text and an EntityReference
+ child. Check if this attribute has been adopted successfully by verifying the nodeName, namespaceURI, prefix,
+ specified and ownerElement attributes of the adopted node. Also verify the ownerDocument attribute
+ of the adopted node and the adopted children of the attribute node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newAttr" type="Attr"/>
+<var name="newText" type="Text"/>
+<var name="newEntRef" type="EntityReference"/>
+<var name="adoptedAttr" type="Attr"/>
+<var name="adoptText" type="Text"/>
+<var name="adoptEntRef" type="EntityReference"/>
+<var name="nodeList" type="NodeList"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeNamespaceURI" type="DOMString"/>
+<var name="nodePrefix" type="DOMString"/>
+<var name="attrOwnerElem" type="Element"/>
+<var name="isSpecified" type="boolean"/>
+<var name="adoptedTextNodeValue" type="DOMString"/>
+<var name="adoptedEntRefNodeValue" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="appendedChild" type="Node"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="xmlNS" type="DOMString" value='"http://www.w3.org/XML/1998/namespace"'/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<createAttributeNS var="newAttr" obj="doc" namespaceURI="xmlNS" qualifiedName='"xml:lang"'/>
+<createTextNode var="newText" obj="doc" data='"Text Node"'/>
+<createEntityReference var="newEntRef" obj="doc" name='"alpha"'/>
+<appendChild obj="newAttr" var="appendedChild" newChild="newText"/>
+<appendChild obj="newAttr" var="appendedChild" newChild="newEntRef"/>
+<adoptNode var="adoptedAttr" obj="newDoc" source="newAttr"/>
+<if><notNull obj="adoptedAttr"/>
+<nodeName var="nodeName" obj="adoptedAttr"/>
+<namespaceURI var="nodeNamespaceURI" obj="adoptedAttr" interface="Node"/>
+<prefix var="nodePrefix" obj="adoptedAttr"/>
+<ownerElement var="attrOwnerElem" obj="adoptedAttr" interface="Attr"/>
+<specified var="isSpecified" obj="adoptedAttr" />
+<assertEquals expected='"xml:lang"' actual="nodeName" id="documentadoptnode06_nodeName" ignoreCase="false"/>
+<assertEquals expected="xmlNS" actual="nodeNamespaceURI" id="documentadoptnode06_namespaceURI" ignoreCase="false"/>
+<assertEquals expected='"xml"' actual="nodePrefix" id="documentadoptnode06_prefix" ignoreCase="false"/>
+<assertNull actual="attrOwnerElem" id="documentadoptnode06_ownerDoc"/>
+<assertTrue actual="isSpecified" id="documentadoptnode06_specified"/>
+<childNodes var="nodeList" obj="adoptedAttr"/>
+<item var="adoptText" obj="nodeList" index="0" interface="NodeList"/>
+<item var="adoptEntRef" obj="nodeList" index="1" interface="NodeList"/>
+<nodeValue var="adoptedTextNodeValue" obj="adoptText"/>
+<nodeName var="adoptedEntRefNodeValue" obj="adoptEntRef"/>
+<assertEquals expected='"Text Node"' actual="adoptedTextNodeValue" id="documentadoptnode06_TextNodeValue" ignoreCase="false"/>
+<assertEquals expected='"alpha"' actual="adoptedEntRefNodeValue" id="documentadoptnode06_EntRefNodeValue" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode07.xml b/test/testcases/tests/level3/core/documentadoptnode07.xml
new file mode 100644
index 0000000..4a65122
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode07.xml
@@ -0,0 +1,39 @@
+<?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="documentadoptnode07">
+<metadata>
+<title>documentadoptnode07</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document with the value of the source parameter as itself.
+ Verify if a NOT_SUPPORTED_ERR is thrown.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="adoptedDoc" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<adoptNode var="adoptedDoc" obj="doc" source="doc"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode08.xml b/test/testcases/tests/level3/core/documentadoptnode08.xml
new file mode 100644
index 0000000..8b2d951
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode08.xml
@@ -0,0 +1,50 @@
+<?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="documentadoptnode08">
+<metadata>
+<title>documentadoptnode08</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document with a new document as the value of the
+ source parameter. Verify if a NOT_SUPPORTED_ERR is thrown.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="adoptedDoc" type="Node"/>
+<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="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<adoptNode var="adoptedDoc" obj="doc" source="newDoc"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode09.xml b/test/testcases/tests/level3/core/documentadoptnode09.xml
new file mode 100644
index 0000000..19f4583
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode09.xml
@@ -0,0 +1,50 @@
+<?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="documentadoptnode09">
+<metadata>
+<title>documentadoptnode09</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on a new document with this document as the value of the
+ source parameter. Verify if a NOT_SUPPORTED_ERR is thrown.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="adoptedDoc" type="Node"/>
+<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="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<adoptNode var="adoptedDoc" obj="newDoc" source="doc"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode10.xml b/test/testcases/tests/level3/core/documentadoptnode10.xml
new file mode 100644
index 0000000..a5a0e68
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode10.xml
@@ -0,0 +1,41 @@
+<?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="documentadoptnode10">
+<metadata>
+<title>documentadoptnode10</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document with the value of the source parameter as this
+ documents doctype node. Verify if a NOT_SUPPORTED_ERR is thrown.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="adoptedDocType" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<adoptNode var="adoptedDocType" obj="doc" source="docType"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode11.xml b/test/testcases/tests/level3/core/documentadoptnode11.xml
new file mode 100644
index 0000000..e5a7491
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode11.xml
@@ -0,0 +1,49 @@
+<?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="documentadoptnode11">
+<metadata>
+<title>documentadoptnode11</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document with the value of the source parameter equal to a new
+ doctype node. Verify if a NOT_SUPPORTED_ERR is thrown.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="adoptedDocType" type="Node"/>
+<var name="nullPubID" type="DOMString" isNull="true"/>
+<var name="nullSysID" type="DOMString" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="docType" obj="domImpl" qualifiedName="rootName" publicId="nullPubID" systemId="nullSysID"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<adoptNode var="adoptedDocType" obj="doc" source="docType"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode12.xml b/test/testcases/tests/level3/core/documentadoptnode12.xml
new file mode 100644
index 0000000..7940057
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode12.xml
@@ -0,0 +1,53 @@
+<?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="documentadoptnode12">
+<metadata>
+<title>documentadoptnode12</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on a new document with the value of the source parameter equal to a new
+ doctype node. Verify if a NOT_SUPPORTED_ERR is thrown.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="adoptedDocType" type="Node"/>
+<var name="nullPubID" type="DOMString" isNull="true"/>
+<var name="nullSysID" type="DOMString" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="docType" obj="domImpl" qualifiedName="rootName" publicId="nullPubID" systemId="nullSysID"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="docType"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<adoptNode var="adoptedDocType" obj="newDoc" source="docType"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode13.xml b/test/testcases/tests/level3/core/documentadoptnode13.xml
new file mode 100644
index 0000000..93a52d9
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode13.xml
@@ -0,0 +1,49 @@
+<?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="documentadoptnode13">
+<metadata>
+<title>documentadoptnode13</title>
+<creator>IBM</creator>
+<description>
+ Using the method adoptNode, adopt a newly created DocumentFragment node populated with
+ with the first acronym element of this Document. Since the decendants of a documentFragment
+ are recursively adopted, check if the adopted node has children.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="childList" type="NodeList"/>
+<var name="success" type="boolean"/>
+<var name="acronymNode" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<var name="adoptedDocFrag" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFragment" obj="doc"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymNode" obj="childList" index="0" interface="NodeList"/>
+<appendChild obj="docFragment" var="appendedChild" newChild="acronymNode"/>
+<adoptNode var="adoptedDocFrag" obj="doc" source="docFragment"/>
+<if><notNull obj="adoptedDocFrag"/>
+<hasChildNodes var="success" obj="adoptedDocFrag"/>
+<assertTrue actual="success" id="documentadoptnode13"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode14.xml b/test/testcases/tests/level3/core/documentadoptnode14.xml
new file mode 100644
index 0000000..2a1671e
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode14.xml
@@ -0,0 +1,64 @@
+<?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="documentadoptnode14">
+<metadata>
+<title>documentadoptnode14</title>
+<creator>IBM</creator>
+<description>
+ Using the method adoptNode in a new Document, adopt a newly created DocumentFragment node populated with
+ with the first acronym element of this Document as its newChild. Since the decendants of a documentFragment
+ are recursively adopted, check if the adopted node has children.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="childList" type="NodeList"/>
+<var name="success" type="boolean"/>
+<var name="acronymNode" type="Node"/>
+<var name="adoptedDocFrag" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="imported" type="Node"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<createDocumentFragment var="docFragment" obj="newDoc"/>
+<importNode obj="newDoc" var="imported" importedNode="docElem" deep="true"/>
+<documentElement var="docElem" obj="newDoc"/>
+<appendChild obj="docElem" var="appendedChild" newChild="imported"/>
+<getElementsByTagName var="childList" obj="newDoc" tagname='"acronym"' interface="Document"/>
+<item var="acronymNode" obj="childList" index="0" interface="NodeList"/>
+<appendChild obj="docFragment" var="appendedChild" newChild="acronymNode"/>
+<adoptNode var="adoptedDocFrag" obj="newDoc" source="docFragment"/>
+<if><notNull obj="adoptedDocFrag"/>
+<hasChildNodes var="success" obj="adoptedDocFrag"/>
+<assertTrue actual="success" id="documentadoptnode14"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode15.xml b/test/testcases/tests/level3/core/documentadoptnode15.xml
new file mode 100644
index 0000000..31bef33
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode15.xml
@@ -0,0 +1,42 @@
+<?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="documentadoptnode15">
+<metadata>
+<title>documentadoptnode15</title>
+<creator>IBM</creator>
+<description>
+ Using the method adoptNode, adopt a newly created DocumentFragment node without any children.
+ Check if the adopted node has no children.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="success" type="boolean"/>
+<var name="adoptedDocFrag" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFragment" obj="doc"/>
+<adoptNode var="adoptedDocFrag" obj="doc" source="docFragment"/>
+<if><notNull obj="adoptedDocFrag"/>
+<hasChildNodes var="success" obj="adoptedDocFrag"/>
+<assertFalse actual="success" id="documentadoptnode15"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode16.xml b/test/testcases/tests/level3/core/documentadoptnode16.xml
new file mode 100644
index 0000000..fd4b13e
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode16.xml
@@ -0,0 +1,88 @@
+<?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="documentadoptnode16">
+<metadata>
+<title>documentadoptnode16</title>
+<creator>IBM</creator>
+<description>
+Create a document fragment with an entity reference, adopt the node and check
+that the entity reference value comes from the adopting documents DTD.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="childList" type="NodeList"/>
+<var name="parent" type="Element"/>
+<var name="child" type="Element"/>
+<var name="childsAttr" type="Attr"/>
+<var name="entRef" type="EntityReference"/>
+<var name="textNode" type="Text"/>
+<var name="adopted" type="Node"/>
+<var name="parentImp" type="Element"/>
+<var name="childImp" type="Element"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="childAttrImp" type="Attr"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="attrNode" type="Attr"/>
+<var name="firstChild" type="Node"/>
+<var name="firstChildType" type="int"/>
+<var name="firstChildName" type="DOMString"/>
+<var name="firstChildValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFragment" obj="doc"/>
+<createElement var="parent" obj="doc" tagName='"parent"'/>
+<createElement var="child" obj="doc" tagName='"child"'/>
+<createAttribute var="childsAttr" obj="doc" name='"state"'/>
+<createEntityReference var="entRef" obj="doc" name='"gamma"'/>
+<createTextNode var="textNode" obj="doc" data='"Test"'/>
+<appendChild obj="childsAttr" var="appendedChild" newChild="entRef"/>
+<setAttributeNode obj="child" var="attrNode" newAttr="childsAttr"/>
+<appendChild obj="child" var="appendedChild" newChild="textNode"/>
+<appendChild obj="parent" var="appendedChild" newChild="child"/>
+<appendChild obj="docFragment" var="appendedChild" newChild="parent"/>
+<adoptNode var="adopted" obj="doc" source="docFragment"/>
+<if><notNull obj="adopted"/>
+<firstChild var="parentImp" obj="adopted" interface="Node"/>
+<firstChild var="childImp" obj="parentImp" interface="Node"/>
+<attributes var="attributes" obj="childImp"/>
+<getNamedItem var="childAttrImp" obj="attributes" name='"state"'/>
+<firstChild var="firstChild" obj="childAttrImp" interface="Node"/>
+<assertNotNull actual="firstChild" id="firstChildNotNull"/>
+<nodeName var="firstChildName" obj="firstChild"/>
+<nodeValue var="firstChildValue" obj="firstChild"/>
+<nodeType var="firstChildType" obj="firstChild"/>
+<if>
+ <!-- if first child of the attribute is an
+ entity, then it should be for ent3 -->
+ <equals actual="firstChildType" expected="5"/>
+ <assertEquals actual="firstChildName" expected='"gamma"'
+ ignoreCase="false" id="firstChildEnt3Ref"/>
+ <else>
+ <!-- otherwise the value should be expanded as Texas -->
+ <assertEquals expected='"Texas"' actual="firstChildValue"
+ id="documentadoptnode16"
+ ignoreCase="false"/>
+ </else>
+</if>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode17.xml b/test/testcases/tests/level3/core/documentadoptnode17.xml
new file mode 100644
index 0000000..975d70b
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode17.xml
@@ -0,0 +1,45 @@
+<?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="documentadoptnode17">
+<metadata>
+<title>documentadoptnode17</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document with the entity ent1 as the source. Since this is
+ read-only verify if a NO_MODIFICATION_ALLOWED_ERR is thrown.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entityMap" type="NamedNodeMap"/>
+<var name="ent" type="Entity"/>
+<var name="adoptedEnt" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entityMap" obj="docType"/>
+<getNamedItem var="ent" obj="entityMap" name='"alpha"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<adoptNode var="adoptedEnt" obj="doc" source="ent"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode18.xml b/test/testcases/tests/level3/core/documentadoptnode18.xml
new file mode 100644
index 0000000..c9ad445
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode18.xml
@@ -0,0 +1,56 @@
+<?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="documentadoptnode18">
+<metadata>
+<title>documentadoptnode18</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on a new document with the entity ent4 as the source. Since this is
+ read-only verify if a NO_MODIFICATION_ALLOWED_ERR is thrown.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="entityMap" type="NamedNodeMap"/>
+<var name="ent" type="Entity"/>
+<var name="adoptedEnt" type="Node"/>
+<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="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entityMap" obj="docType"/>
+<getNamedItem var="ent" obj="entityMap" name='"delta"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<adoptNode var="adoptedEnt" obj="newDoc" source="ent"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode19.xml b/test/testcases/tests/level3/core/documentadoptnode19.xml
new file mode 100644
index 0000000..eecf077
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode19.xml
@@ -0,0 +1,45 @@
+<?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="documentadoptnode19">
+<metadata>
+<title>documentadoptnode19</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document with the notation notation1 as the source. Since this is
+ read-only verify if a NO_MODIFICATION_ALLOWED_ERR is thrown.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notationMap" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="adoptedNotaion" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<notations var="notationMap" obj="docType"/>
+<getNamedItem var="notation" obj="notationMap" name='"notation1"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<adoptNode var="adoptedNotaion" obj="doc" source="notation"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode20.xml b/test/testcases/tests/level3/core/documentadoptnode20.xml
new file mode 100644
index 0000000..4f5442c
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode20.xml
@@ -0,0 +1,56 @@
+<?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="documentadoptnode20">
+<metadata>
+<title>documentadoptnode20</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on a new document with the notation notation2 as the source. Since this is
+ read-only verify if a NO_MODIFICATION_ALLOWED_ERR is thrown.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="notationMap" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="adoptedNotation" type="Node"/>
+<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="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<doctype var="docType" obj="doc"/>
+<notations var="notationMap" obj="docType"/>
+<getNamedItem var="notation" obj="notationMap" name='"notation2"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<adoptNode var="adoptedNotation" obj="newDoc" source="notation"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode21.xml b/test/testcases/tests/level3/core/documentadoptnode21.xml
new file mode 100644
index 0000000..e9ca8a1
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode21.xml
@@ -0,0 +1,61 @@
+<?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="documentadoptnode21">
+<metadata>
+<title>documentadoptnode21</title>
+<creator>IBM</creator>
+<description>
+ The adoptNode method changes the ownerDocument of a node, its children, as well as the
+ attached attribute nodes if there are any. If the node has a parent it is first removed
+ from its parent child list.
+
+ Invoke the adoptNode method on this Document with the source node being an existing attribute
+ that is a part of this Document. Verify that the returned adopted node's nodeName, nodeValue
+ and nodeType are as expected and that the ownerElement attribute of the returned attribute node
+ was set to null.
+</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#Document3-adoptNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="attrOwnerElem" type="Element"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="adoptedTitle" type="Node"/>
+<var name="attrsParent" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="element" obj="childList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="element" name='"title"'/>
+<adoptNode var="adoptedTitle" obj="doc" source="attr"/>
+<nodeName var="nodeName" obj="adoptedTitle"/>
+<nodeValue var="nodeValue" obj="adoptedTitle"/>
+<nodeType var="nodeType" obj="adoptedTitle"/>
+<ownerElement var="attrOwnerElem" obj="adoptedTitle" interface="Attr"/>
+<assertEquals expected='"title"' actual="nodeName" id="documentadoptnode21_nodeName" ignoreCase="false"/>
+<assertEquals expected="2" actual="nodeType" id="documentadoptnode21_nodeType" ignoreCase="false"/>
+<assertEquals expected='"Yes"' actual="nodeValue" id="documentadoptnode21_nodeValue" ignoreCase="false"/>
+<assertNull actual="attrOwnerElem" id="documentadoptnode21_ownerDoc"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode22.xml b/test/testcases/tests/level3/core/documentadoptnode22.xml
new file mode 100644
index 0000000..0ea7840
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode22.xml
@@ -0,0 +1,47 @@
+<?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="documentadoptnode22">
+<metadata>
+<title>documentadoptnode22</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document with the documentElement as the source.
+ Verify if the node has been adopted correctly by its nodeName.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElement" type="Element"/>
+<var name="adoptedNode" type="Node"/>
+<var name="success" type="boolean"/>
+<var name="nodeNameOrig" type="DOMString"/>
+<var name="nodeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElement" obj="doc"/>
+<adoptNode var="adoptedNode" obj="doc" source="docElement"/>
+<if><notNull obj="adoptedNode"/>
+<hasChildNodes var="success" obj="adoptedNode"/>
+<assertTrue actual="success" id="documentadoptnode22_1"/>
+<nodeName var="nodeName" obj="adoptedNode"/>
+<nodeName var="nodeNameOrig" obj="docElement"/>
+<assertEquals actual="nodeNameOrig" expected="nodeName" id="documentadoptnode22_2" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode23.xml b/test/testcases/tests/level3/core/documentadoptnode23.xml
new file mode 100644
index 0000000..696c398
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode23.xml
@@ -0,0 +1,51 @@
+<?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="documentadoptnode23">
+<metadata>
+<title>documentadoptnode23</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document with the first acronym element node of this
+ Document as the source. Verify if the node has been adopted correctly by checking the
+ length of the this elements childNode list before and after.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="adoptedNode" type="Node"/>
+<var name="acronymElem" type="Node"/>
+<var name="acronymElemLen" type="int"/>
+<var name="adoptedLen" type="int"/>
+<var name="acronymElemChild" type="NodeList"/>
+<var name="adoptedNodeChild" type="NodeList"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="childList" index="0" interface="NodeList"/>
+<adoptNode var="adoptedNode" obj="doc" source="acronymElem"/>
+<if><notNull obj="adoptedNode"/>
+<childNodes var="acronymElemChild" obj="acronymElem"/>
+<length var="acronymElemLen" obj="acronymElemChild" interface="NodeList"/>
+<childNodes var="adoptedNodeChild" obj="adoptedNode"/>
+<length var="adoptedLen" obj="adoptedNodeChild" interface="NodeList"/>
+<assertEquals actual="acronymElemLen" expected="adoptedLen" id="documentadoptnode23" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode24.xml b/test/testcases/tests/level3/core/documentadoptnode24.xml
new file mode 100644
index 0000000..90f3901
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode24.xml
@@ -0,0 +1,61 @@
+<?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="documentadoptnode24">
+<metadata>
+<title>documentadoptnode24</title>
+<creator>IBM</creator>
+<description>
+ The adoptNode method changes the ownerDocument of a node, its children, as well as the
+ attached attribute nodes if there are any. If the node has a parent it is first removed
+ from its parent child list.
+ For Element Nodes, specified attribute nodes of the source element are adopted, Default
+ attributes are discarded and descendants of the source element are recursively adopted.
+
+ Invoke the adoptNode method on a new document with the first code element node of this
+ Document as the source. Verify if the node has been adopted correctly by checking the
+ length of the this elements childNode list before and after.
+</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#Document3-adoptNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="childList" type="NodeList"/>
+<var name="adoptedNode" type="Node"/>
+<var name="codeElem" type="Element"/>
+<var name="codeElemChildren" type="NodeList"/>
+<var name="adoptedChildren" type="NodeList"/>
+<var name="codeElemLen" type="int"/>
+<var name="adoptedLen" type="int"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom:test"' doctype="nullDocType"/>
+<getElementsByTagNameNS var="childList" obj="doc" namespaceURI='"*"' localName='"code"' interface="Document"/>
+<item var="codeElem" obj="childList" index="0" interface="NodeList"/>
+<adoptNode var="adoptedNode" obj="newDoc" source="codeElem"/>
+<childNodes var="codeElemChildren" obj="codeElem"/>
+<childNodes var="adoptedChildren" obj="adoptedNode"/>
+<length var="codeElemLen" obj="codeElemChildren" interface="NodeList"/>
+<length var="adoptedLen" obj="adoptedChildren" interface="NodeList"/>
+<assertEquals actual="codeElemLen" expected="adoptedLen" id="documentadoptnode24" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode25.xml b/test/testcases/tests/level3/core/documentadoptnode25.xml
new file mode 100644
index 0000000..d18db88
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode25.xml
@@ -0,0 +1,58 @@
+<?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="documentadoptnode25">
+<metadata>
+<title>documentadoptnode25</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on a new document with a new Element of this
+ Document as the source. Verify if the node has been adopted correctly by checking the
+ nodeName of the adopted Element.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newElem" type="Element"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="adoptedNode" type="Node"/>
+<var name="adoptedName" type="DOMString"/>
+<var name="adoptedNS" type="DOMString"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootName" obj="docElem"/>
+<createElementNS var="newElem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"th"'/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='rootNS' qualifiedName='rootName' doctype="nullDocType"/>
+<adoptNode var="adoptedNode" obj="newDoc" source="newElem"/>
+<if><notNull obj="adoptedNode"/>
+<nodeName var="adoptedName" obj="adoptedNode"/>
+<namespaceURI var="adoptedNS" obj="adoptedNode" interface="Node"/>
+<assertEquals actual="adoptedName" expected='"th"' id="documentadoptnode25_1" ignoreCase="false"/>
+<assertEquals actual="adoptedNS" expected='"http://www.w3.org/1999/xhtml"' id="documentadoptnode25_2" ignoreCase="false"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentadoptnode26.xml b/test/testcases/tests/level3/core/documentadoptnode26.xml
new file mode 100644
index 0000000..fa640b8
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode26.xml
@@ -0,0 +1,64 @@
+<?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="documentadoptnode26">
+<metadata>
+<title>documentadoptnode26</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document using a new Element and a new attribute created in
+ a new Document as the source. Verify if the node has been adopted correctly by checking the
+ nodeName of the adopted Element and by checking if the attribute was adopted.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="newElem" type="Element"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="adoptedNode" type="Node"/>
+<var name="adoptedName" type="DOMString"/>
+<var name="adoptedNS" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="appendedChild" type="Node"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootTagname" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootTagname" obj="docElem"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='rootNS' qualifiedName='rootTagname' doctype="nullDocType"/>
+<createElementNS var="newElem" obj="newDoc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"head"'/>
+<setAttributeNS obj="newElem"
+ namespaceURI='"http://www.w3.org/XML/1998/namespace"'
+ qualifiedName='"xml:lang"' value='"en-US"'/>
+<documentElement obj="newDoc" var="docElem"/>
+<appendChild obj="docElem" var="appendedChild" newChild="newElem"/>
+<adoptNode var="adoptedNode" obj="doc" source="newElem"/>
+<if><notNull obj="adoptedNode"/>
+<nodeName var="adoptedName" obj="adoptedNode"/>
+<namespaceURI var="adoptedNS" obj="adoptedNode" interface="Node"/>
+<assertEquals actual="adoptedName" expected='"head"' id="documentadoptnode26_1" ignoreCase="false"/>
+<assertEquals actual="adoptedNS" expected='"http://www.w3.org/1999/xhtml"' id="documentadoptnode26_2" ignoreCase="false"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentadoptnode27.xml b/test/testcases/tests/level3/core/documentadoptnode27.xml
new file mode 100644
index 0000000..0db3817
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode27.xml
@@ -0,0 +1,66 @@
+<?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="documentadoptnode27">
+<metadata>
+<title>documentadoptnode27</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document using a new imported Element and a new attribute created in
+ a new Document as the source. Verify if the node has been adopted correctly by checking the
+ nodeName of the adopted Element and by checking if the attribute was adopted.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="newElem" type="Element"/>
+<var name="newImpElem" type="Element"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="adoptedNode" type="Node"/>
+<var name="adoptedName" type="DOMString"/>
+<var name="adoptedNS" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootTagname" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootTagname" obj="docElem"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='rootNS' qualifiedName='rootTagname' doctype="nullDocType"/>
+<createElementNS var="newElem" obj="newDoc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:head"'/>
+<setAttributeNS obj="newElem"
+ namespaceURI='"http://www.w3.org/XML/1998/namespace"'
+ qualifiedName='"xml:lang"' value='"en-US"'/>
+<documentElement obj="newDoc" var="docElem"/>
+<appendChild obj="docElem" var="appendedChild" newChild="newElem"/>
+<importNode var="newImpElem" obj="doc" importedNode="newElem" deep="true"/>
+<adoptNode var="adoptedNode" obj="doc" source="newImpElem"/>
+<if><notNull obj="adoptedNode"/>
+<nodeName var="adoptedName" obj="adoptedNode"/>
+<namespaceURI var="adoptedNS" obj="adoptedNode" interface="Node"/>
+<assertEquals actual="adoptedName" expected='"xhtml:head"' id="documentadoptnode27_1" ignoreCase="false"/>
+<assertEquals actual="adoptedNS" expected='"http://www.w3.org/1999/xhtml"' id="documentadoptnode27_2" ignoreCase="false"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentadoptnode28.xml b/test/testcases/tests/level3/core/documentadoptnode28.xml
new file mode 100644
index 0000000..be64241
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode28.xml
@@ -0,0 +1,48 @@
+<?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="documentadoptnode28">
+<metadata>
+<title>documentadoptnode28</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document using the "p" element with the default
+ Attribute "dir" as the source. Verify if the node has been adopted correctly by
+ checking the nodeName of the adopted Element and by checking if the attribute was adopted.
+ Note the default attribute should be adopted in this case.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="adoptedNode" type="Node"/>
+<var name="employeeElem" type="Node"/>
+<var name="attrImp" type="Attr"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="employeeElem" obj="childList" index="3" interface="NodeList"/>
+<adoptNode var="adoptedNode" obj="doc" source="employeeElem"/>
+<if><notNull obj="adoptedNode"/>
+<getAttributeNode var="attrImp" obj="adoptedNode" name='"dir"'/>
+<nodeName var="nodeName" obj="attrImp"/>
+<assertEquals actual="nodeName" expected='"dir"' id="documentadoptnode28" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode30.xml b/test/testcases/tests/level3/core/documentadoptnode30.xml
new file mode 100644
index 0000000..2a08c5b
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode30.xml
@@ -0,0 +1,42 @@
+<?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="documentadoptnode30">
+<metadata>
+<title>documentadoptnode30</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document using a new Text node as the source. Verify
+ if the node has been adopted correctly by checking the nodeValue of the adopted node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newText" type="Text"/>
+<var name="adoptedText" type="Text"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createTextNode var="newText" obj="doc" data='"Document.adoptNode test for a TEXT_NODE"'/>
+<adoptNode var="adoptedText" obj="doc" source="newText"/>
+<if><notNull obj="adoptedText"/>
+<nodeValue var="nodeValue" obj="adoptedText"/>
+<assertEquals actual="nodeValue" expected='"Document.adoptNode test for a TEXT_NODE"' id="documentadoptnode30" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode31.xml b/test/testcases/tests/level3/core/documentadoptnode31.xml
new file mode 100644
index 0000000..357ec27
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode31.xml
@@ -0,0 +1,54 @@
+<?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="documentadoptnode31">
+<metadata>
+<title>documentadoptnode31</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document using a new Text node from a new Document as the
+ source. Verify if the node has been adopted correctly by checking the nodeValue of the adopted
+ node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="newText" type="Text"/>
+<var name="adoptedText" type="Text"/>
+<var name="nodeValue" type="DOMString"/>
+<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="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<createTextNode var="newText" obj="newDoc" data='"new Document.adoptNode test for a TEXT_NODE"'/>
+<adoptNode var="adoptedText" obj="doc" source="newText"/>
+<if><notNull obj="adoptedText"/>
+<nodeValue var="nodeValue" obj="adoptedText"/>
+<assertEquals actual="nodeValue" expected='"new Document.adoptNode test for a TEXT_NODE"' id="documentadoptnode31" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode32.xml b/test/testcases/tests/level3/core/documentadoptnode32.xml
new file mode 100644
index 0000000..d9a358c
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode32.xml
@@ -0,0 +1,45 @@
+<?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="documentadoptnode32">
+<metadata>
+<title>documentadoptnode32</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on another document using a new CDataSection node created in this
+ Document as the source. Verify if the node has been adopted correctly by checking the nodeValue
+ of the adopted node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docAdopter" type="Document"/>
+<var name="newCDATA" type="Node"/>
+<var name="adoptedCDATA" type="Node"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<load var="docAdopter" href="hc_staff" willBeModified="true"/>
+<createCDATASection var="newCDATA" obj="doc" data='"Document.adoptNode test for a CDATASECTION_NODE"'/>
+<adoptNode var="adoptedCDATA" obj="docAdopter" source="newCDATA"/>
+<if><notNull obj="adoptedCDATA"/>
+<nodeValue var="nodeValue" obj="adoptedCDATA"/>
+<assertEquals actual="nodeValue" expected='"Document.adoptNode test for a CDATASECTION_NODE"' id="documentadoptnode32" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode33.xml b/test/testcases/tests/level3/core/documentadoptnode33.xml
new file mode 100644
index 0000000..cae3139
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode33.xml
@@ -0,0 +1,54 @@
+<?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="documentadoptnode33">
+<metadata>
+<title>documentadoptnode33</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document using a new CDataSection node created in a new
+ Document as the source. Verify if the node has been adopted correctly by checking the nodeValue
+ of the adopted node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="newCDATA" type="Node"/>
+<var name="adoptedCDATA" type="Node"/>
+<var name="nodeValue" type="DOMString"/>
+<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="true"/>
+<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"/>
+<createCDATASection var="newCDATA" obj="newDoc" data='"Document.adoptNode test for a CDATASECTION_NODE"'/>
+<adoptNode var="adoptedCDATA" obj="doc" source="newCDATA"/>
+<if><notNull obj="adoptedCDATA"/>
+<nodeValue var="nodeValue" obj="adoptedCDATA"/>
+<assertEquals actual="nodeValue" expected='"Document.adoptNode test for a CDATASECTION_NODE"' id="documentadoptnode33" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode34.xml b/test/testcases/tests/level3/core/documentadoptnode34.xml
new file mode 100644
index 0000000..daed51e
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode34.xml
@@ -0,0 +1,54 @@
+<?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="documentadoptnode34">
+<metadata>
+<title>documentadoptnode34</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on a new document using a new Comment node created in it
+ as the source. Verify if the node has been adopted correctly by checking the nodeValue
+ of the adopted node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="newComment" type="Node"/>
+<var name="adoptedComment" type="Node"/>
+<var name="nodeValue" type="DOMString"/>
+<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="true"/>
+<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"/>
+<createComment var="newComment" obj="newDoc" data='"Document.adoptNode test for a COMMENT_NODE"'/>
+<adoptNode var="adoptedComment" obj="newDoc" source="newComment"/>
+<if><notNull obj="adoptedComment"/>
+<nodeValue var="nodeValue" obj="adoptedComment"/>
+<assertEquals actual="nodeValue" expected='"Document.adoptNode test for a COMMENT_NODE"' id="documentadoptnode34" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode35.xml b/test/testcases/tests/level3/core/documentadoptnode35.xml
new file mode 100644
index 0000000..7aa73c7
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode35.xml
@@ -0,0 +1,57 @@
+<?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="documentadoptnode35">
+<metadata>
+<title>documentadoptnode35</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document using a new PI node created in a new doc
+ as the source. Verify if the node has been adopted correctly by checking the nodeValue
+ of the adopted node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="newPI" type="ProcessingInstruction"/>
+<var name="adoptedPI" type="ProcessingInstruction"/>
+<var name="piTarget" type="DOMString"/>
+<var name="piData" type="DOMString"/>
+<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="true"/>
+<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"/>
+<createProcessingInstruction var="newPI" obj="newDoc" target='"PITarget"' data='"PIData"'/>
+<adoptNode var="adoptedPI" obj="doc" source="newPI"/>
+<if><notNull obj="adoptedPI"/>
+ <target var="piTarget" obj="adoptedPI" interface="ProcessingInstruction"/>
+ <data var="piData" obj="adoptedPI" interface="ProcessingInstruction"/>
+ <assertEquals actual="piTarget" expected='"PITarget"' id="documentadoptnode35_Target" ignoreCase="false"/>
+ <assertEquals actual="piData" expected='"PIData"' id="documentadoptnode35_Data" ignoreCase="false"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentadoptnode36.xml b/test/testcases/tests/level3/core/documentadoptnode36.xml
new file mode 100644
index 0000000..c15854e
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode36.xml
@@ -0,0 +1,67 @@
+<?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="documentadoptnode36">
+<metadata>
+<title>documentadoptnode36</title>
+<creator>IBM</creator>
+<description>
+ Invoke the adoptNode method on this document using a new PI node created in a new doc
+ as the source. Verify if the node has been adopted correctly by checking the nodeValue
+ of the adopted node.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="newPI1" type="ProcessingInstruction"/>
+<var name="newPI2" type="ProcessingInstruction"/>
+<var name="adoptedPI1" type="ProcessingInstruction"/>
+<var name="adoptedPI2" type="ProcessingInstruction"/>
+<var name="piTarget" type="DOMString"/>
+<var name="piData" type="DOMString"/>
+<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="true"/>
+<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"/>
+<createProcessingInstruction var="newPI1" obj="newDoc" target='"PITarget"' data='"PIData"'/>
+<createProcessingInstruction var="newPI2" obj="doc" target='"PITarget"' data='"PIData"'/>
+<adoptNode var="adoptedPI1" obj="newDoc" source="newPI1"/>
+<if><notNull obj="adoptedPI1"/>
+<adoptNode var="adoptedPI2" obj="newDoc" source="newPI2"/>
+<if><notNull obj="adoptedPI2"/>
+<target var="piTarget" obj="adoptedPI1" interface="ProcessingInstruction"/>
+<data var="piData" obj="adoptedPI1" interface="ProcessingInstruction"/>
+<assertEquals actual="piTarget" expected='"PITarget"' id="documentadoptnode36_Target1" ignoreCase="false"/>
+<assertEquals actual="piData" expected='"PIData"' id="documentadoptnode36_Data1" ignoreCase="false"/>
+<target var="piTarget" obj="adoptedPI2" interface="ProcessingInstruction"/>
+<data var="piData" obj="adoptedPI2" interface="ProcessingInstruction"/>
+<assertEquals actual="piTarget" expected='"PITarget"' id="documentadoptnode36_Target2" ignoreCase="false"/>
+<assertEquals actual="piData" expected='"PIData"' id="documentadoptnode36_Data2" ignoreCase="false"/>
+</if>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetdoctype01.xml b/test/testcases/tests/level3/core/documentgetdoctype01.xml
new file mode 100644
index 0000000..b5e8d5f
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetdoctype01.xml
@@ -0,0 +1,59 @@
+<?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="documentgetdoctype01">
+<metadata>
+<title>documentgetdoctype01</title>
+<creator>IBM</creator>
+<description>
+ Retreive the doctype node, create a new Doctype node, call replaceChild and try replacing the
+ docType node with a new docType node. Check if the docType node was correctly replaced with
+ the new one.
+</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#ID-B63ED1A31"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="newDocType" type="DocumentType"/>
+<var name="replacedDocType" type="DocumentType"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newSysID" type="DOMString"/>
+<var name="nullPubID" type="DOMString" isNull="true"/>
+<var name="nullSysID" type="DOMString" isNull="true"/>
+<var name="replaced" type="Node"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<name var="rootName" obj="docType" interface="DocumentType"/>
+<implementation obj="doc" var="domImpl"/>
+<createDocumentType obj="domImpl" var="newDocType" qualifiedName="rootName" publicId="nullPubID" systemId="nullSysID"/>
+<try>
+ <replaceChild obj="doc" var="replaced" newChild="newDocType" oldChild="docType"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<doctype var="replacedDocType" obj="doc"/>
+<systemId var="newSysID" obj="replacedDocType" interface="DocumentType"/>
+<assertNull actual="newSysID" id="newSysIdNull"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetdocumenturi01.xml b/test/testcases/tests/level3/core/documentgetdocumenturi01.xml
new file mode 100644
index 0000000..af36b3f
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetdocumenturi01.xml
@@ -0,0 +1,35 @@
+<?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="documentgetdocumenturi01">
+<metadata>
+<title>documentgetdocumenturi01</title>
+<creator>IBM</creator>
+<description>
+ Retreive the documentURI of this document, and verify if it is not null.
+</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#Document3-documentURI"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentURI var="docURI" obj="doc" />
+<assertNotNull actual="docURI" id="documentgetdocumenturi01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetdocumenturi02.xml b/test/testcases/tests/level3/core/documentgetdocumenturi02.xml
new file mode 100644
index 0000000..e993c6d
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetdocumenturi02.xml
@@ -0,0 +1,46 @@
+<?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="documentgetdocumenturi02">
+<metadata>
+<title>documentgetdocumenturi02</title>
+<creator>IBM</creator>
+<description>
+ Create a new Document, retreive its documentURI, and verify if it is null.
+</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#Document3-documentURI"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="docURI" type="DOMString"/>
+<var name="domImpl" type="DOMImplementation"/>
+<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"/>
+<documentURI var="docURI" obj="newDoc" />
+<assertNull actual="docURI" id="documentgetdocumenturi02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetdocumenturi03.xml b/test/testcases/tests/level3/core/documentgetdocumenturi03.xml
new file mode 100644
index 0000000..641015d
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetdocumenturi03.xml
@@ -0,0 +1,51 @@
+<?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="documentgetdocumenturi03">
+<metadata>
+<title>documentgetdocumenturi03</title>
+<creator>IBM</creator>
+<description>
+ Import the documentElement node of this document into a new document. Since this node is
+ now owned by the importing document, its documentURI attribute value should be null
+</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#Document3-documentURI"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="importedOwner" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="docElemImported" type="Node"/>
+<var name="docURI" type="DOMString"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootName" obj="docElem"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<importNode var="docElemImported" obj="newDoc" importedNode="docElem" deep="false" />
+<ownerDocument var="importedOwner" obj="docElemImported"/>
+<documentURI var="docURI" obj="importedOwner" />
+<assertNull actual="docURI" id="documentgetdocumenturi03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetinputencoding01.xml b/test/testcases/tests/level3/core/documentgetinputencoding01.xml
new file mode 100644
index 0000000..538aa52
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetinputencoding01.xml
@@ -0,0 +1,36 @@
+<?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="documentgetinputencoding01">
+<metadata>
+<title>documentgetinputencoding01</title>
+<creator>IBM</creator>
+<description>
+ Call the getInputEncoding method on a UTF-8 encoded document and check if the
+ value returned is UTF-8.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-inputEncoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<inputEncoding obj="doc" var="encodingName" interface="Document"/>
+<assertEquals expected='"UTF-8"' actual="encodingName" id="documentgetinputencoding01" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetinputencoding02.xml b/test/testcases/tests/level3/core/documentgetinputencoding02.xml
new file mode 100644
index 0000000..e04f5ad
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetinputencoding02.xml
@@ -0,0 +1,47 @@
+<?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="documentgetinputencoding02">
+<metadata>
+<title>documentgetinputencoding02</title>
+<creator>IBM</creator>
+<description>
+ Call the getInputEncoding method on a new document and check if the value returned
+ is null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-inputEncoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="encodingName" type="DOMString"/>
+<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="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootName" obj="docElem"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<inputEncoding obj="newDoc" var="encodingName" interface="Document"/>
+<assertNull actual="encodingName" id="documentgetinputencoding02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetinputencoding03.xml b/test/testcases/tests/level3/core/documentgetinputencoding03.xml
new file mode 100644
index 0000000..bd6cd88
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetinputencoding03.xml
@@ -0,0 +1,36 @@
+<?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="documentgetinputencoding03">
+<metadata>
+<title>documentgetinputencoding03</title>
+<creator>IBM</creator>
+<description>
+ Call the getInputEncoding method on a on a UTF-16 (BE) encoded document and check if the value returned
+ is UTF-16BE.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-inputEncoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="barfoo_utf16" willBeModified="false"/>
+<inputEncoding obj="doc" var="encodingName" interface="Document"/>
+<assertEquals expected='"UTF-16BE"' actual="encodingName" id="documentgetinputencoding03" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetinputencoding04.xml b/test/testcases/tests/level3/core/documentgetinputencoding04.xml
new file mode 100644
index 0000000..46af623
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetinputencoding04.xml
@@ -0,0 +1,43 @@
+<?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="documentgetinputencoding04">
+<metadata>
+<title>documentgetinputencoding04</title>
+<creator>IBM</creator>
+<description>
+ Call the getInputEncoding method on a cloned UTF-8 encoded document
+ and check if the value returned is UTF-8 or null (implementation dependent).
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-inputEncoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="cloned" type="Document"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="barfoo_utf8" willBeModified="false"/>
+<cloneNode var="cloned" obj="doc" deep="true"/>
+<inputEncoding obj="cloned" var="encodingName" interface="Document"/>
+<assertTrue id="documentgetinputencoding04">
+<or>
+<equals expected='"UTF-8"' actual="encodingName" ignoreCase="true"/>
+<isNull obj="encodingName" />
+</or>
+</assertTrue>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetstricterrorchecking01.xml b/test/testcases/tests/level3/core/documentgetstricterrorchecking01.xml
new file mode 100644
index 0000000..6bd6ebb
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetstricterrorchecking01.xml
@@ -0,0 +1,35 @@
+<?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="documentgetstricterrorchecking01">
+<metadata>
+<title>documentgetstricterrorchecking01</title>
+<creator>IBM</creator>
+<description>
+ Verify if the (default) value of the strictErrorChecking attribute of this document object is true.
+</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#Document3-strictErrorChecking"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="strictErrorCheckingValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<strictErrorChecking var="strictErrorCheckingValue" obj="doc" />
+<assertTrue actual="strictErrorCheckingValue" id="documentgetstricterrorchecking01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetstricterrorchecking02.xml b/test/testcases/tests/level3/core/documentgetstricterrorchecking02.xml
new file mode 100644
index 0000000..0c3ebb9
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetstricterrorchecking02.xml
@@ -0,0 +1,46 @@
+<?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="documentgetstricterrorchecking02">
+<metadata>
+<title>documentgetstricterrorchecking02</title>
+<creator>IBM</creator>
+<description>
+ Verify if the (default)value of the strictErrorChecking attribute of a new Document object is true.
+</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#Document3-strictErrorChecking"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="strictErrorCheckingValue" 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"/>
+<strictErrorChecking var="strictErrorCheckingValue" obj="newDoc" />
+<assertTrue actual="strictErrorCheckingValue" id="documentgetstricterrorchecking02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlencoding01.xml b/test/testcases/tests/level3/core/documentgetxmlencoding01.xml
new file mode 100644
index 0000000..9f2fbe2
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlencoding01.xml
@@ -0,0 +1,36 @@
+<?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="documentgetxmlencoding01">
+<metadata>
+<title>documentgetxmlencoding01</title>
+<creator>IBM</creator>
+<description>
+ Call the getXmlEncoding method on a UTF-8 encoded XML document in which the encoding pseudo
+ attribute in its XMLDecl is UTF-8 and check if the value returned is UTF-8.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-encoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="barfoo_utf8" willBeModified="false"/>
+<xmlEncoding obj="doc" var="encodingName" interface="Document"/>
+<assertEquals expected='"uTf-8"' actual="encodingName" id="documentgetxmlencoding01" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlencoding02.xml b/test/testcases/tests/level3/core/documentgetxmlencoding02.xml
new file mode 100644
index 0000000..3109e4c
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlencoding02.xml
@@ -0,0 +1,47 @@
+<?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="documentgetxmlencoding02">
+<metadata>
+<title>documentgetxmlencoding02</title>
+<creator>IBM</creator>
+<description>
+ Call the getXmlEncoding method on a new document and check if the value returned
+ is null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-encoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="encodingName" type="DOMString"/>
+<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"/>
+<xmlEncoding obj="newDoc" var="encodingName" interface="Document"/>
+<assertNull actual="encodingName" id="documentgetxmlencoding02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlencoding03.xml b/test/testcases/tests/level3/core/documentgetxmlencoding03.xml
new file mode 100644
index 0000000..12485de
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlencoding03.xml
@@ -0,0 +1,36 @@
+<?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="documentgetxmlencoding03">
+<metadata>
+<title>documentgetxmlencoding03</title>
+<creator>IBM</creator>
+<description>
+ Call the getXmlEncoding method on a UTF-16 encoded document and check if the value returned
+ is UTF-16.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-encoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="barfoo_utf16" willBeModified="false"/>
+<xmlEncoding obj="doc" var="encodingName" interface="Document"/>
+<assertEquals expected='"uTf-16"' actual="encodingName" id="documentgetxmlencoding03" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlencoding04.xml b/test/testcases/tests/level3/core/documentgetxmlencoding04.xml
new file mode 100644
index 0000000..1c27c66
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlencoding04.xml
@@ -0,0 +1,36 @@
+<?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="documentgetxmlencoding04">
+<metadata>
+<title>documentgetxmlencoding04</title>
+<creator>IBM</creator>
+<description>
+ Call the getXmlEncoding method on a UTF-8 encoded XML document that does not contain
+ the encoding pseudo attribute in its XMLDecl and check if the value returend is null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-encoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<xmlEncoding obj="doc" var="encodingName" interface="Document"/>
+<assertNull actual="encodingName" id="documentgetxmlencoding04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlencoding05.xml b/test/testcases/tests/level3/core/documentgetxmlencoding05.xml
new file mode 100644
index 0000000..092215a
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlencoding05.xml
@@ -0,0 +1,43 @@
+<?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="documentgetxmlencoding05">
+<metadata>
+<title>documentgetxmlencoding05</title>
+<creator>IBM</creator>
+<description>
+ Call the getXmlEncoding method on a cloned UTF-8 encoded document
+ and check if the value returned is UTF-8 or null (implementation dependent).
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-encoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="cloned" type="Document"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="barfoo_utf8" willBeModified="false"/>
+<cloneNode var="cloned" obj="doc" deep="true"/>
+<xmlEncoding obj="cloned" var="encodingName" interface="Document"/>
+<assertTrue id="documentgetxmlencoding05">
+<or>
+<equals expected='"uTf-8"' actual="encodingName" ignoreCase="false"/>
+<isNull obj="encodingName" />
+</or>
+</assertTrue>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlstandalone01.xml b/test/testcases/tests/level3/core/documentgetxmlstandalone01.xml
new file mode 100644
index 0000000..91be2df
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlstandalone01.xml
@@ -0,0 +1,37 @@
+<?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="documentgetxmlstandalone01">
+<metadata>
+<title>documentgetxmlstandalone01</title>
+<creator>IBM</creator>
+<description>
+ Retreive the xmlStandalone attribute of a document for which standalone was not specified, this
+ should return false since the default for standalone is no when external markup decls
+ are present.
+</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#Document3-standalone"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="standalone" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<xmlStandalone var="standalone" obj="doc" />
+<assertFalse actual="standalone" id="documentgetxmlstandalone01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlstandalone02.xml b/test/testcases/tests/level3/core/documentgetxmlstandalone02.xml
new file mode 100644
index 0000000..ddf287c
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlstandalone02.xml
@@ -0,0 +1,46 @@
+<?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="documentgetxmlstandalone02">
+<metadata>
+<title>documentgetxmlstandalone02</title>
+<creator>IBM</creator>
+<description>
+ The value of the standalone pesudo-attribute for a new Document should be false.
+</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#Document3-standalone"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="standalone" 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="barfoo" 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"/>
+<xmlStandalone var="standalone" obj="newDoc" />
+<assertFalse actual="standalone" id="documentgetxmlstandalone02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlstandalone03.xml b/test/testcases/tests/level3/core/documentgetxmlstandalone03.xml
new file mode 100644
index 0000000..82db96a
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlstandalone03.xml
@@ -0,0 +1,36 @@
+<?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="documentgetxmlstandalone03">
+<metadata>
+<title>documentgetxmlstandalone03</title>
+<creator>IBM</creator>
+<description>
+ The value of the standalone attribute for an XML document with the standalone="no"
+ should be false.
+</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#Document3-standalone"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="standalone" type="boolean"/>
+<load var="doc" href="barfoo_standalone_no" willBeModified="false"/>
+<xmlStandalone var="standalone" obj="doc" />
+<assertFalse actual="standalone" id="documentgetxmlstandalone03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlstandalone04.xml b/test/testcases/tests/level3/core/documentgetxmlstandalone04.xml
new file mode 100644
index 0000000..293f506
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlstandalone04.xml
@@ -0,0 +1,37 @@
+<?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="documentgetxmlstandalone04">
+<metadata>
+<title>documentgetxmlstandalone04</title>
+<creator>IBM</creator>
+<description>
+ Retreive the documentURI of a document for which standalone was specified as "yes", this
+ should return true.
+</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#Document3-standalone"/>
+</metadata>
+<implementationAttribute name="validating" value="false"/>
+<var name="doc" type="Document"/>
+<var name="standalone" type="boolean"/>
+<load var="doc" href="barfoo_standalone_yes" willBeModified="false"/>
+<xmlStandalone var="standalone" obj="doc" />
+<assertTrue actual="standalone" id="documentgetxmlstandalone04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlstandalone05.xml b/test/testcases/tests/level3/core/documentgetxmlstandalone05.xml
new file mode 100644
index 0000000..df13472
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlstandalone05.xml
@@ -0,0 +1,53 @@
+<?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="documentgetxmlstandalone05">
+<metadata>
+<title>documentgetxmlstandalone05</title>
+<creator>IBM</creator>
+<description>
+ Cretae a new DocumentType node whose systemId is StaffNS.DTD. Create a new Document
+ node. Check if the value of the standalone attribute on the new Document is false.
+</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#Document3-standalone"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="newDocType" type="DocumentType"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="standalone" type="boolean"/>
+<var name="nullPubId" type="DOMString" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="docType" type="DocumentType"/>
+<var name="sysId" 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"/>
+<doctype var="docType" obj="doc"/>
+<systemId var="sysId" obj="docType" interface="DocumentType"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="newDocType" obj="domImpl" qualifiedName="rootName" publicId="nullPubId" systemId="sysId"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="newDocType"/>
+<xmlStandalone var="standalone" obj="newDoc" />
+<assertFalse actual="standalone" id="documentgetxmlstandalone05"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlversion01.xml b/test/testcases/tests/level3/core/documentgetxmlversion01.xml
new file mode 100644
index 0000000..93d120a
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlversion01.xml
@@ -0,0 +1,36 @@
+<?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="documentgetxmlversion01">
+<metadata>
+<title>documentgetxmlversion01</title>
+<creator>IBM</creator>
+<description>
+ Check if the value of the version attribute in the XML declaration of this document
+ obtained by parsing staffNS.xml is "1.0".
+</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#Document3-version"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="versionValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<xmlVersion var="versionValue" obj="doc" interface="Document"/>
+<assertEquals actual="versionValue" expected='"1.0"' id="documentgetxmlversion01" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentgetxmlversion02.xml b/test/testcases/tests/level3/core/documentgetxmlversion02.xml
new file mode 100644
index 0000000..384a880
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlversion02.xml
@@ -0,0 +1,48 @@
+<?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="documentgetxmlversion02">
+<metadata>
+<title>documentgetxmlversion02</title>
+<creator>IBM</creator>
+<description>
+ Check if the value of the version attribute in the XML declaration of a new document
+ is "1.0".
+</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#Document3-version"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="versionValue" type="DOMString"/>
+<var name="domImpl" type="DOMImplementation"/>
+<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="barfoo" 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"/>
+<xmlVersion var="versionValue" obj="newDoc" interface="Document"/>
+<assertEquals actual="versionValue" expected='"1.0"' id="documentgetxmlversion02" ignoreCase="true"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentgetxmlversion03.xml b/test/testcases/tests/level3/core/documentgetxmlversion03.xml
new file mode 100644
index 0000000..b520772
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentgetxmlversion03.xml
@@ -0,0 +1,37 @@
+<?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="documentgetxmlversion03">
+<metadata>
+<title>documentgetxmlversion03</title>
+<creator>IBM</creator>
+<description>
+ Check if the value of the version attribute in a XML document without a XMLDecl is
+ is "1.0".
+</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#Document3-version"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="versionValue" type="DOMString"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<xmlVersion var="versionValue" obj="doc" interface="Document"/>
+<assertEquals actual="versionValue" expected='"1.0"' id="documentgetxmlversion03" ignoreCase="true"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument01.xml b/test/testcases/tests/level3/core/documentnormalizedocument01.xml
new file mode 100644
index 0000000..cd62448
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument01.xml
@@ -0,0 +1,51 @@
+<?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="documentnormalizedocument01">
+<metadata>
+<title>documentnormalizedocument01</title>
+<creator>IBM</creator>
+<description>
+ Invoke the normalizeDocument method on this document. Retreive the documentElement node
+ and check the nodeName of this node to make sure it has not changed.
+</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#Document3-normalizeDocument"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="docElemNodeName" type="DOMString"/>
+<var name="origDocElemNodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<nodeName var="origDocElemNodeName" obj="docElem"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<documentElement var="docElem" obj="doc"/>
+<nodeName var="docElemNodeName" obj="docElem"/>
+<assertEquals actual="docElemNodeName" expected='origDocElemNodeName' id="documentnormalizedocument01" ignoreCase="false"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument02.xml b/test/testcases/tests/level3/core/documentnormalizedocument02.xml
new file mode 100644
index 0000000..0e41422
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument02.xml
@@ -0,0 +1,67 @@
+<?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="documentnormalizedocument02">
+<metadata>
+<title>documentnormalizedocument02</title>
+<creator>IBM</creator>
+<description>
+Normalize a document with the 'cdata-sections' parameter set to false and
+check if the CDATASection has been preserved.
+</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#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-cdata-sections"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="coalescing" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elemName" type="Element"/>
+<var name="cdata" type="CDATASection"/>
+<var name="text" type="Text"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elemName" obj="elemList" index="1" interface="NodeList"/>
+<lastChild var="cdata" obj="elemName" interface="Node"/>
+<nodeName var="nodeName" obj="cdata"/>
+<assertEquals actual="nodeName" expected='"#cdata-section"' id="documentnormalizedocument02" ignoreCase="false"/>
+<domConfig interface="Document" obj="doc" var="domConfig"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="normalizationError"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elemName" obj="elemList" index="1" interface="NodeList"/>
+<lastChild var="cdata" obj="elemName" interface="Node"/>
+<nodeName var="nodeName" obj="cdata"/>
+<assertEquals actual="nodeName" expected='"#cdata-section"' id="documentnormalizedocument02_true" ignoreCase="false"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="false"/>
+<normalizeDocument obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="normalization2Error"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elemName" obj="elemList" index="1" interface="NodeList"/>
+<lastChild var="text" obj="elemName" interface="Node"/>
+<nodeName var="nodeName" obj="text"/>
+<assertEquals actual="nodeName" expected='"#text"' id="documentnormalizedocument02_false" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument03.xml b/test/testcases/tests/level3/core/documentnormalizedocument03.xml
new file mode 100644
index 0000000..e7199a9
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument03.xml
@@ -0,0 +1,72 @@
+<?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="documentnormalizedocument03">
+<metadata>
+<title>documentnormalizedocument03</title>
+<creator>IBM</creator>
+<description>
+Normalize a document with a created CDATA section with the
+'cdata-sections' parameter set to true then to false and check if
+the CDATASection has been preserved and then coalesced.
+</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#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=416"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-cdata-sections"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="newCdata" type="CDATASection"/>
+<var name="cdata" type="CDATASection"/>
+<var name="text" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="pList" type="NodeList"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<createCDATASection var="newCdata" obj="doc" data='"CDATA"'/>
+<appendChild obj="elem" var="appendedChild" newChild="newCdata"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="normalizationError"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<lastChild var="cdata" obj="elem" interface="Node"/>
+<nodeName var="nodeName" obj="cdata"/>
+<assertEquals actual="nodeName" expected='"#cdata-section"' id="documentnormalizedocument03_true" ignoreCase="false"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="false"/>
+<normalizeDocument obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="normalization2Error"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<lastChild var="text" obj="elem" interface="Node"/>
+<nodeName var="nodeName" obj="text"/>
+<assertEquals actual="nodeName" expected='"#text"' id="documentnormalizedocument03_false" ignoreCase="false"/>
+<nodeValue var="nodeValue" obj="text"/>
+<assertEquals actual="nodeValue" expected='"barCDATA"' id="normalizedValue" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument04.xml b/test/testcases/tests/level3/core/documentnormalizedocument04.xml
new file mode 100644
index 0000000..2dd69f9
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument04.xml
@@ -0,0 +1,67 @@
+<?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="documentnormalizedocument04">
+<metadata>
+<title>documentnormalizedocument04</title>
+<creator>IBM</creator>
+<description>
+ Append a Comment node and normalize with "comments" set to false.
+</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#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=416"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-comments"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="newComment" type="Comment"/>
+<var name="lastChild" type="Node"/>
+<var name="text" type="Text"/>
+<var name="nodeName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<createComment var="newComment" obj="doc" data='"COMMENT_NODE"'/>
+<appendChild obj="elem" var="appendedChild" newChild="newComment"/>
+<domConfig interface="Document" obj="doc" var="domConfig" />
+<setParameter obj="domConfig" name='"comments"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="normalizationError"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<lastChild var="lastChild" obj="elem" interface="Node"/>
+<nodeName var="nodeName" obj="lastChild"/>
+<assertEquals actual="nodeName" expected='"#comment"' id="documentnormalizedocument04_true" ignoreCase="false"/>
+<setParameter obj="domConfig" name='"comments"' value="false"/>
+<normalizeDocument obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="normalization2Error"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<lastChild var="lastChild" obj="elem" interface="Node"/>
+<nodeName var="nodeName" obj="lastChild"/>
+<assertEquals actual="nodeName" expected='"#text"' id="hasChildText" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument05.xml b/test/testcases/tests/level3/core/documentnormalizedocument05.xml
new file mode 100644
index 0000000..8f67f68
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument05.xml
@@ -0,0 +1,103 @@
+<?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="documentnormalizedocument05">
+<metadata>
+<title>documentnormalizedocument05</title>
+<creator>Curt Arnold</creator>
+<description>
+Add a L1 element to a L2 namespace aware document and perform namespace normalization. Should result
+in an error.
+</description>
+<date qualifier="created">2004-01-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/namespaces-algorithms#normalizeDocumentAlgo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespaces"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="pList" type="NodeList"/>
+<var name="newChild" type="Element"/>
+<var name="retval" type="Element"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<var name="problemNode" type="Node"/>
+<var name="location" type="DOMLocator"/>
+<var name="lineNumber" type="int"/>
+<var name="columnNumber" type="int"/>
+<var name="byteOffset" type="int"/>
+<var name="utf16Offset" type="int"/>
+<var name="uri" type="DOMString"/>
+<var name="type" type="DOMString"/>
+<var name="message" type="DOMString"/>
+<var name="relatedException" type="DOMObject"/>
+<var name="relatedData" type="DOMObject"/>
+<var name="length" type="int"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<createElement var="newChild" obj="doc" tagName='"br"'/>
+<appendChild var="retval" obj="elem" newChild="newChild"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"namespaces"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <if>
+ <equals actual="severity" expected="2" ignoreCase="false"/>
+ <!-- location should have relatedNode, everything else should be -1 or null -->
+ <location var="location" obj="error"/>
+ <relatedNode var="problemNode" obj="location" interface="DOMLocator"/>
+ <assertSame actual="problemNode" expected="newChild" id="relatedNodeIsL1Node"/>
+ <lineNumber var="lineNumber" obj="location"/>
+ <assertEquals actual="lineNumber" expected="-1" ignoreCase="false" id="lineNumber"/>
+ <columnNumber var="columnNumber" obj="location"/>
+ <assertEquals actual="columnNumber" expected="-1" ignoreCase="false" id="columnNumber"/>
+ <byteOffset var="byteOffset" obj="location"/>
+ <assertEquals actual="byteOffset" expected="-1" ignoreCase="false" id="byteOffset"/>
+ <utf16Offset var="utf16Offset" obj="location"/>
+ <assertEquals actual="utf16Offset" expected="-1" ignoreCase="false" id="utf16Offset"/>
+ <uri var="uri" obj="location" interface="DOMLocator"/>
+ <assertNull actual="uri" id="uri"/>
+ <!-- message and type should be non-empty -->
+ <message var="message" obj="error"/>
+ <length var="length" obj="message" interface="DOMString"/>
+ <assertTrue id="messageNotEmpty">
+ <greater actual="length" expected="0"/>
+ </assertTrue>
+ <!-- can't make any assertions about type, relatedData and relatedException
+ other than access should not raise exception -->
+ <type var="type" obj="error" interface="DOMError"/>
+ <relatedData var="relatedData" obj="error"/>
+ <relatedException var="relatedException" obj="error"/>
+ <increment var="errorCount" value="1"/>
+ <else>
+ <assertEquals actual="severity" expected="1" ignoreCase="false" id="anyOthersShouldBeWarnings"/>
+ </else>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneError"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument06.xml b/test/testcases/tests/level3/core/documentnormalizedocument06.xml
new file mode 100644
index 0000000..b527b5d
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument06.xml
@@ -0,0 +1,136 @@
+<?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="documentnormalizedocument06">
+<metadata>
+<title>documentnormalizedocument06</title>
+<creator>Curt Arnold</creator>
+<description>
+Add a CDATASection containing "]]&gt;" perform normalization with split-cdata-sections=true. Should result
+in an warning.
+</description>
+<date qualifier="created">2004-01-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-split-cdata-sections"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-severity"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-message"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-type"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-relatedException"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-relatedData"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-location"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-line-number"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-column-number"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-byteOffset"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-utf16Offset"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-node"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-uri"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=542"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="elemList" type="NodeList"/>
+<var name="newChild" type="CDATASection"/>
+<var name="oldChild" type="Node"/>
+<var name="retval" type="Node"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="splittedCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<var name="problemNode" type="Node"/>
+<var name="location" type="DOMLocator"/>
+<var name="lineNumber" type="int"/>
+<var name="columnNumber" type="int"/>
+<var name="byteOffset" type="int"/>
+<var name="utf16Offset" type="int"/>
+<var name="uri" type="DOMString"/>
+<var name="type" type="DOMString"/>
+<var name="message" type="DOMString"/>
+<var name="relatedException" type="DOMObject"/>
+<var name="relatedData" type="DOMObject"/>
+<var name="length" type="int"/>
+<var name="nodeType" type="int"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<createCDATASection var="newChild" obj="doc" data='"this is not ]]&gt; good"'/>
+<firstChild var="oldChild" obj="elem" interface="Node"/>
+<replaceChild var="retval" obj="elem" newChild="newChild" oldChild="oldChild"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"split-cdata-sections"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<firstChild var="newChild" obj="elem" interface="Node"/>
+<!-- the first child should not be a CDATASection containing a ]]> -->
+<nodeValue var="nodeValue" obj="newChild"/>
+<nodeType var="nodeType" obj="newChild"/>
+<assertFalse id="wasSplit">
+ <and>
+ <equals actual="nodeType" expected="4" ignoreCase="false"/>
+ <contains obj="nodeValue" str='"]]>"' interface="DOMString"/>
+ </and>
+</assertFalse>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <type var="type" obj="error" interface="DOMError"/>
+ <severity var="severity" obj="error"/>
+ <if>
+ <equals actual="type" expected='"cdata-sections-splitted"' ignoreCase="false"/>
+ <!-- related data is first split node -->
+ <relatedData var="relatedData" obj="error"/>
+ <assertSame actual="relatedData" expected="newChild" id="relatedData"/>
+
+ <!-- severity is warning -->
+ <assertEquals actual="severity" expected="1" ignoreCase="false" id="severity"/>
+
+ <!-- message should be non-empty -->
+ <message var="message" obj="error"/>
+ <length var="length" obj="message" interface="DOMString"/>
+ <assertTrue id="messageNotEmpty">
+ <greater actual="length" expected="0"/>
+ </assertTrue>
+
+ <!-- can't make any assertions about relatedException
+ other than access should not raise exception -->
+ <relatedException var="relatedException" obj="error"/>
+
+ <!-- location should have relatedNode-->
+ <location var="location" obj="error"/>
+ <relatedNode var="problemNode" obj="location" interface="DOMLocator"/>
+ <assertSame actual="problemNode" expected="newChild" id="relatedNode"/>
+
+ <!--
+ can't make assertions about these values
+ -->
+ <lineNumber var="lineNumber" obj="location"/>
+ <columnNumber var="columnNumber" obj="location"/>
+ <byteOffset var="byteOffset" obj="location"/>
+ <utf16Offset var="utf16Offset" obj="location"/>
+ <uri var="uri" obj="location" interface="DOMLocator"/>
+ <increment var="splittedCount" value="1"/>
+ <else>
+ <assertEquals actual="severity" expected="1" ignoreCase="false" id="anyOthersShouldBeWarnings"/>
+ </else>
+ </if>
+</for-each>
+<assertEquals actual="splittedCount" expected="1" ignoreCase="false" id="oneSplittedWarning"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument07.xml b/test/testcases/tests/level3/core/documentnormalizedocument07.xml
new file mode 100644
index 0000000..98562de
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument07.xml
@@ -0,0 +1,116 @@
+<?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="documentnormalizedocument07">
+<metadata>
+<title>documentnormalizedocument07</title>
+<creator>Curt Arnold</creator>
+<description>
+Add a CDATASection containing "]]&gt;" and perform normalization with split-cdata-sections=false. Should result
+in an error.
+</description>
+<date qualifier="created">2004-01-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-split-cdata-sections"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-severity"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-message"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-type"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-relatedException"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-relatedData"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ERROR-DOMError-location"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-line-number"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-column-number"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-byteOffset"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-utf16Offset"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-node"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMLocator-uri"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=542"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="elemList" type="NodeList"/>
+<var name="newChild" type="CDATASection"/>
+<var name="oldChild" type="Node"/>
+<var name="retval" type="Node"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<var name="problemNode" type="Node"/>
+<var name="location" type="DOMLocator"/>
+<var name="lineNumber" type="int"/>
+<var name="columnNumber" type="int"/>
+<var name="byteOffset" type="int"/>
+<var name="utf16Offset" type="int"/>
+<var name="uri" type="DOMString"/>
+<var name="type" type="DOMString"/>
+<var name="message" type="DOMString"/>
+<var name="relatedException" type="DOMObject"/>
+<var name="relatedData" type="DOMObject"/>
+<var name="length" type="int"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<firstChild var="oldChild" obj="elem" interface="Node"/>
+<createCDATASection var="newChild" obj="doc" data='"this is not ]]&gt; good"'/>
+<replaceChild var="retval" obj="elem" newChild="newChild" oldChild="oldChild"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"split-cdata-sections"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <if>
+ <equals actual="severity" expected='2' ignoreCase="false"/>
+ <!-- location should have relatedNode -->
+ <location var="location" obj="error"/>
+ <relatedNode var="problemNode" obj="location" interface="DOMLocator"/>
+ <assertSame actual="problemNode" expected="newChild" id="relatedNode"/>
+
+ <!--
+ can't make assertions about these values
+ -->
+ <lineNumber var="lineNumber" obj="location"/>
+ <columnNumber var="columnNumber" obj="location"/>
+ <byteOffset var="byteOffset" obj="location"/>
+ <utf16Offset var="utf16Offset" obj="location"/>
+ <uri var="uri" obj="location" interface="DOMLocator"/>
+
+ <!-- message should be non-empty -->
+ <message var="message" obj="error"/>
+ <length var="length" obj="message" interface="DOMString"/>
+ <assertTrue id="messageNotEmpty">
+ <greater actual="length" expected="0"/>
+ </assertTrue>
+ <!-- can't make any assertions about type or relatedData
+ other than access should not raise exception -->
+ <type var="type" obj="error" interface="DOMError"/>
+ <relatedData var="relatedData" obj="error"/>
+ <relatedException var="relatedException" obj="error"/>
+ <increment var="errorCount" value="1"/>
+ <else>
+ <assertEquals actual="severity" expected="1" ignoreCase="false" id="anyOthersShouldBeWarnings"/>
+ </else>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneError"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument08.xml b/test/testcases/tests/level3/core/documentnormalizedocument08.xml
new file mode 100644
index 0000000..0802c3a
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument08.xml
@@ -0,0 +1,78 @@
+<?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="documentnormalizedocument08">
+<metadata>
+<title>documentnormalizedocument08</title>
+<creator>Curt Arnold</creator>
+<description>
+Add two CDATASections containing "]]&gt;" perform normalization with split-cdata-sections=true.
+Should result in two warnings and at least 4 nodes.
+</description>
+<date qualifier="created">2004-01-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-split-cdata-sections"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="elemList" type="NodeList"/>
+<var name="newChild" type="CDATASection"/>
+<var name="oldChild" type="Node"/>
+<var name="retval" type="Node"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="length" type="int"/>
+<var name="childNodes" type="NodeList"/>
+<var name="type" type="DOMString"/>
+<var name="splittedCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<createCDATASection var="newChild" obj="doc" data='"this is not ]]&gt; good"'/>
+<firstChild var="oldChild" obj="elem" interface="Node"/>
+<replaceChild var="retval" obj="elem" newChild="newChild" oldChild="oldChild"/>
+<createCDATASection var="newChild" obj="doc" data='"this is not ]]&gt; good"'/>
+<appendChild var="retval" obj="elem" newChild="newChild"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"split-cdata-sections"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <type var="type" obj="error" interface="DOMError"/>
+ <severity var="severity" obj="error"/>
+ <if>
+ <equals actual="type" expected='"cdata-sections-splitted"' ignoreCase="false"/>
+ <increment var="splittedCount" value="1"/>
+ <else>
+ <assertEquals actual="severity" expected="1" ignoreCase="false" id="anyOthersShouldBeWarnings"/>
+ </else>
+ </if>
+</for-each>
+<assertEquals actual="splittedCount" expected="2" ignoreCase="false" id="twoSplittedWarning"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<childNodes var="childNodes" obj="elem"/>
+<length var="length" obj="childNodes" interface="NodeList"/>
+<assertTrue id="atLeast4ChildNodes"><greater actual="length" expected="3"/></assertTrue>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument09.xml b/test/testcases/tests/level3/core/documentnormalizedocument09.xml
new file mode 100644
index 0000000..03e740f
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument09.xml
@@ -0,0 +1,70 @@
+<?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="documentnormalizedocument09">
+<metadata>
+<title>documentnormalizedocument09</title>
+<creator>IBM</creator>
+<description>
+ The normalizeDocument method method acts as if the document was going through a save
+ and load cycle, putting the document in a "normal" form.
+
+ Set the validate-if-schema feature to true. Invoke the normalizeDocument method on this
+ document. Retreive the documentElement node and check the nodeName of this node
+ to make sure it has not changed. Now set validate to false and verify the same.
+ Register an error handler on this Document and in each case make sure that it does
+ not get called.
+</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#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate-if-schema"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="docElemNodeName" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="errorHandler" type="DOMErrorHandler"/>
+<var name="errHandler" type="DOMErrorHandler">
+ <handleError>
+ <assertFalse actual="true" id="documentnormalizedocument09_Err"/>
+ <return value="true"/>
+ </handleError>
+</var>
+<var name="domConfig" type="DOMConfiguration"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errHandler"/>
+<canSetParameter var="canSet" obj="domConfig" name='"validate-if-schema"' value="true"/>
+<if>
+<isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"validate-if-schema"' value="true"/>
+<normalizeDocument obj="doc"/>
+<documentElement var="docElem" obj="doc"/>
+<nodeName var="docElemNodeName" obj="docElem"/>
+<assertEquals actual="docElemNodeName" expected='"html"' id="documentnormalizedocument09_True" ignoreCase="false"/>
+</if>
+<setParameter obj="domConfig" name='"validate-if-schema"' value="false"/>
+<normalizeDocument obj="doc"/>
+<documentElement var="docElem" obj="doc"/>
+<nodeName var="docElemNodeName" obj="docElem"/>
+<assertEquals actual="docElemNodeName" expected='"html"' id="documentnormalizedocument09_False" ignoreCase="false"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument10.xml b/test/testcases/tests/level3/core/documentnormalizedocument10.xml
new file mode 100644
index 0000000..f5186f5
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument10.xml
@@ -0,0 +1,75 @@
+<?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="documentnormalizedocument10">
+<metadata>
+<title>documentnormalizedocument10</title>
+<creator>IBM</creator>
+<description>
+ The normalizeDocument method method acts as if the document was going through a save
+ and load cycle, putting the document in a "normal" form.
+
+ Create an Element and a text node and verify the nodeValue of this text node and append these to
+ this Document. If supported, invoke the setParameter method on this domconfiguration object to set the
+ "element-content-whitespace" feature to false. Invoke the normalizeDocument method and verify if
+ the text node has been discarded.
+</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#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-element-content-whitespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="newText" type="Text"/>
+<var name="text" type="Text"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="appendedChild" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElement var="elem" obj="doc" tagName='"newElem"'/>
+<createTextNode var="newText" obj="doc" data='"Text
+ Node"'/>
+<appendChild obj="elem" var="appendedChild" newChild="newText"/>
+<appendChild obj="doc" var="appendedChild" newChild="elem"/>
+<firstChild var="text" obj="elem" interface="Node"/>
+<nodeValue var="nodeValue" obj="text"/>
+<assertEquals actual="nodeValue" expected='"Text
+ Node"' id="documentnormalizedocument10" ignoreCase="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"element-content-whitespace"' value="true"/>
+<assertTrue actual="canSet" id="canSetElementContentWhitespaceTrue"/>
+<setParameter obj="domConfig" name='"element-content-whitespace"' value="true"/>
+<normalizeDocument obj="doc"/>
+<firstChild var="text" obj="elem" interface="Node"/>
+<nodeValue var="nodeValue" obj="text"/>
+<assertEquals actual="nodeValue" expected='"Text
+ Node"' id="documentnormalizedocument10_true1" ignoreCase="false"/>
+<canSetParameter var="canSet" obj="domConfig" name='"element-content-whitespace"' value="false"/>
+<if>
+<isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"element-content-whitespace"' value="false"/>
+<normalizeDocument obj="doc"/>
+<firstChild var="text" obj="elem" interface="Node"/>
+<nodeValue var="nodeValue" obj="text"/>
+<assertEquals actual="nodeValue" expected='"Text Node"' id="documentnormalizedocument10_true2" ignoreCase="false"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument11.xml b/test/testcases/tests/level3/core/documentnormalizedocument11.xml
new file mode 100644
index 0000000..3e9aec9
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument11.xml
@@ -0,0 +1,65 @@
+<?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="documentnormalizedocument11">
+<metadata>
+<title>documentnormalizedocument11</title>
+<creator>IBM</creator>
+<description>
+ The normalizeDocument method method acts as if the document was going through a save
+ and load cycle, putting the document in a "normal" form.
+ The feature namespace-declarations when set to false, discards all namespace declaration attributes,
+ although namespace prefixes are still retained.
+
+ Set the normalization feature "namespace-declarations" to false, invoke normalizeDocument and verify
+ the nodeName of element acquired by tagname.
+</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#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespace-declarations"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="ignoringElementContentWhitespace" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elemName" type="Element"/>
+<var name="nodeName" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"namespace-declarations"' value="true"/>
+<normalizeDocument obj="doc"/>
+<getElementsByTagNameNS var="elemList" obj="doc" namespaceURI='"*"' localName='"acronym"' interface="Document"/>
+<item var="elemName" obj="elemList" index="1" interface="NodeList"/>
+<assertNotNull actual="elemName" id="documentnormalizedocument11_NotNullElem"/>
+<canSetParameter var="canSet" obj="domConfig" name='"namespace-declarations"' value="false"/>
+
+<if>
+<isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"namespace-declarations"' value="false"/>
+<normalizeDocument obj="doc"/>
+<getElementsByTagNameNS var="elemList" obj="doc" namespaceURI='"*"' localName='"acronym"' interface="Document"/>
+<item var="elemName" obj="elemList" index="1" interface="NodeList"/>
+<nodeName var="nodeName" obj="elemName"/>
+<assertEquals actual="nodeName" expected='"address"' id="documentnormalizedocument11_namespaceDeclarations" ignoreCase="false"/>
+</if>
+
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument12.xml b/test/testcases/tests/level3/core/documentnormalizedocument12.xml
new file mode 100644
index 0000000..0d5db65
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument12.xml
@@ -0,0 +1,72 @@
+<?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="documentnormalizedocument12">
+<metadata>
+<title>documentnormalizedocument12</title>
+<creator>IBM</creator>
+<description>
+ The normalizeDocument method method acts as if the document was going through a save
+ and load cycle, putting the document in a "normal" form.
+
+ Set the validate feature to true. Invoke the normalizeDocument method on this
+ document. Retreive the documentElement node and check the nodeName of this node
+ to make sure it has not changed. Now set validate to false and verify the same.
+ Register an error handler on this Document and in each case make sure that it does
+ not get called.
+</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#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="docElemNodeName" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorHandler" type="DOMErrorHandler"/>
+<var name="errHandler" type="DOMErrorHandler">
+ <handleError>
+ <assertFalse actual="true" id="documentnormalizedocument08_Err"/>
+ <return value="true"/>
+ </handleError>
+</var>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errHandler"/>
+<canSetParameter var="canSet" obj="domConfig" name='"validate"' value="true"/>
+<if>
+<isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"validate"' value="true"/>
+<normalizeDocument obj="doc"/>
+<documentElement var="docElem" obj="doc"/>
+<nodeName var="docElemNodeName" obj="docElem"/>
+<assertEquals actual="docElemNodeName" expected='"html"' id="documentnormalizedocument08_True" ignoreCase="false"/>
+</if>
+<setParameter obj="domConfig" name='"validate"' value="false"/>
+<normalizeDocument obj="doc"/>
+<documentElement var="docElem" obj="doc"/>
+<nodeName var="docElemNodeName" obj="docElem"/>
+<assertEquals actual="docElemNodeName" expected='"html"' id="documentnormalizedocument08_False" ignoreCase="false"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/documentnormalizedocument13.xml b/test/testcases/tests/level3/core/documentnormalizedocument13.xml
new file mode 100644
index 0000000..51d52e1
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentnormalizedocument13.xml
@@ -0,0 +1,103 @@
+<?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="documentnormalizedocument13">
+<metadata>
+<title>documentnormalizedocument13</title>
+<creator>Curt Arnold</creator>
+<description>
+Add a L1 attribute to a L2 namespace aware document and perform namespace normalization. Should result
+in an error.
+</description>
+<date qualifier="created">2004-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/namespaces-algorithms#normalizeDocumentAlgo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespaces"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="pList" type="NodeList"/>
+<var name="newAttr" type="Attr"/>
+<var name="retval" type="Element"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<var name="problemNode" type="Node"/>
+<var name="location" type="DOMLocator"/>
+<var name="lineNumber" type="int"/>
+<var name="columnNumber" type="int"/>
+<var name="byteOffset" type="int"/>
+<var name="utf16Offset" type="int"/>
+<var name="uri" type="DOMString"/>
+<var name="type" type="DOMString"/>
+<var name="message" type="DOMString"/>
+<var name="relatedException" type="DOMObject"/>
+<var name="relatedData" type="DOMObject"/>
+<var name="length" type="int"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<setAttribute obj="elem" name='"title"' value='"DOM L1 Attribute"'/>
+<getAttributeNode var="newAttr" obj="elem" name='"title"'/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"namespaces"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <if>
+ <equals actual="severity" expected="2" ignoreCase="false"/>
+ <!-- location should have relatedNode, everything else should be -1 or null -->
+ <location var="location" obj="error"/>
+ <relatedNode var="problemNode" obj="location" interface="DOMLocator"/>
+ <assertSame actual="problemNode" expected="newAttr" id="relatedNodeIsL1Node"/>
+ <lineNumber var="lineNumber" obj="location"/>
+ <assertEquals actual="lineNumber" expected="-1" ignoreCase="false" id="lineNumber"/>
+ <columnNumber var="columnNumber" obj="location"/>
+ <assertEquals actual="columnNumber" expected="-1" ignoreCase="false" id="columnNumber"/>
+ <byteOffset var="byteOffset" obj="location"/>
+ <assertEquals actual="byteOffset" expected="-1" ignoreCase="false" id="byteOffset"/>
+ <utf16Offset var="utf16Offset" obj="location"/>
+ <assertEquals actual="utf16Offset" expected="-1" ignoreCase="false" id="utf16Offset"/>
+ <uri var="uri" obj="location" interface="DOMLocator"/>
+ <assertNull actual="uri" id="uri"/>
+ <!-- message and type should be non-empty -->
+ <message var="message" obj="error"/>
+ <length var="length" obj="message" interface="DOMString"/>
+ <assertTrue id="messageNotEmpty">
+ <greater actual="length" expected="0"/>
+ </assertTrue>
+ <!-- can't make any assertions about type, relatedData and relatedException
+ other than access should not raise exception -->
+ <type var="type" obj="error" interface="DOMError"/>
+ <relatedData var="relatedData" obj="error"/>
+ <relatedException var="relatedException" obj="error"/>
+ <increment var="errorCount" value="1"/>
+ <else>
+ <assertEquals actual="severity" expected="1" ignoreCase="false" id="anyOthersShouldBeWarnings"/>
+ </else>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneError"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentrenamenode01.xml b/test/testcases/tests/level3/core/documentrenamenode01.xml
new file mode 100644
index 0000000..0954aae
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode01.xml
@@ -0,0 +1,53 @@
+<?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="documentrenamenode01">
+<metadata>
+<title>documentrenamenode01</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to rename the class attribute node of the
+ second element whose localName is acronym and namespaceURI http://www.nist.gov
+ with the new namespaceURI as http://www.w3.org/DOM/Test and name as pre0fix:renamedNode.
+ Check if this attribute has been renamed successfully by verifying the
+ nodeName, namespaceURI, nodeType attributes of the renamed node.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="renamedclass" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="element" obj="childList" index="1" interface="NodeList"/>
+<getAttributeNode var="attr" obj="element" name='"class"'/>
+<renameNode var="renamedclass" obj="doc" n="attr" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"renamedNode"'/>
+<nodeName var="nodeName" obj="renamedclass"/>
+<namespaceURI var="namespaceURI" obj="renamedclass" interface="Node"/>
+<nodeType var="nodeType" obj="renamedclass"/>
+<assertEquals expected='"renamedNode"' actual="nodeName" id="documentrenameode01_nodeName" ignoreCase="false"/>
+<assertEquals expected="2" actual="nodeType" id="documentrenameNode01_nodeType" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/DOM/Test"' actual="namespaceURI" id="documentrenamenode01_nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode02.xml b/test/testcases/tests/level3/core/documentrenamenode02.xml
new file mode 100644
index 0000000..9cb60d4
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode02.xml
@@ -0,0 +1,52 @@
+<?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="documentrenamenode02">
+<metadata>
+<title>documentrenamenode02</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to rename the class attribute node of the
+ second element whose localName is acronym and namespaceURI http://www.nist.gov
+ with the new namespaceURI as http://www.w3.org/DOM/Test and name as prefi0x:renamedNode.
+ Check if this attribute has been renamed successfully by verifying the
+ nodeName, namespaceURI, nodeType attributes of the renamed node.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="renamedclass" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="element" obj="childList" index="1" interface="NodeList"/>
+<getAttributeNode var="attr" obj="element" name='"class"'/>
+<renameNode var="renamedclass" obj="doc" n="attr" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"prefi0x:renamedNode"'/>
+<nodeName var="nodeName" obj="renamedclass"/>
+<namespaceURI var="namespaceURI" obj="renamedclass" interface="Node"/>
+<nodeType var="nodeType" obj="renamedclass"/>
+<assertEquals expected='"prefi0x:renamedNode"' actual="nodeName" id="documentrenamenode02_nodeName" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/DOM/Test"' actual="namespaceURI" id="documentrenamenode02_namespaceURI" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode03.xml b/test/testcases/tests/level3/core/documentrenamenode03.xml
new file mode 100644
index 0000000..6464c04
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode03.xml
@@ -0,0 +1,46 @@
+<?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="documentrenamenode03">
+<metadata>
+<title>documentrenamenode03</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to rename a new attribute node to one whose
+ namespaceURI is http://www.w3.org/DOM/Test and name is pre0:fix1.
+ Check if this attribute has been renamed successfully by verifying the
+ nodeName, namespaceURI, nodeType attributes of the renamed node.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attr" type="Attr"/>
+<var name="renamedNode" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI="nullNSURI" qualifiedName='"test"'/>
+<renameNode var="renamedNode" obj="doc" n="attr" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"pre0:fix1"'/>
+<nodeName var="nodeName" obj="renamedNode"/>
+<namespaceURI var="namespaceURI" obj="renamedNode" interface="Node"/>
+<assertEquals expected='"pre0:fix1"' actual="nodeName" id="documentrenamenode03_nodeName" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/DOM/Test"' actual="namespaceURI" id="documentrenamenode02_namespaceURI" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode04.xml b/test/testcases/tests/level3/core/documentrenamenode04.xml
new file mode 100644
index 0000000..bb43fd7
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode04.xml
@@ -0,0 +1,45 @@
+<?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="documentrenamenode04">
+<metadata>
+<title>documentrenamenode04</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to rename a new attribute node to one whose
+ namespaceURI is null and name is pf.
+ Check if this attribute has been renamed successfully by verifying the
+ nodeName, namespaceURI, nodeType attributes of the renamed node.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attr" type="Attr"/>
+<var name="renamedNode" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<renameNode var="renamedNode" obj="doc" n="attr" namespaceURI='""' qualifiedName='"title"'/>
+<nodeName var="nodeName" obj="renamedNode"/>
+<namespaceURI var="namespaceURI" obj="renamedNode" interface="Node"/>
+<assertEquals expected='"title"' actual="nodeName" id="documentrenamenode04_nodeName" ignoreCase="false"/>
+<assertNull actual="namespaceURI" id="documentrenamenode04_namespaceURI"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode05.xml b/test/testcases/tests/level3/core/documentrenamenode05.xml
new file mode 100644
index 0000000..66e3df7
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode05.xml
@@ -0,0 +1,46 @@
+<?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="documentrenamenode05">
+<metadata>
+<title>documentrenamenode05</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to rename a new attribute node to one whose
+ namespaceURI is null and name is rened.
+ Check if this attribute has been renamed successfully by verifying the
+ nodeName, namespaceURI, nodeType attributes of the renamed node.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attr" type="Attr"/>
+<var name="renamedNode" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<renameNode var="renamedNode" obj="doc" n="attr" namespaceURI="nullNSURI" qualifiedName='"title"'/>
+<nodeName var="nodeName" obj="renamedNode"/>
+<namespaceURI var="namespaceURI" obj="renamedNode" interface="Node"/>
+<assertNull actual="namespaceURI" id="documentrenamenode05_namespaceURI"/>
+<assertEquals expected='"title"' actual="nodeName" id="documentrenamenode05_nodeName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode06.xml b/test/testcases/tests/level3/core/documentrenamenode06.xml
new file mode 100644
index 0000000..b689049
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode06.xml
@@ -0,0 +1,51 @@
+<?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="documentrenamenode06">
+<metadata>
+<title>documentrenamenode06</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to rename the default attribute "dir" to xsi:schemaLocation.
+ Check if this attribute has been renamed successfully by verifying the
+ nodeName, namespaceURI, nodeType attributes of the renamed node.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="renamedclass" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="element" obj="childList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="element" name='"dir"'/>
+<renameNode var="renamedclass" obj="doc" n="attr" namespaceURI='"http://www.w3.org/2001/XMLSchema-instance"' qualifiedName='"xsi:schemaLocation"'/>
+<nodeName var="nodeName" obj="renamedclass"/>
+<namespaceURI var="namespaceURI" obj="renamedclass" interface="Node"/>
+<nodeType var="nodeType" obj="renamedclass"/>
+<assertEquals expected='"xsi:schemaLocation"' actual="nodeName" id="documentrenameode01_nodeName" ignoreCase="false"/>
+<assertEquals expected="2" actual="nodeType" id="documentrenameNode01_nodeType" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/2001/XMLSchema-instance"' actual="namespaceURI" id="documentrenamenode01_nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode07.xml b/test/testcases/tests/level3/core/documentrenamenode07.xml
new file mode 100644
index 0000000..642a568
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode07.xml
@@ -0,0 +1,56 @@
+<?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="documentrenamenode07">
+<metadata>
+<title>documentrenamenode07</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method on a new document node to rename a new attribute node
+ to one whose namespaceURI is http://www.w3.org/XML/1998/namespace and name is xml:dom.
+ Check if this attribute has been renamed successfully by verifying the
+ nodeName and namespaceURI attributes of the renamed node.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="attr" type="Attr"/>
+<var name="renamedNode" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="namespaceURI" type="DOMString"/>
+<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="true"/>
+<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"/>
+<createAttributeNS var="attr" obj="newDoc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<renameNode var="renamedNode" obj="newDoc" n="attr" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:dom"'/>
+<nodeName var="nodeName" obj="renamedNode"/>
+<namespaceURI var="namespaceURI" obj="renamedNode" interface="Node"/>
+<assertEquals expected='"xml:dom"' actual="nodeName" id="documentrenamenode07_nodeName" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/XML/1998/namespace"' actual="namespaceURI" id="documentrenamenode07_namespaceURI" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode08.xml b/test/testcases/tests/level3/core/documentrenamenode08.xml
new file mode 100644
index 0000000..ca74f44
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode08.xml
@@ -0,0 +1,57 @@
+<?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="documentrenamenode08">
+<metadata>
+<title>documentrenamenode08</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method on a new document node and try to rename the default
+ attribute "dir"
+ Check if a WRONG_DOCUMENT_ERR gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="element" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="renamedNode" type="Node"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="docElemNS" type="DOMString"/>
+<var name="docElemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="element" obj="childList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="element" name='"dir"'/>
+<implementation var="domImpl" obj="doc"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="docElemNS" obj="docElem" interface="Node"/>
+<tagName var="docElemName" obj="docElem"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='docElemNS' qualifiedName='docElemName' doctype="nullDocType"/>
+<assertDOMException id="documentrenamenode08_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<renameNode var="renamedNode" obj="newDoc" n="attr" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode09.xml b/test/testcases/tests/level3/core/documentrenamenode09.xml
new file mode 100644
index 0000000..fcf2240
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode09.xml
@@ -0,0 +1,54 @@
+<?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="documentrenamenode09">
+<metadata>
+<title>documentrenamenode09</title>
+<creator>IBM</creator>
+<description>
+ The method renameNode renames an existing node. When the specified node was created
+ from a different document than this document, a WRONG_DOCUMENT_ERR exception is thrown.
+
+ Invoke the renameNode method on a new Document node to rename a new attribute node
+ created in the original Document, but later adopted by this new document node. The
+ ownerDocument attribute of this attribute has now changed, such that the attribute node is considered to
+ be created from this new document node. Verify that no exception is thrown upon renaming and verify
+ the new nodeName of this attribute node.
+</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#Document3-renameNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="attr" type="Attr"/>
+<var name="renamedNode" type="Node"/>
+<var name="adopted" type="Node"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="attrNodeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom:newD"' doctype="nullDocType"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"test"'/>
+<adoptNode obj="newDoc" var="adopted" source="attr"/>
+<renameNode var="renamedNode" obj="newDoc" n="attr" namespaceURI='"http://www.w3.org/2000/xmlns/"' qualifiedName='"xmlns:xmlns"'/>
+<nodeName var="attrNodeName" obj="renamedNode"/>
+<assertEquals actual="attrNodeName" expected='"xmlns:xmlns"' id="documentrenamenode09_1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode10.xml b/test/testcases/tests/level3/core/documentrenamenode10.xml
new file mode 100644
index 0000000..3b48c24
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode10.xml
@@ -0,0 +1,61 @@
+<?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="documentrenamenode10">
+<metadata>
+<title>documentrenamenode10</title>
+<creator>IBM</creator>
+<description>
+ The method renameNode renames an existing node and raises a NAMESPACE_ERR
+ if the qualifiedName has a prefix and the namespaceURI is null but a
+ NOT_SUPPORTED_ERR should be raised since the the type of the specified node is
+ neither ELEMENT_NODE nor ATTRIBUTE_NODE.
+
+ Invoke the renameNode method on a new document node to rename a node to nodes
+ with malformed qualifiedNames.
+ Check if a NOT_SUPPORTED_ERR gets thrown instead of a NAMESPACE_ERR.
+</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#Document3-renameNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="textEntry" type="DOMString" value='"hello"'/>
+<var name="textNode" type="Text"/>
+<var name="renamedNode" type="Node"/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="qualifiedNames" type="List">
+<member>&quot;_:&quot;</member>
+<member>&quot;:0&quot;</member>
+<member>&quot;:&quot;</member>
+<member>&quot;a0:0&quot;</member>
+<member>&quot;_:0;&quot;</member>
+<member>&quot;a:::::c&quot;</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createTextNode var="textNode" data="textEntry" obj="doc"/>
+<for-each collection="qualifiedNames" member="qualifiedName">
+<assertDOMException id="documentrenamenode10_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedNode" obj="doc" n="textNode" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName="qualifiedName"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode11.xml b/test/testcases/tests/level3/core/documentrenamenode11.xml
new file mode 100644
index 0000000..ee20cef
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode11.xml
@@ -0,0 +1,51 @@
+<?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="documentrenamenode11">
+<metadata>
+<title>documentrenamenode11</title>
+<creator>IBM</creator>
+<description>
+ The method renameNode renames an existing node and raises a NAMESPACE_ERR
+ if the qualifiedName has a prefix and the namespaceURI is null but a
+ NOT_SUPPORTED_ERR should be raised since the the type of the specified node is
+ neither ELEMENT_NODE nor ATTRIBUTE_NODE.
+
+ Invoke the renameNode method on this document node to rename a text node such that its
+ qualifiedName has a prefix and namespaceURI is null.
+ Check if a NOT_SUPPORTED_ERR gets thrown instead of a NAMESPACE_ERR.
+</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#Document3-renameNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="textEntry" type="DOMString" value='"hello"'/>
+<var name="textNode" type="Text"/>
+<var name="renamedNode" type="Node"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createTextNode var="textNode" data="textEntry" obj="doc"/>
+<assertDOMException id="documentrenamenode11_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedNode" obj="doc" n="textNode" namespaceURI="nullNSURI" qualifiedName='"pre:fix"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode12.xml b/test/testcases/tests/level3/core/documentrenamenode12.xml
new file mode 100644
index 0000000..10f8329
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode12.xml
@@ -0,0 +1,50 @@
+<?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="documentrenamenode12">
+<metadata>
+<title>documentrenamenode12</title>
+<creator>IBM</creator>
+<description>
+ The method renameNode renames an existing node and raises a NAMESPACE_ERR
+ if the qualifiedName has a prefix and the namespaceURI is null but a
+ NOT_SUPPORTED_ERR should be raised since the the type of the specified node is
+ neither ELEMENT_NODE nor ATTRIBUTE_NODE.
+
+ Invoke the renameNode method on this document node to rename a text node such that its
+ qualifiedName has a prefix that is "xml" and namespaceURI is "http://www.w3.org/XML/1999/namespace".
+ Check if a NOT_SUPPORTED_ERR gets thrown instead of a NAMESPACE_ERR since the type of node is not valid
+ for this method.
+</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#Document3-renameNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="renamedNode" type="Node"/>
+<var name="textEntry" type="DOMString" value='"hello"'/>
+<var name="textNode" type="Text"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createTextNode var="textNode" data="textEntry" obj="doc"/>
+<assertDOMException id="documentrenamenode12_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedNode" obj="doc" n="textNode" namespaceURI='"http://www.w3.org/XML/1999/namespace"' qualifiedName='"xml:prefix"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode13.xml b/test/testcases/tests/level3/core/documentrenamenode13.xml
new file mode 100644
index 0000000..5b9aba7
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode13.xml
@@ -0,0 +1,50 @@
+<?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="documentrenamenode13">
+<metadata>
+<title>documentrenamenode13</title>
+<creator>IBM</creator>
+<description>
+ The method renameNode renames an existing node and raises a NAMESPACE_ERR
+ if the qualifiedName has a prefix and the namespaceURI is null but a
+ NOT_SUPPORTED_ERR should be raised since the the type of the specified node is
+ neither ELEMENT_NODE nor ATTRIBUTE_NODE.
+
+ Invoke the renameNode method on this document node to rename a text node such that its
+ qualifiedName has a prefix that is "xmlns"and namespaceURI is "http://www.w3.org/XML/1998/namespace".
+ Check if a NOT_SUPPORTED_ERR gets thrown instead of a NAMESPACE_ERR since the type of node is not valid
+ for this method.
+</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#Document3-renameNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="textEntry" type="DOMString" value='"hello"'/>
+<var name="textNode" type="Text"/>
+<var name="renamedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createTextNode var="textNode" data="textEntry" obj="doc"/>
+<assertDOMException id="documentrenamenode13_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedNode" obj="doc" n="textNode" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xmlns:prefix"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode14.xml b/test/testcases/tests/level3/core/documentrenamenode14.xml
new file mode 100644
index 0000000..f74061c
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode14.xml
@@ -0,0 +1,51 @@
+<?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="documentrenamenode14">
+<metadata>
+<title>documentrenamenode14</title>
+<creator>IBM</creator>
+<description>
+ The method renameNode renames an existing node and raises a NAMESPACE_ERR
+ if the qualifiedName has a prefix and the namespaceURI is null but a
+ NOT_SUPPORTED_ERR should be raised since the the type of the specified node is
+ neither ELEMENT_NODE nor ATTRIBUTE_NODE.
+
+ Invoke the renameNode method on this document node to rename a text node such that its
+ qualifiedName is "xmlns"and namespaceURI is "http://www.w3.org/2000/xmlns".
+ Check if a NOT_SUPPORTED_ERR gets thrown instead of a NAMESPACE_ERR since the type of node is
+ not valid for this method.
+</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#Document3-renameNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="renamedNode" type="Node"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="textEntry" type="DOMString" value='"hello"'/>
+<var name="textNode" type="Text"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createTextNode var="textNode" data="textEntry" obj="doc"/>
+<assertDOMException id="documentrenamenode14_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedNode" obj="doc" n="textNode" namespaceURI='"http://www.w3.org/2000/xmlns"' qualifiedName='"xmlns"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode15.xml b/test/testcases/tests/level3/core/documentrenamenode15.xml
new file mode 100644
index 0000000..f4791d6
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode15.xml
@@ -0,0 +1,48 @@
+<?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="documentrenamenode15">
+<metadata>
+<title>documentrenamenode15</title>
+<creator>IBM</creator>
+<description>
+ Rename the fourth acronym element to svg:rect and verify the
+ nodeName, namespaceURI, nodeType attributes of the renamed node.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="renamedclass" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="element" obj="childList" index="3" interface="NodeList"/>
+<renameNode var="renamedclass" obj="doc" n="element" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"qnam:renamedNode"'/>
+<nodeName var="nodeName" obj="renamedclass"/>
+<namespaceURI var="namespaceURI" obj="renamedclass" interface="Node"/>
+<nodeType var="nodeType" obj="renamedclass"/>
+<assertEquals expected='"qnam:renamedNode"' actual="nodeName" id="documentrenamenode15_nodeName" ignoreCase="false"/>
+<assertEquals expected="1" actual="nodeType" id="documentrenamenode15_nodeType" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/DOM/Test"' actual="namespaceURI" id="documentrenamenode15_nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode16.xml b/test/testcases/tests/level3/core/documentrenamenode16.xml
new file mode 100644
index 0000000..9b4ef0a
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode16.xml
@@ -0,0 +1,52 @@
+<?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="documentrenamenode16">
+<metadata>
+<title>documentrenamenode16</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to rename the fourth
+ acronym element with a new namespaceURI that is
+ null and qualifiedName that is renamedNode.
+ Check if this element has been renamed successfully by verifying the
+ nodeName, attributes of the renamed node.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="renamedclass" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="element" obj="childList" index="3" interface="NodeList"/>
+<renameNode var="renamedclass" obj="doc" n="element" namespaceURI="nullNSURI" qualifiedName='"renamedNode"'/>
+<nodeName var="nodeName" obj="renamedclass"/>
+<namespaceURI var="namespaceURI" obj="renamedclass" interface="Node"/>
+<nodeType var="nodeType" obj="renamedclass"/>
+<assertEquals expected='"renamedNode"' actual="nodeName" id="documentrenamenode16_nodeName" ignoreCase="false"/>
+<assertEquals expected="1" actual="nodeType" id="documentrenamenode16_nodeType" ignoreCase="false"/>
+<assertNull actual="namespaceURI" id="documentrenamenode16_nodeValue"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode17.xml b/test/testcases/tests/level3/core/documentrenamenode17.xml
new file mode 100644
index 0000000..e4f9146
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode17.xml
@@ -0,0 +1,59 @@
+<?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="documentrenamenode17">
+<metadata>
+<title>documentrenamenode17</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to rename a new element node of a new document so that
+ its namespaceURI is http://www.w3.org/2000/xmlns/ and qualifiedName is xmlns:xmlns.
+ Check if this element has been renamed successfully by verifying the
+ nodeName, attributes of the renamed node.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="element" type="Element"/>
+<var name="renamedNode" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootTagname" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootTagname" obj="docElem"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='rootNS' qualifiedName='rootTagname' doctype="nullDocType"/>
+<createElementNS var="element" obj="newDoc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"body"'/>
+<renameNode var="renamedNode" obj="newDoc" n="element" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:head"'/>
+<nodeName var="nodeName" obj="renamedNode"/>
+<namespaceURI var="namespaceURI" obj="renamedNode" interface="Node"/>
+<nodeType var="nodeType" obj="renamedNode"/>
+<assertEquals expected='"xhtml:head"' actual="nodeName" id="documentrenamenode16_nodeName" ignoreCase="false"/>
+<assertEquals expected="1" actual="nodeType" id="documentrenamenode16_nodeType" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/1999/xhtml"' actual="namespaceURI" id="documentrenamenode16_nodeValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode18.xml b/test/testcases/tests/level3/core/documentrenamenode18.xml
new file mode 100644
index 0000000..413a166
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode18.xml
@@ -0,0 +1,53 @@
+<?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="documentrenamenode18">
+<metadata>
+<title>documentrenamenode18</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method on this document and try to rename a new element
+ node of a new document.
+ Check if a WRONG_DOCUMENT_ERR gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="element" type="Element"/>
+<var name="renamedNode" type="Node"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootTagname" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootTagname" obj="docElem"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='rootNS' qualifiedName='rootTagname' doctype="nullDocType"/>
+<createElementNS var="element" obj="newDoc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"body"'/>
+<assertDOMException id="documentrenamenode18_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<renameNode var="renamedNode" obj="doc" n="element" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"head"'/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode19.xml b/test/testcases/tests/level3/core/documentrenamenode19.xml
new file mode 100644
index 0000000..b344496
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode19.xml
@@ -0,0 +1,61 @@
+<?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="documentrenamenode19">
+<metadata>
+<title>documentrenamenode19</title>
+<creator>IBM</creator>
+<description>
+ The method renameNode renames an existing node and raises a NAMESPACE_ERR
+ if the qualifiedName is malformed per the Namespaces in XML specification.
+
+ Invoke the renameNode method on a new document node to rename a node to nodes
+ with malformed qualifiedNames.
+ Check if a NAMESPACE_ERR gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="element" type="Element"/>
+<var name="renamedNode" type="Node"/>
+<var name="qualifiedName" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="qualifiedNames" type="List">
+<member>&quot;a_:&quot;</member>
+<member>&quot;_:&quot;</member>
+<member>&quot;:&quot;</member>
+<member>&quot;::0;&quot;</member>
+<member>&quot;a:-:c&quot;</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"newD"' doctype="nullDocType"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"test"'/>
+<for-each collection="qualifiedNames" member="qualifiedName">
+<assertDOMException id="documentrenamenode19_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<renameNode var="renamedNode" obj="doc" n="element" namespaceURI='"http://www.w3.org/2000/XMLNS"' qualifiedName="qualifiedName"/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode20.xml b/test/testcases/tests/level3/core/documentrenamenode20.xml
new file mode 100644
index 0000000..f63d9e4
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode20.xml
@@ -0,0 +1,52 @@
+<?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="documentrenamenode20">
+<metadata>
+<title>documentrenamenode20</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method on this document node to rename a node such that its
+ qualifiedName has a prefix that is "xml:html" and namespaceURI is
+ "http://www.example.com/namespace".
+ Check if a NAMESPACE_ERR gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="renamedNode" type="Node"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootTagname" type="DOMString"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootTagname" obj="docElem"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootTagname" obj="docElem"/>
+<createElementNS var="element" obj="doc" namespaceURI='rootNS' qualifiedName='rootTagname'/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<renameNode var="renamedNode" obj="doc" n="element" namespaceURI='"http://www.example.com/xml"' qualifiedName='"xml:html"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode21.xml b/test/testcases/tests/level3/core/documentrenamenode21.xml
new file mode 100644
index 0000000..4b4c30d
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode21.xml
@@ -0,0 +1,54 @@
+<?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="documentrenamenode21">
+<metadata>
+<title>documentrenamenode21</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method on this document node to rename a node such that its
+ qualifiedName has a prefix that is "xmlns:xml"and namespaceURI is "http://www.w3.org/2000/XMLNS/".
+ Check if a NAMESPACE_ERR gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="attr" type="Attr"/>
+<var name="renamedNode" type="Node"/>
+<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="true"/>
+<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"/>
+<createAttributeNS var="attr" obj="newDoc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<renameNode var="renamedNode" obj="newDoc" n="attr" namespaceURI='"http://www.w3.org/2000/XMLNS/"' qualifiedName='"xmlns:xml"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentrenamenode22.xml b/test/testcases/tests/level3/core/documentrenamenode22.xml
new file mode 100644
index 0000000..221d124
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode22.xml
@@ -0,0 +1,42 @@
+<?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="documentrenamenode22">
+<metadata>
+<title>documentrenamenode22</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method on this document node to rename a node such that its
+ qualifiedName is "xmlns"and namespaceURI is "http://www.w3.org/1999/xmlns/".
+ Check if a NAMESPACE_ERR gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attr" type="Attr"/>
+<var name="renamedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<assertDOMException id="throw_NAMESPACE_ERR">
+<NAMESPACE_ERR>
+<renameNode var="renamedNode" obj="doc" n="attr" namespaceURI='"http://www.w3.org/1999/xmlns/"' qualifiedName='"xmlns"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode23.xml b/test/testcases/tests/level3/core/documentrenamenode23.xml
new file mode 100644
index 0000000..0adc62e
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode23.xml
@@ -0,0 +1,44 @@
+<?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="documentrenamenode23">
+<metadata>
+<title>documentrenamenode23</title>
+<creator>IBM</creator>
+<description>
+ The method renameNode renames an existing node and raises a NOT_SUPPORTED_ERR
+ if the type of the specified node is neither ELEMENT_NODE nor ATTRIBUTE_NODE.
+
+ Invoke the renameNode method on this document node to attempt to rename itself.
+ Check if a NOT_SUPPORTED_ERR gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="renamedNode" type="Node"/>
+<var name="docowner" type="Document"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<assertDOMException id="documentrenamenode23_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedNode" obj="doc" n="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"root"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode24.xml b/test/testcases/tests/level3/core/documentrenamenode24.xml
new file mode 100644
index 0000000..6b4d0cb
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode24.xml
@@ -0,0 +1,46 @@
+<?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="documentrenamenode24">
+<metadata>
+<title>documentrenamenode24</title>
+<creator>IBM</creator>
+<description>
+ The method renameNode renames an existing node and raises a NOT_SUPPORTED_ERR
+ if the type of the specified node is neither ELEMENT_NODE nor ATTRIBUTE_NODE.
+
+ Invoke the renameNode method on this document node to attempt to rename itself.
+ The namespaceURI specified here is null and the name has a prefix.
+ Check if a NOT_SUPPORTED_ERR gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="renamedNode" type="Node"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<var name="docowner" type="Document"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<assertDOMException id="documentrenamenode24_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedNode" obj="doc" n="doc" namespaceURI="nullNSURI" qualifiedName='"doc:root"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode25.xml b/test/testcases/tests/level3/core/documentrenamenode25.xml
new file mode 100644
index 0000000..93f2450
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode25.xml
@@ -0,0 +1,42 @@
+<?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="documentrenamenode25">
+<metadata>
+<title>documentrenamenode25</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to attempt to rename a DOcumentType node of this Document.
+ Check if a NOT_SUPPORTED_ERR gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="renamedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<assertDOMException id="documentrenamenode25_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedNode" obj="doc" n="docType" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"root"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentrenamenode26.xml b/test/testcases/tests/level3/core/documentrenamenode26.xml
new file mode 100644
index 0000000..ba797cb
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode26.xml
@@ -0,0 +1,43 @@
+<?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="documentrenamenode26">
+<metadata>
+<title>documentrenamenode26</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method oto attempt to rename a new DocumentFragment node
+ of this Document.
+ Check if a NOT_SUPPORTED_ERR gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="renamedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<assertDOMException id="documentrenamenode26_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedNode" obj="doc" n="docFrag" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"root"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentrenamenode27.xml b/test/testcases/tests/level3/core/documentrenamenode27.xml
new file mode 100644
index 0000000..bced06a
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode27.xml
@@ -0,0 +1,86 @@
+<?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="documentrenamenode27">
+<metadata>
+<title>documentrenamenode27</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to attempt to rename new Text, Comment, CDataSection,
+ ProcessingInstruction and EntityReference nodes of a new Document.
+ Check if a NOT_SUPPORTED_ERR is thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="text" type="Text"/>
+<var name="comment" type="Comment"/>
+<var name="cdata" type="CDATASection"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="entref" type="EntityReference"/>
+<var name="renamedTxt" type="Node"/>
+<var name="renamedComment" type="Node"/>
+<var name="renamedCdata" type="Node"/>
+<var name="renamedPi" type="Node"/>
+<var name="renamedEntRef" type="Node"/>
+<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="true"/>
+<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"/>
+<createTextNode var="text" obj="newDoc" data='"text"'/>
+<createComment var="comment" obj="newDoc" data='"comment"'/>
+<createCDATASection var="cdata" obj="newDoc" data='"cdata"'/>
+<createProcessingInstruction var="pi" obj="newDoc" target='"pit"' data='"pid"'/>
+<createEntityReference var="entref" obj="newDoc" name='"alpha"'/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR_1">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedTxt" obj="newDoc" n="text" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"text"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR_2">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedComment" obj="newDoc" n="comment" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"comment"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR_3">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedCdata" obj="newDoc" n="cdata" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"cdata"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR_4">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedPi" obj="newDoc" n="pi" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"pi"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR_5">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedEntRef" obj="newDoc" n="entref" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"entref"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentrenamenode28.xml b/test/testcases/tests/level3/core/documentrenamenode28.xml
new file mode 100644
index 0000000..cd838e1
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode28.xml
@@ -0,0 +1,55 @@
+<?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="documentrenamenode28">
+<metadata>
+<title>documentrenamenode28</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to attempt to rename a Entity and Notation nodes of this Document.
+ Check if a NOT_SUPPORTED_ERR gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entityNodeMap" type="NamedNodeMap"/>
+<var name="notationNodeMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="notation" type="Notation"/>
+<var name="renamedEntityNode" type="Node"/>
+<var name="renamedNotationNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entityNodeMap" obj="docType"/>
+<notations var="notationNodeMap" obj="docType"/>
+<getNamedItem var="entity" obj="entityNodeMap" name='"alpha"'/>
+<getNamedItem var="notation" obj="notationNodeMap" name='"notation1"'/>
+<assertDOMException id="documentrenamenode28_ENTITY_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedEntityNode" obj="doc" n="entity" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"beta"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+<assertDOMException id="documentrenamenode28_NOTATION_NOT_SUPPORTED_ERR">
+<NOT_SUPPORTED_ERR>
+<renameNode var="renamedNotationNode" obj="doc" n="notation" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"notation2"'/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentrenamenode29.xml b/test/testcases/tests/level3/core/documentrenamenode29.xml
new file mode 100644
index 0000000..ed90425
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentrenamenode29.xml
@@ -0,0 +1,42 @@
+<?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="documentrenamenode29">
+<metadata>
+<title>documentrenamenode29</title>
+<creator>IBM</creator>
+<description>
+ Invoke the renameNode method to attempt to rename an Element node of a XML1.0 document
+ with a name that contains an invalid XML 1.0 character and check if a INVALID_CHARACTER_ERR
+ gets thrown.
+</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#Document3-renameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="renamed" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<assertDOMException id="documentrenamenode29_ENTITY_NOT_SUPPORTED_ERR">
+<INVALID_CHARACTER_ERR>
+<renameNode var="renamed" obj="doc" n="docElem" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"@"'/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentsetdocumenturi01.xml b/test/testcases/tests/level3/core/documentsetdocumenturi01.xml
new file mode 100644
index 0000000..9c964ec
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetdocumenturi01.xml
@@ -0,0 +1,39 @@
+<?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="documentsetdocumenturi01">
+<metadata>
+<title>documentsetdocumenturi01</title>
+<creator>IBM</creator>
+<description>
+ The setDocmentURI method set the location of the document.
+
+ Set the documentURI to a valid string and retreive the documentURI of this
+ document and verify if it is was correctly set.
+</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#Document3-documentURI"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentURI obj="doc" value='"file:///test"'/>
+<documentURI var="docURI" obj="doc" />
+<assertEquals actual="docURI" expected='"file:///test"' id="documentsetdocumenturi01" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentsetdocumenturi02.xml b/test/testcases/tests/level3/core/documentsetdocumenturi02.xml
new file mode 100644
index 0000000..7d02526
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetdocumenturi02.xml
@@ -0,0 +1,40 @@
+<?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="documentsetdocumenturi02">
+<metadata>
+<title>documentsetdocumenturi02</title>
+<creator>IBM</creator>
+<description>
+ The setDocmentURI method set the location of the document.
+
+ Set the documentURI to null and retreive the documentURI of this document and verify
+ if it is was set to null.
+</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#Document3-documentURI"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docURI" type="DOMString"/>
+<var name="nullValue" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentURI obj="doc" value="nullValue"/>
+<documentURI var="docURI" obj="doc" />
+<assertNull actual="docURI" id="documentsetdocumenturi02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentsetdocumenturi03.xml b/test/testcases/tests/level3/core/documentsetdocumenturi03.xml
new file mode 100644
index 0000000..2091efd
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetdocumenturi03.xml
@@ -0,0 +1,50 @@
+<?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="documentsetdocumenturi03">
+<metadata>
+<title>documentsetdocumenturi03</title>
+<creator>IBM</creator>
+<description>
+ The setDocmentURI method set the location of the document.
+
+ Create a new document and set its documentURI to a valid string. Retreive the documentURI
+ and verify if it is was correctly set.
+</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#Document3-documentURI"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docURI" type="DOMString"/>
+<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="barfoo" willBeModified="true"/>
+<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"/>
+<documentURI obj="newDoc" value='"somestring"'/>
+<documentURI var="docURI" obj="newDoc" />
+<assertEquals actual="docURI" expected='"somestring"' id="documentsetdocumenturi03" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentsetstricterrorchecking01.xml b/test/testcases/tests/level3/core/documentsetstricterrorchecking01.xml
new file mode 100644
index 0000000..59c85f6
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetstricterrorchecking01.xml
@@ -0,0 +1,42 @@
+<?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="documentsetstricterrorchecking01">
+<metadata>
+<title>documentsetstricterrorchecking01</title>
+<creator>IBM</creator>
+<description>
+ Set the strictErrorChecking attribute value on this documentNode to false and then to true.
+ Call the createAttributeNS method on this document with an illegal character in the qualifiedName
+ and check if the INVALID_CHARACTER_ERR is thrown.
+</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#Document3-strictErrorChecking"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<strictErrorChecking obj="doc" value="false"/>
+<strictErrorChecking obj="doc" value="true"/>
+<assertDOMException id="INVALID_CHARACTER_ERR_documentsetstricterrorchecking01">
+<INVALID_CHARACTER_ERR>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"@"'/>
+</INVALID_CHARACTER_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentsetstricterrorchecking02.xml b/test/testcases/tests/level3/core/documentsetstricterrorchecking02.xml
new file mode 100644
index 0000000..95d869d
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetstricterrorchecking02.xml
@@ -0,0 +1,42 @@
+<?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="documentsetstricterrorchecking02">
+<metadata>
+<title>documentsetstricterrorchecking02</title>
+<creator>IBM</creator>
+<description>
+ Set the strictErrorChecking attribute value on a new Document to true.
+ Call the createAttributeNS method on this document with a a null namespaceURI and a qualified name
+ with a prefix and check if the NAMESPACE_ERR is thrown.
+</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#Document3-strictErrorChecking"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newAttr" type="Attr"/>
+<var name="nullValue" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<strictErrorChecking obj="doc" value="true"/>
+<assertDOMException id="NAMESPACE_ERR_documentsetstricterrorchecking02">
+<NAMESPACE_ERR>
+<createAttributeNS obj="doc" var="newAttr" namespaceURI="nullValue" qualifiedName='"dom:test"'/>
+</NAMESPACE_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/documentsetstricterrorchecking03.xml b/test/testcases/tests/level3/core/documentsetstricterrorchecking03.xml
new file mode 100644
index 0000000..a0adbac
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetstricterrorchecking03.xml
@@ -0,0 +1,37 @@
+<?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="documentsetstricterrorchecking03">
+<metadata>
+<title>documentsetstricterrorchecking03</title>
+<creator>IBM</creator>
+<description>
+ Set the strictErrorChecking attribute value on a new Document to false and check if it was
+ correctly set using getStrictErrorChecking.
+</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#Document3-strictErrorChecking"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="strictErrorCheckingValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<strictErrorChecking obj="doc" value="false"/>
+<strictErrorChecking var="strictErrorCheckingValue" obj="doc" />
+<assertFalse actual="strictErrorCheckingValue" id="documentsetstricterrorchecking03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentsetxmlstandalone01.xml b/test/testcases/tests/level3/core/documentsetxmlstandalone01.xml
new file mode 100644
index 0000000..434a061
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetxmlstandalone01.xml
@@ -0,0 +1,37 @@
+<?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="documentsetxmlstandalone01">
+<metadata>
+<title>documentsetxmlstandalone01</title>
+<creator>IBM</creator>
+<description>
+ Set the standalone attribute of this document to true and verify if the attribute was correctly
+ set.
+</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#Document3-standalone"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="standalone" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<xmlStandalone obj="doc" value="true"/>
+<xmlStandalone var="standalone" obj="doc" />
+<assertTrue actual="standalone" id="documentsetxmlstandalone01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentsetxmlstandalone02.xml b/test/testcases/tests/level3/core/documentsetxmlstandalone02.xml
new file mode 100644
index 0000000..c541090
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetxmlstandalone02.xml
@@ -0,0 +1,51 @@
+<?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="documentsetxmlstandalone02">
+<metadata>
+<title>documentsetxmlstandalone02</title>
+<creator>IBM</creator>
+<description>
+ Create a new document object and set standalone to false and check if it was correctly set.
+ Then repeat this by setting it to true.
+</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#Document3-standalone"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="standalone" 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="barfoo" willBeModified="true"/>
+<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"/>
+<xmlStandalone obj="newDoc" value="false"/>
+<xmlStandalone var="standalone" obj="newDoc"/>
+<assertFalse actual="standalone" id="documentsetxmlstandalone02_false"/>
+<xmlStandalone obj="newDoc" value="true"/>
+<xmlStandalone var="standalone" obj="newDoc"/>
+<assertTrue actual="standalone" id="documentsetxmlstandalone02_true"/>
+</test>
diff --git a/test/testcases/tests/level3/core/documentsetxmlversion01.xml b/test/testcases/tests/level3/core/documentsetxmlversion01.xml
new file mode 100644
index 0000000..b79d1d0
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetxmlversion01.xml
@@ -0,0 +1,71 @@
+<?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="documentsetxmlversion01">
+<metadata>
+<title>documentsetxmlversion01</title>
+<creator>IBM</creator>
+<description>
+ Set the value of the version attribute of the XML declaration of this document to
+ various invalid characters and verify if a NOT_SUPPORTED_ERR is thrown.
+</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#Document3-version"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="versionValue" type="DOMString"/>
+<var name="illegalVersion" type="List">
+<member>"{"</member>
+<member>"}"</member>
+<member>"~"</member>
+<member>"'"</member>
+<member>"!"</member>
+<member>"@"</member>
+<member>"#"</member>
+<member>"$"</member>
+<member>"%"</member>
+<member>"^"</member>
+<member>"&amp;"</member>
+<member>"*"</member>
+<member>"("</member>
+<member>")"</member>
+<member>"+"</member>
+<member>"="</member>
+<member>"["</member>
+<member>"]"</member>
+<member>"\\"</member>
+<member>"/"</member>
+<member>";"</member>
+<member>"`"</member>
+<member>"&lt;"</member>
+<member>"&gt;"</member>
+<member>","</member>
+<member>"a "</member>
+<member>"\""</member>
+<member>"---"</member>
+</var>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<for-each collection="illegalVersion" member="versionValue">
+<assertDOMException id="NOT_SUPPORTED_ERR_documentsetversion01">
+<NOT_SUPPORTED_ERR>
+<xmlVersion obj="doc" value='versionValue' interface="Document"/>
+</NOT_SUPPORTED_ERR>
+</assertDOMException>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level3/core/documentsetxmlversion02.xml b/test/testcases/tests/level3/core/documentsetxmlversion02.xml
new file mode 100644
index 0000000..4444b38
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetxmlversion02.xml
@@ -0,0 +1,49 @@
+<?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="documentsetxmlversion02">
+<metadata>
+<title>documentsetxmlversion02</title>
+<creator>IBM</creator>
+<description>
+ Set the value of the version attribute of the XML declaration of a new document to "1.0"
+ and check if it was correctly set.
+</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#Document3-version"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="versionValue" type="DOMString"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<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="barfoo" willBeModified="true"/>
+<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"/>
+<xmlVersion obj="newDoc" value='"1.0"' interface="Document"/>
+<xmlVersion var="versionValue" obj="newDoc" interface="Document"/>
+<assertEquals actual="versionValue" expected='"1.0"' id="documentsetxmlversion02" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentsetxmlversion03.xml b/test/testcases/tests/level3/core/documentsetxmlversion03.xml
new file mode 100644
index 0000000..383608d
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetxmlversion03.xml
@@ -0,0 +1,49 @@
+<?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="documentsetxmlversion03">
+<metadata>
+<title>documentsetxmlversion03</title>
+<creator>IBM</creator>
+<description>
+ Set the value of the version attribute of the XML declaration of a new document to "1.0"
+ and check if it was correctly set.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2003-06-10</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-version"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="versionValue" type="DOMString"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<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="barfoo" willBeModified="true"/>
+<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"/>
+<xmlVersion obj="newDoc" value='"1.1"' interface="Document"/>
+<xmlVersion var="versionValue" obj="newDoc" interface="Document"/>
+<assertEquals actual="versionValue" expected='"1.1"' id="documentsetxmlversion03" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/documentsetxmlversion05.xml b/test/testcases/tests/level3/core/documentsetxmlversion05.xml
new file mode 100644
index 0000000..50de4f8
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentsetxmlversion05.xml
@@ -0,0 +1,50 @@
+<?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="documentsetxmlversion05">
+<metadata>
+<title>documentsetxmlversion05</title>
+<creator>IBM</creator>
+<description>
+ Set the value of the version attribute of the XML declaration of a new document to "-"
+ and check if a NOT_SUPPORTED_ERR is thrown.
+</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#Document3-version"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<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="barfoo" willBeModified="true"/>
+<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"/>
+<assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <xmlVersion obj="newDoc" value='"-"' interface="Document"/>
+ </NOT_SUPPORTED_ERR>
+</assertDOMException>
+</test>
+
diff --git a/test/testcases/tests/level3/core/domconfigcanonicalform1.xml b/test/testcases/tests/level3/core/domconfigcanonicalform1.xml
new file mode 100644
index 0000000..e8d7239
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigcanonicalform1.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigcanonicalform1">
+ <metadata>
+ <title>domconfigcanonicalform1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "canonical-form" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-property"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"cAnOnical-form"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ <!-- should still be false after failed attempt -->
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setTrueNotEffective"/>
+ </else>
+ </if>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigcdatasections1.xml b/test/testcases/tests/level3/core/domconfigcdatasections1.xml
new file mode 100644
index 0000000..12b778e
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigcdatasections1.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigcdatasections1">
+ <metadata>
+ <title>domconfigcdatasections1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "cdata-sections" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-cdata-sections"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"cDaTa-sections"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setFalseEffective"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueEffective"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigcheckcharacternormalization1.xml b/test/testcases/tests/level3/core/domconfigcheckcharacternormalization1.xml
new file mode 100644
index 0000000..3f17dda
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigcheckcharacternormalization1.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigcheckcharacternormalization1">
+ <metadata>
+ <title>domconfigcheckcharacternormalization1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "check-character-normalization" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-check-character-normalization"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"cHeCk-character-normalization"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ <!-- should still be false after failed attempt -->
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setTrueNotEffective"/>
+ </else>
+ </if>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigcomments1.xml b/test/testcases/tests/level3/core/domconfigcomments1.xml
new file mode 100644
index 0000000..3958ab4
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigcomments1.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigcomments1">
+ <metadata>
+ <title>domconfigcomments1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "comments" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-comments"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"cOmments"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setFalseEffective"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueEffective"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigdatatypenormalization1.xml b/test/testcases/tests/level3/core/domconfigdatatypenormalization1.xml
new file mode 100644
index 0000000..cdf95f9
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigdatatypenormalization1.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigdatatypenormalization1">
+ <metadata>
+ <title>domconfigdatatypenormalization1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "datatype-normalization" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"dAtAtype-normalization"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ <!-- should still be false after failed attempt -->
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setTrueNotEffective"/>
+ </else>
+ </if>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigdatatypenormalization2.xml b/test/testcases/tests/level3/core/domconfigdatatypenormalization2.xml
new file mode 100644
index 0000000..ca3462b
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigdatatypenormalization2.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigdatatypenormalization2">
+ <metadata>
+ <title>domconfigdatatypenormalization2</title>
+ <creator>Curt Arnold</creator>
+ <description>Setting "datatype-normalization" to true also forces "validate" to true.</description>
+ <date qualifier="created">2004-02-24</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"datatype-normalization"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <!-- set validate to false -->
+ <setParameter obj="domConfig" name='"validate"' value="false"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <if><isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name='"validate"'/>
+ <assertTrue actual="state" id="validateSet"/>
+ </if>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigelementcontentwhitespace1.xml b/test/testcases/tests/level3/core/domconfigelementcontentwhitespace1.xml
new file mode 100644
index 0000000..0f5ae21
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigelementcontentwhitespace1.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigelementcontentwhitespace1">
+ <metadata>
+ <title>domconfigelementcontentwhitespace1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "element-content-whitespace" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-element-content-whitespace"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"eLeMent-content-whitespace"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setFalseEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ <!-- should still be true after failed attempt -->
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setFalseNotEffective"/>
+ </else>
+ </if>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigentities1.xml b/test/testcases/tests/level3/core/domconfigentities1.xml
new file mode 100644
index 0000000..58103e6
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigentities1.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigentities1">
+ <metadata>
+ <title>domconfigentities1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "entities" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"eNtIties"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setFalseEffective"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueEffective"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigerrorhandler1.xml b/test/testcases/tests/level3/core/domconfigerrorhandler1.xml
new file mode 100644
index 0000000..234e0d4
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigerrorhandler1.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigerrorhandler1">
+ <metadata>
+ <title>domconfigerrorhandler1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "error-handler" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-error-handler"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ <subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=544"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="origHandler" type="DOMErrorHandler"/>
+ <var name="state" type="DOMErrorHandler"/>
+ <var name="parameter" type="DOMString" value='"eRrOr-handler"'/>
+ <var name="errorHandler" type="DOMErrorHandler">
+ <handleError>
+ <return value="true"/>
+ </handleError>
+ </var>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="origHandler" obj="domConfig" name="parameter"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="errorHandler"/>
+ <assertTrue actual="canSet" id="canSetNewHandler"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="origHandler"/>
+ <assertTrue actual="canSet" id="canSetOrigHandler"/>
+ <setParameter obj="domConfig" name="parameter" value="errorHandler"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertSame expected="errorHandler" actual="state" id="setToNewHandlerEffective"/>
+ <setParameter obj="domConfig" name="parameter" value="origHandler"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertSame expected="origHandler" actual="state" id="setToOrigHandlerEffective"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <!--
+ should return false for strongly typed languages
+ however if weakly typed, then should be consistent with setParameter
+ -->
+ <if><isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ </if>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigerrorhandler2.xml b/test/testcases/tests/level3/core/domconfigerrorhandler2.xml
new file mode 100644
index 0000000..efdac09
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigerrorhandler2.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigerrorhandler2">
+ <metadata>
+ <title>domconfigerrorhandler2</title>
+ <creator>Curt Arnold</creator>
+ <description>Calls DOMConfiguration.setParameter("error-handler", null). Spec
+ does not explicitly address the case.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-error-handler"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="errorHandler" type="DOMErrorHandler" isNull="true"/>
+ <var name="parameter" type="DOMString" value='"error-handler"'/>
+ <var name="state" type="DOMErrorHandler"/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="errorHandler"/>
+ <assertTrue actual="canSet" id="canSetNull"/>
+ <setParameter obj="domConfig" name="parameter" value="errorHandler"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertNull actual="state" id="errorHandlerIsNull"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfiginfoset1.xml b/test/testcases/tests/level3/core/domconfiginfoset1.xml
new file mode 100644
index 0000000..f35ed5e
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfiginfoset1.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfiginfoset1">
+ <metadata>
+ <title>domconfiginfoset1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "infoset" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-infoset"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-cdata-sections"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"iNfOset"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <!-- default for infoset is false since entities default is true -->
+ <assertFalse actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueIsEffective"/>
+
+ <getParameter var="state" obj="domConfig" name='"entities"'/>
+ <assertFalse actual="state" id="entitiesSetFalse"/>
+ <getParameter var="state" obj="domConfig" name='"cdata-sections"'/>
+ <assertFalse actual="state" id="cdataSectionsSetFalse"/>
+
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setFalseIsNoOp"/>
+
+ <setParameter obj="domConfig" name='"entities"' value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setEntitiesTrueInvalidatesInfoset"/>
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfignamespacedeclarations1.xml b/test/testcases/tests/level3/core/domconfignamespacedeclarations1.xml
new file mode 100644
index 0000000..3c1dd8f
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfignamespacedeclarations1.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfignamespacedeclarations1">
+ <metadata>
+ <title>domconfigcomments1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "namespace-declarations" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespace-declarations"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"nAmEspace-declarations"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setFalseEffective"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueEffective"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfignamespaces1.xml b/test/testcases/tests/level3/core/domconfignamespaces1.xml
new file mode 100644
index 0000000..59d681f
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfignamespaces1.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfignamespaces1">
+ <metadata>
+ <title>domconfignamespaces1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "namespaces" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespaces"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"nAmEspaces"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setFalseEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ <!-- should still be true after failed attempt -->
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setFalseNotEffective"/>
+ </else>
+ </if>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfignamespaces2.xml b/test/testcases/tests/level3/core/domconfignamespaces2.xml
new file mode 100644
index 0000000..40b213f
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfignamespaces2.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfignamespaces2">
+ <metadata>
+ <title>domconfignamespaces2</title>
+ <creator>Curt Arnold</creator>
+ <description>Document.getParameter("namespaces") should be true regardles if the
+ parse that created the document was namespace aware.</description>
+ <date qualifier="created">2004-02-24</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespaces"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <load var="doc" href="barfoo" willBeModified="false"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name='"namespaces"'/>
+ <assertTrue actual="state" id="namespacesTrue"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfignormalizecharacters1.xml b/test/testcases/tests/level3/core/domconfignormalizecharacters1.xml
new file mode 100644
index 0000000..5f71876
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfignormalizecharacters1.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfignormalizecharacters1">
+ <metadata>
+ <title>domconfignormalizecharacters1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "normalize-characters" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-normalize-characters"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"nOrMalize-characters"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ <!-- should still be false after failed attempt -->
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setTrueNotEffective"/>
+ </else>
+ </if>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigparameternames01.xml b/test/testcases/tests/level3/core/domconfigparameternames01.xml
new file mode 100644
index 0000000..7ebac73
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigparameternames01.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="domconfigparameternames01">
+ <metadata>
+ <title>domconfigparameternames01</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks getParameterNames and canSetParameter for Document.domConfig.</description>
+ <date qualifier="created">2004-01-22</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-domConfig"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-parameterNames"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-cdata-sections"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-check-character-normalization"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-comments"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-error-handler"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-infoset"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespaces"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespace-declarations"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-normalize-characters"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-split-cdata-sections"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate-if-schema"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-well-formed"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-element-content-whitespace"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="parameterNames" type="DOMStringList"/>
+ <var name="parameterName" type="DOMString"/>
+ <var name="matchCount" type="int" value="0"/>
+ <var name="paramValue" type="DOMUserData"/>
+ <var name="canSet" type="boolean"/>
+ <load var="doc" href="barfoo" willBeModified="false"/>
+ <domConfig var="config" obj="doc" interface="Document"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <parameterNames var="parameterNames" obj="config"/>
+ <assertNotNull actual="parameterNames" id="parameterNamesNotNull"/>
+ <for-each collection="parameterNames" member="parameterName">
+ <!-- get the default value of this parameter -->
+ <getParameter var="paramValue" obj="config" name="parameterName"/>
+ <!-- should be able to set to default value -->
+ <canSetParameter var="canSet" obj="config" name="parameterName" value="paramValue"/>
+ <assertTrue actual="canSet" id="canSetToDefaultValue"/>
+ <setParameter obj="config" name="parameterName" value="paramValue"/>
+ <if>
+ <or>
+ <equals actual="parameterName" expected='"canonical-form"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"cdata-sections"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"check-character-normalization"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"comments"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"datatype-normalization"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"entities"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"error-handler"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"infoset"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"namespaces"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"namespace-declarations"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"normalize-characters"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"split-cdata-sections"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"validate"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"validate-if-schema"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"well-formed"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"element-content-whitespace"' ignoreCase="true"/>
+ </or>
+ <increment var="matchCount" value="1"/>
+ </if>
+ </for-each>
+ <assertEquals actual="matchCount" expected="16" id="definedParameterCount" ignoreCase="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigschemalocation1.xml b/test/testcases/tests/level3/core/domconfigschemalocation1.xml
new file mode 100644
index 0000000..6e9a9b1
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigschemalocation1.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigschemalocation1">
+ <metadata>
+ <title>domconfigschemalocation1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "schema-location" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-location"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="DOMString"/>
+ <var name="parameter" type="DOMString" value='"sChEma-location"'/>
+ <var name="nullSchemaLocation" type="DOMString" isNull="true"/>
+ <var name="sampleSchemaLocation" type="DOMString" value='"http://www.example.com/schemas/sampleschema.xsd"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <assertFalse actual="canSet" id="canSetTrue"/>
+ <try>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertNull actual="state" id="defaultSchemaLocation"/>
+ <catch>
+ <DOMException code="NOT_FOUND_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+ </try>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="sampleSchemaLocation"/>
+ <assertTrue actual="canSet" id="canSetURI"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="nullSchemaLocation"/>
+ <assertTrue actual="canSet" id="canSetNull"/>
+ <setParameter obj="domConfig" name="parameter" value="sampleSchemaLocation"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertEquals actual="state" expected="sampleSchemaLocation" ignoreCase="false" id="setURIEffective"/>
+ <setParameter obj="domConfig" name="parameter" value="nullSchemaLocation"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertNull actual="state" id="setNullEffective"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domconfigschematype1.xml b/test/testcases/tests/level3/core/domconfigschematype1.xml
new file mode 100644
index 0000000..8fc739c
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigschematype1.xml
@@ -0,0 +1,80 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigschematype1">
+ <metadata>
+ <title>domconfigschematype1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "schema-type" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-type"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="DOMString"/>
+ <var name="parameter" type="DOMString" value='"sChEma-type"'/>
+ <var name="xmlSchemaType" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+ <var name="dtdType" type="DOMString" value='"http://www.w3.org/TR/REC-xml"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <assertFalse actual="canSet" id="canSetTrue"/>
+ <try>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <catch>
+ <DOMException code="NOT_FOUND_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+ </try>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="dtdType"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="dtdType"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertEquals actual="state" expected="dtdType" ignoreCase="false" id="setDTDEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR_dtd">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="domConfig" name="parameter" value="dtdType"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ </else>
+ </if>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="xmlSchemaType"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="xmlSchemaType"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertEquals actual="state" expected="xmlSchemaType" ignoreCase="false" id="setSchemaEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR_schema">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="domConfig" name="parameter" value="xmlSchemaType"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ </else>
+ </if>
+</test>
diff --git a/test/testcases/tests/level3/core/domconfigsplitcdatasections1.xml b/test/testcases/tests/level3/core/domconfigsplitcdatasections1.xml
new file mode 100644
index 0000000..3268929
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigsplitcdatasections1.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigsplitcdatasections1">
+ <metadata>
+ <title>domconfigsplitcdatasections1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "split-cdata-sections" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-split-cdata-sections"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"sPlIt-cdata-sections"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setFalseEffective"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueEffective"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigurationcansetparameter01.xml b/test/testcases/tests/level3/core/domconfigurationcansetparameter01.xml
new file mode 100644
index 0000000..264a29f
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigurationcansetparameter01.xml
@@ -0,0 +1,50 @@
+<?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="domconfigurationcansetparameter01">
+<metadata>
+<title>domconfigurationcansetparameter01</title>
+<creator>IBM</creator>
+<description>
+ The parameter commments is turned on by default. Check to see if this feature can be set
+ to false by invoking canSetParameter method. Also check that this method does not change the
+ value of parameter.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-11-06</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-canSetParameter"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="newCommentNode" type="Comment"/>
+<var name="docElem" type="Element"/>
+<var name="appendedChild" type="Node"/>
+<var name="lastChild" type="Node"/>
+<var name="commentValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createComment obj="doc" var="newCommentNode" data='"This is a new Comment node"'/>
+<documentElement obj="doc" var="docElem" interface="Document"/>
+<appendChild obj="docElem" var="appendedChild" newChild="newCommentNode" interface="Node"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter obj="domConfig" var="canSet" name='"comments"' value="false"/>
+<assertTrue actual="canSet" id="domconfigurationcansetparameter01"/>
+<normalizeDocument obj="doc"/>
+<lastChild obj="docElem" var="lastChild" interface="Node"/>
+<nodeValue obj="lastChild" var="commentValue" interface="Node"/>
+<assertEquals actual="commentValue" expected='"This is a new Comment node"' id="domconfigurationsetparameter02_2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domconfigurationcansetparameter02.xml b/test/testcases/tests/level3/core/domconfigurationcansetparameter02.xml
new file mode 100644
index 0000000..b183536
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigurationcansetparameter02.xml
@@ -0,0 +1,49 @@
+<?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="domconfigurationcansetparameter02">
+<metadata>
+<title>domconfigurationcansetparameter02</title>
+<creator>IBM</creator>
+<description>
+Check that canSetParameter('cdata-sections') returns true for both true and false
+and that calls to the method do not actually change the parameter value.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-11-06</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-canSetParameter"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="paramVal" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter obj="domConfig" var="canSet" name='"cdata-sections"' value="false"/>
+<assertTrue actual="canSet" id="canSetFalse"/>
+<getParameter var="paramVal" obj="domConfig" name='"cdata-sections"'/>
+<assertTrue actual="paramVal" id="valueStillTrue"/>
+<canSetParameter obj="domConfig" var="canSet" name='"cdata-sections"' value="true"/>
+<assertTrue actual="canSet" id="canSetTrue"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="false"/>
+<canSetParameter obj="domConfig" var="canSet" name='"cdata-sections"' value="true"/>
+<assertTrue actual="canSet" id="canSetTrueFromFalse"/>
+<getParameter var="paramVal" obj="domConfig" name='"cdata-sections"'/>
+<assertFalse actual="paramVal" id="valueStillFalse"/>
+<canSetParameter obj="domConfig" var="canSet" name='"cdata-sections"' value="false"/>
+<assertTrue actual="canSet" id="canSetFalseFromFalse"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domconfigurationcansetparameter03.xml b/test/testcases/tests/level3/core/domconfigurationcansetparameter03.xml
new file mode 100644
index 0000000..3562c27
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigurationcansetparameter03.xml
@@ -0,0 +1,54 @@
+<?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="domconfigurationcansetparameter03">
+<metadata>
+<title>domconfigurationcansetparameter03</title>
+<creator>IBM</creator>
+<description>
+ The canSetParameter method checks if setting a parameter to a specific value is supported.
+
+ The parameter entities is turned on by default. Check to see if this feature can be set
+ to false by invoking canSetParameter method. Also check that this method does not change the
+ value of parameter by checking if entities still exist in the document.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-11-06</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-canSetParameter"/>
+</metadata>
+<!-- required for normalizeDocument -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<var name="entity" type="Entity"/>
+<var name="entityName" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter obj="domConfig" var="canSet" name='"entities"' value="false"/>
+<assertTrue actual="canSet" id="canSetFalse"/>
+<normalizeDocument obj="doc"/>
+<doctype obj="doc" var="docType" interface="Document"/>
+<entities obj="docType" var="entitiesMap" interface="DocumentType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"epsilon"'/>
+<assertNotNull actual="entity" id="entityNotNull"/>
+<nodeName obj="entity" var="entityName" interface="Node"/>
+<assertEquals actual="entityName" expected='"epsilon"' id="entityName" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domconfigurationcansetparameter04.xml b/test/testcases/tests/level3/core/domconfigurationcansetparameter04.xml
new file mode 100644
index 0000000..7f24039
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigurationcansetparameter04.xml
@@ -0,0 +1,55 @@
+<?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="domconfigurationcansetparameter04">
+<metadata>
+<title>domconfigurationcansetparameter04</title>
+<creator>IBM</creator>
+<description>
+ The parameter entities is turned on by default. Check to see if this feature can be set
+ to false by invoking canSetParameter method. Also check that this method does not change the
+ value of parameter by checking if entity references still exist in the document.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-11-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-canSetParameter"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="acronymList" type="NodeList"/>
+<var name="acronymElem" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="first" type="Node"/>
+<var name="canSet" type="boolean"/>
+<var name="paramVal" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter obj="domConfig" var="canSet" name='"entities"' value="false"/>
+<assertTrue actual="canSet" id="canSetFalse"/>
+<!-- checking if it can be set false should not actually change it -->
+<getParameter var="paramVal" obj="domConfig" name='"entities"'/>
+<assertTrue actual="paramVal" id="stillTrue"/>
+<!-- or change the behavior of normalize document -->
+<normalizeDocument obj="doc"/>
+<getElementsByTagName var="acronymList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="acronymList" index="1" interface="NodeList"/>
+<firstChild var="first" obj="acronymElem" interface="Node"/>
+<nodeType var="nodeType" obj="first" interface="Node"/>
+<assertEquals actual="nodeType" expected="5" id="entityRefPreserved" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domconfigurationcansetparameter06.xml b/test/testcases/tests/level3/core/domconfigurationcansetparameter06.xml
new file mode 100644
index 0000000..513231c
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigurationcansetparameter06.xml
@@ -0,0 +1,57 @@
+<?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="domconfigurationcansetparameter06">
+<metadata>
+<title>domconfigurationcansetparameter06</title>
+<creator>IBM</creator>
+<description>
+Check that canSetParameter('element-content-whitespace', true) returns true
+and that canSetParameter('element-content-whitespace) does not change value of
+parameter.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-11-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-canSetParameter"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="itemList" type="NodeList"/>
+<var name="elementBody" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetFalse" type="boolean"/>
+<var name="paramVal" type="boolean"/>
+<var name="hasWhitespace" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<!-- return value may be either true or false,
+ but the call should success and not actually change the value -->
+<canSetParameter obj="domConfig" var="canSetFalse" name='"element-content-whitespace"' value="false"/>
+<getParameter var="paramVal" obj="domConfig" name='"element-content-whitespace"'/>
+<assertTrue actual="paramVal" id="stillTrue"/>
+<if><isTrue value="canSetFalse"/>
+ <!-- if it can be set false, actually set it -->
+ <setParameter obj="domConfig" name='"element-content-whitespace"' value="false"/>
+</if>
+<canSetParameter obj="domConfig" var="canSet" name='"element-content-whitespace"' value="true"/>
+<assertTrue actual="canSet" id="canSetTrue"/>
+<if><isTrue value="canSetFalse"/>
+ <getParameter var="paramVal" obj="domConfig" name='"element-content-whitespace"'/>
+ <assertFalse actual="paramVal" id="stillFalse"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/domconfigurationgetparameter01.xml b/test/testcases/tests/level3/core/domconfigurationgetparameter01.xml
new file mode 100644
index 0000000..815a061
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigurationgetparameter01.xml
@@ -0,0 +1,47 @@
+<?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="domconfigurationgetparameter01">
+<metadata>
+<title>domconfigurationgetparameter01</title>
+<creator>IBM</creator>
+<description>
+ The method getParameter returns the value of a parameter if known.
+
+ Get the DOMConfiguration object of a document and verify that the default required features are set
+ to true.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-11-07</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="param" type="DOMUserData"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<getParameter obj="domConfig" var="param" name='"comments"'/>
+<assertTrue actual="param" id="domconfigurationgetparameter01_1"/>
+<getParameter obj="domConfig" var="param" name='"cdata-sections"'/>
+<assertTrue actual="param" id="domconfigurationgetparameter01_2"/>
+<getParameter obj="domConfig" var="param" name='"entities"'/>
+<assertTrue actual="param" id="domconfigurationgetparameter01_3"/>
+<getParameter obj="domConfig" var="param" name='"namespace-declarations"'/>
+<assertTrue actual="param" id="domconfigurationgetparameter01_4"/>
+<getParameter obj="domConfig" var="param" name='"infoset"'/>
+<assertFalse actual="param" id="domconfigurationgetparameter01_5"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domconfigurationgetparameter02.xml b/test/testcases/tests/level3/core/domconfigurationgetparameter02.xml
new file mode 100644
index 0000000..e6c5838
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigurationgetparameter02.xml
@@ -0,0 +1,42 @@
+<?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="domconfigurationgetparameter02">
+<metadata>
+<title>domconfigurationgetparameter02</title>
+<creator>IBM</creator>
+<description>
+ The method getParameter returns the value of a parameter if known.
+
+ Get the DOMConfiguration object of a document and verify that a NOT_FOUND_ERR is thrown if the parameter
+ is not found.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-11-07</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="param" type="DOMUserData"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<assertDOMException id="domconfigurationgetparameter02_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<getParameter obj="domConfig" var="param" name='"not-found-param"'/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/domconfigvalidate1.xml b/test/testcases/tests/level3/core/domconfigvalidate1.xml
new file mode 100644
index 0000000..0376aa1
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigvalidate1.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigvalidate1">
+ <metadata>
+ <title>domconfigvalidate1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "validate" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"vAlIdate"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ <!-- should still be false after failed attempt -->
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setTrueNotEffective"/>
+ </else>
+ </if>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigvalidateifschema1.xml b/test/testcases/tests/level3/core/domconfigvalidateifschema1.xml
new file mode 100644
index 0000000..c572603
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigvalidateifschema1.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigvalidateifschema1">
+ <metadata>
+ <title>domconfigvalidateifschema1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "validate-if-schema" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate-if-schema"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"vAlIdate-if-schema"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setTrueEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ <!-- should still be false after failed attempt -->
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setTrueNotEffective"/>
+ </else>
+ </if>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domconfigwellformed1.xml b/test/testcases/tests/level3/core/domconfigwellformed1.xml
new file mode 100644
index 0000000..cc9f1bc
--- /dev/null
+++ b/test/testcases/tests/level3/core/domconfigwellformed1.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="domconfigwellformed1">
+ <metadata>
+ <title>domconfigwellformed1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks behavior of "well-formed" configuration parameter.</description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-well-formed"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-getParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-setParameter"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="doc" type="Document"/>
+ <var name="domConfig" type="DOMConfiguration"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="canSet" type="boolean"/>
+ <var name="state" type="boolean"/>
+ <var name="parameter" type="DOMString" value='"wElL-formed"'/>
+ <implementation var="domImpl"/>
+ <createDocument var="doc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+ <domConfig var="domConfig" obj="doc" interface="Document"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="defaultFalse"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <canSetParameter var="canSet" obj="domConfig" name="parameter" value="false"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertFalse actual="state" id="setFalseEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="domConfig" name="parameter" value="false"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ <getParameter var="state" obj="domConfig" name="parameter"/>
+ <assertTrue actual="state" id="setFalseNotEffective"/>
+ </else>
+ </if>
+ <setParameter obj="domConfig" name="parameter" value="true"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/core/domimplementationgetfeature01.xml b/test/testcases/tests/level3/core/domimplementationgetfeature01.xml
new file mode 100644
index 0000000..7575fb2
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationgetfeature01.xml
@@ -0,0 +1,38 @@
+<?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="domimplementationgetfeature01">
+<metadata>
+<title>domimplementationgetfeature01</title>
+<creator>IBM</creator>
+<description>
+ Invoke getFeature method on this DOMImplementation with the value of the feature parameter
+ as Core and version as 2.0. This should return a DOMImplmentation object that's not null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMImplementation3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="domImplReturned" type="DOMImplementation"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<getFeature var="domImplReturned" obj="domImpl" feature='"Core"' version='"2.0"' interface="DOMImplementation"/>
+<assertNotNull actual="domImplReturned" id="domimplementationgetfeature01" />
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationgetfeature02.xml b/test/testcases/tests/level3/core/domimplementationgetfeature02.xml
new file mode 100644
index 0000000..2e6a0b5
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationgetfeature02.xml
@@ -0,0 +1,39 @@
+<?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="domimplementationgetfeature02">
+<metadata>
+<title>domimplementationgetfeature02</title>
+<creator>IBM</creator>
+<description>
+ Invoke getFeature method on this DOMImplementation with the value of the feature parameter
+ as Core and version as "". This should return a DOMImplementation object that's not null.
+
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMImplementation3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="domImplReturned" type="DOMImplementation"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<getFeature var="domImplReturned" obj="domImpl" feature='"Core"' version='""' interface="DOMImplementation"/>
+<assertNotNull actual="domImplReturned" id="domimplementationgetfeature02" />
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationgetfeature03.xml b/test/testcases/tests/level3/core/domimplementationgetfeature03.xml
new file mode 100644
index 0000000..6d06910
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationgetfeature03.xml
@@ -0,0 +1,40 @@
+<?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="domimplementationgetfeature03">
+<metadata>
+<title>domimplementationgetfeature03</title>
+<creator>IBM</creator>
+<description>
+ Invoke getFeature method on this DOMImplementation with the value of the feature parameter
+ as Core and version as null. This should return a DOMImplementation object that's not null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMImplementation3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="domImplReturned" type="DOMImplementation"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<getFeature var="domImplReturned" obj="domImpl" feature='"Core"' version="nullVersion" interface="DOMImplementation"/>
+<assertNotNull actual="domImplReturned" id="domimplementationgetfeature03" />
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationgetfeature05.xml b/test/testcases/tests/level3/core/domimplementationgetfeature05.xml
new file mode 100644
index 0000000..2113dce
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationgetfeature05.xml
@@ -0,0 +1,39 @@
+<?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="domimplementationgetfeature05">
+<metadata>
+<title>domimplementationgetfeature05</title>
+<creator>IBM</creator>
+<description>
+ Invoke getFeature method on this DOMImplementation with the value of the feature parameter
+ as "" and version equal to null. This should return a null DOMObject.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMImplementation3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="domImplReturned" type="DOMImplementation"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<getFeature var="domImplReturned" obj="domImpl" feature='""' version="nullVersion" interface="DOMImplementation"/>
+<assertNull actual="domImplReturned" id="domimplementationgetFeature05" />
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationgetfeature06.xml b/test/testcases/tests/level3/core/domimplementationgetfeature06.xml
new file mode 100644
index 0000000..f34b6bd
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationgetfeature06.xml
@@ -0,0 +1,38 @@
+<?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="domimplementationgetfeature06">
+<metadata>
+<title>domimplementationgetfeature06</title>
+<creator>IBM</creator>
+<description>
+ Invoke getFeature method on this DOMImplementation with the value of the feature parameter
+ as "1-1" (some junk) and version equal to "*". This should return a null DOMObject.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMImplementation3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="domImplReturned" type="DOMImplementation"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation obj="doc" var="domImpl"/>
+<getFeature var="domImplReturned" obj="domImpl" feature='"1-1"' version='"*"' interface="DOMImplementation"/>
+<assertNull actual="domImplReturned" id="domimplementationgetfeature06" />
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry01.xml b/test/testcases/tests/level3/core/domimplementationregistry01.xml
new file mode 100644
index 0000000..9fc02aa
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry01.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry01">
+<metadata>
+<title>domimplementationregistry01</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.newInstance() (Java) or DOMImplementationRegistry global variable
+(ECMAScript) should not be null.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry02.xml b/test/testcases/tests/level3/core/domimplementationregistry02.xml
new file mode 100644
index 0000000..0505559
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry02">
+<metadata>
+<title>domimplementationregistry02</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementation("cOrE") should return a DOMImplementation
+where hasFeature("Core", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpl"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry" features='"cOrE"' interface="DOMImplementationRegistry"/>
+<assertNotNull actual="domImpl" id="domImplNotNull"/>
+<hasFeature var="hasFeature" obj="domImpl" feature='"Core"' version="nullVersion"/>
+<assertTrue actual="hasFeature" id="hasCore"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry03.xml b/test/testcases/tests/level3/core/domimplementationregistry03.xml
new file mode 100644
index 0000000..a7d2eab
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry03.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry03">
+<metadata>
+<title>domimplementationregistry03</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementation("cOrE 3.0") should return a DOMImplementation
+where hasFeature("Core", "3.0") returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpl"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry" features='"cOrE 3.0"' interface="DOMImplementationRegistry"/>
+<assertNotNull actual="domImpl" id="domImplNotNull"/>
+<hasFeature var="hasFeature" obj="domImpl" feature='"Core"' version='"3.0"'/>
+<assertTrue actual="hasFeature" id="hasCore"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry04.xml b/test/testcases/tests/level3/core/domimplementationregistry04.xml
new file mode 100644
index 0000000..6d8419b
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry04">
+<metadata>
+<title>domimplementationregistry04</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementation("+cOrE") should return a DOMImplementation
+where hasFeature("+Core", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpl"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry" features='"+cOrE"' interface="DOMImplementationRegistry"/>
+<assertNotNull actual="domImpl" id="domImplNotNull"/>
+<hasFeature var="hasFeature" obj="domImpl" feature='"+Core"' version="nullVersion"/>
+<assertTrue actual="hasFeature" id="hasCore"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry05.xml b/test/testcases/tests/level3/core/domimplementationregistry05.xml
new file mode 100644
index 0000000..e0dee44
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry05.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry05">
+<metadata>
+<title>domimplementationregistry05</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementation("+cOrE 3.0") should return a DOMImplementation
+where hasFeature("+Core", "3.0") returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpl"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry" features='"+cOrE 3.0"' interface="DOMImplementationRegistry"/>
+<assertNotNull actual="domImpl" id="domImplNotNull"/>
+<hasFeature var="hasFeature" obj="domImpl" feature='"+Core"' version='"3.0"'/>
+<assertTrue actual="hasFeature" id="hasCore"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry06.xml b/test/testcases/tests/level3/core/domimplementationregistry06.xml
new file mode 100644
index 0000000..5e0831d
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry06.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry06">
+<metadata>
+<title>domimplementationregistry06</title>
+<creator>Curt Arnold</creator>
+<description>
+If the implementation supports "XML", DOMImplementationRegistry.getDOMImplementation("xMl 3.0 cOrE") should
+return a DOMImplementation where hasFeature("XML", "3.0"), and hasFeature("Core", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpl"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry" features='"xMl 3.0 cOrE"' interface="DOMImplementationRegistry"/>
+<assertNotNull actual="domImpl" id="domImplNotNull"/>
+<hasFeature var="hasFeature" obj="domImpl" feature='"XML"' version='"3.0"'/>
+<assertTrue actual="hasFeature" id="hasXML3"/>
+<hasFeature var="hasFeature" obj="domImpl" feature='"Core"' version='nullVersion'/>
+<assertTrue actual="hasFeature" id="hasCore"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry07.xml b/test/testcases/tests/level3/core/domimplementationregistry07.xml
new file mode 100644
index 0000000..a8e0b20
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry07.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry07">
+<metadata>
+<title>domimplementationregistry07</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementation("http://www.example.com/bogus-feature 99.0") should return
+null.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpl"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry"
+ features='"http://www.example.com/bogus-feature 99.0"'
+ interface="DOMImplementationRegistry"/>
+<assertNull actual="domImpl" id="domImplNull"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry08.xml b/test/testcases/tests/level3/core/domimplementationregistry08.xml
new file mode 100644
index 0000000..0e9ec23
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry08.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry08">
+<metadata>
+<title>domimplementationregistry08</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementation("SVG") should return null or a DOMImplementation
+where hasFeature("SVG", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpl"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="baseImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry"
+ features='"SVG"'
+ interface="DOMImplementationRegistry"/>
+<if>
+ <isNull obj="domImpl"/>
+ <implementation var="baseImpl"/>
+ <hasFeature var="hasFeature" feature='"SVG"'/>
+ <assertFalse actual="hasFeature" id="baseImplSupportsSVG"/>
+ <else>
+ <hasFeature var="hasFeature" obj="domImpl" feature='"SVG"' version="nullVersion"/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry09.xml b/test/testcases/tests/level3/core/domimplementationregistry09.xml
new file mode 100644
index 0000000..76367c7
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry09.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry09">
+<metadata>
+<title>domimplementationregistry09</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementation("HTML") should return null or a DOMImplementation
+where hasFeature("HTML", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpl"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="baseImpl" type="DOMImplementation"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry"
+ features='"HTML"'
+ interface="DOMImplementationRegistry"/>
+<if>
+ <isNull obj="domImpl"/>
+ <implementation var="baseImpl"/>
+ <hasFeature var="hasFeature" feature='"HTML"' version="nullVersion"/>
+ <assertFalse actual="hasFeature" id="baseImplSupportsHTML"/>
+ <else>
+ <hasFeature var="hasFeature" obj="domImpl" feature='"HTML"' version="nullVersion"/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry10.xml b/test/testcases/tests/level3/core/domimplementationregistry10.xml
new file mode 100644
index 0000000..3b19ef2
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry10.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry10">
+<metadata>
+<title>domimplementationregistry10</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementation("LS") should return null or a DOMImplementation
+where hasFeature("LS", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpl"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="baseImpl" type="DOMImplementation"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry"
+ features='"LS"'
+ interface="DOMImplementationRegistry"/>
+<if>
+ <isNull obj="domImpl"/>
+ <implementation var="baseImpl"/>
+ <hasFeature var="hasFeature" feature='"LS"' version="nullVersion"/>
+ <assertFalse actual="hasFeature" id="baseImplSupportsLS"/>
+ <else>
+ <hasFeature var="hasFeature" obj="domImpl" feature='"LS"' version="nullVersion"/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry11.xml b/test/testcases/tests/level3/core/domimplementationregistry11.xml
new file mode 100644
index 0000000..7636017
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry11.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry11">
+<metadata>
+<title>domimplementationregistry11</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementation("XPath") should return null or a DOMImplementation
+where hasFeature("XPath", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpl"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="baseImpl" type="DOMImplementation"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry"
+ features='"XPath"'
+ interface="DOMImplementationRegistry"/>
+<if>
+ <isNull obj="domImpl"/>
+ <implementation var="baseImpl"/>
+ <hasFeature var="hasFeature" feature='"XPath"' version="nullVersion"/>
+ <assertFalse actual="hasFeature" id="baseImplSupportsLS"/>
+ <else>
+ <hasFeature var="hasFeature" obj="domImpl" feature='"XPath"' version="nullVersion"/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry12.xml b/test/testcases/tests/level3/core/domimplementationregistry12.xml
new file mode 100644
index 0000000..5c7ff6f
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry12.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry12">
+<metadata>
+<title>domimplementationregistry12</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementation("cOrE 3.0 xMl 3.0 eVeNts 2.0 lS") should return null
+or a DOMImplementation that implements the specified features.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpl"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasCore" type="boolean"/>
+<var name="hasXML" type="boolean"/>
+<var name="hasEvents" type="boolean"/>
+<var name="hasLS" type="boolean"/>
+<var name="baseImpl" type="DOMImplementation"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry"
+ features='"cOrE 3.0 xMl 3.0 eVeNts 2.0 lS"'
+ interface="DOMImplementationRegistry"/>
+<if>
+ <isNull obj="domImpl"/>
+ <implementation var="baseImpl"/>
+ <hasFeature var="hasCore" obj="baseImpl" feature='"Core"' version='"3.0"'/>
+ <hasFeature var="hasXML" obj="baseImpl" feature='"XML"' version='"3.0"'/>
+ <hasFeature var="hasEvents" obj="baseImpl" feature='"Events"' version='"2.0"'/>
+ <hasFeature var="hasLS" obj="baseImpl" feature='"LS"' version='nullVersion'/>
+ <assertFalse id="baseImplFeatures">
+ <and>
+ <isTrue value="hasCore"/>
+ <isTrue value="hasXML"/>
+ <isTrue value="hasEvents"/>
+ <isTrue value="hasLS"/>
+ </and>
+ </assertFalse>
+ <else>
+ <hasFeature var="hasCore" obj="domImpl" feature='"Core"' version='"3.0"'/>
+ <assertTrue actual="hasCore" id="hasCore"/>
+ <hasFeature var="hasXML" obj="domImpl" feature='"XML"' version='"3.0"'/>
+ <assertTrue actual="hasXML" id="hasXML"/>
+ <hasFeature var="hasEvents" obj="domImpl" feature='"Events"' version='"2.0"'/>
+ <assertTrue actual="hasEvents" id="hasEvents"/>
+ <hasFeature var="hasLS" obj="domImpl" feature='"LS"' version='nullVersion'/>
+ <assertTrue actual="hasLS" id="hasLS"/>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry13.xml b/test/testcases/tests/level3/core/domimplementationregistry13.xml
new file mode 100644
index 0000000..6ad3334
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry13.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry13">
+<metadata>
+<title>domimplementationregistry13</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementationList("cOrE") should return a
+list of at least one DOMImplementation
+where hasFeature("Core", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMImplementationList-item"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMImplementationList-length"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="hasFeature" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry" features='"cOrE"' interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<item var="domImpl" obj="domImplList" index="length" interface="DOMImplementationList"/>
+<assertNull actual="domImpl" id="item_Length_shouldBeNull"/>
+<assertTrue id="atLeastOne">
+ <greater actual="length" expected="0"/>
+</assertTrue>
+<for-each collection="domImplList" member="domImpl">
+ <hasFeature var="hasFeature" obj="domImpl" feature='"Core"' version="nullVersion"/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry14.xml b/test/testcases/tests/level3/core/domimplementationregistry14.xml
new file mode 100644
index 0000000..81e7f90
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry14.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry14">
+<metadata>
+<title>domimplementationregistry14</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementationList("cOrE 3.0") should return
+a list of DOMImplementation
+where hasFeature("Core", "3.0") returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry" features='"cOrE 3.0"' interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<assertTrue id="atLeastOne">
+ <greater actual="length" expected="0"/>
+</assertTrue>
+<for-each collection="domImplList" member="domImpl">
+ <hasFeature var="hasFeature" obj="domImpl" feature='"Core"' version='"3.0"'/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry15.xml b/test/testcases/tests/level3/core/domimplementationregistry15.xml
new file mode 100644
index 0000000..17c5d6b
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry15.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry15">
+<metadata>
+<title>domimplementationregistry15</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementationList("+cOrE") should return
+list of DOMImplementation
+where hasFeature("+Core", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry" features='"+cOrE"' interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<assertTrue id="atLeastOne">
+ <greater actual="length" expected="0"/>
+</assertTrue>
+<for-each collection="domImplList" member="domImpl">
+ <hasFeature var="hasFeature" obj="domImpl" feature='"+Core"' version="nullVersion"/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry16.xml b/test/testcases/tests/level3/core/domimplementationregistry16.xml
new file mode 100644
index 0000000..56af99a
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry16.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry16">
+<metadata>
+<title>domimplementationregistry16</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementationList("+cOrE 3.0") should return
+a list of DOMImplementation
+where hasFeature("+Core", "3.0") returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry" features='"+cOrE 3.0"' interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<assertTrue id="atLeastOne">
+ <greater actual="length" expected="0"/>
+</assertTrue>
+<for-each collection="domImplList" member="domImpl">
+ <hasFeature var="hasFeature" obj="domImpl" feature='"+Core"' version='"3.0"'/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry17.xml b/test/testcases/tests/level3/core/domimplementationregistry17.xml
new file mode 100644
index 0000000..310d4e7
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry17.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry17">
+<metadata>
+<title>domimplementationregistry17</title>
+<creator>Curt Arnold</creator>
+<description>
+If the implementation supports "XML", DOMImplementationRegistry.getDOMImplementationList("xMl 3.0 cOrE") should
+return a list of DOMImplementation where hasFeature("XML", "3.0"), and hasFeature("Core", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry" features='"xMl 3.0 cOrE"' interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<assertTrue id="atLeastOne">
+ <greater actual="length" expected="0"/>
+</assertTrue>
+<for-each collection="domImplList" member="domImpl">
+ <hasFeature var="hasFeature" obj="domImpl" feature='"XML"' version='"3.0"'/>
+ <assertTrue actual="hasFeature" id="hasXML3"/>
+ <hasFeature var="hasFeature" obj="domImpl" feature='"Core"' version='nullVersion'/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+</for-each>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry18.xml b/test/testcases/tests/level3/core/domimplementationregistry18.xml
new file mode 100644
index 0000000..9217ba0
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry18.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry18">
+<metadata>
+<title>domimplementationregistry18</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementationList("http://www.example.com/bogus-feature 99.0")
+should return a zero-length list.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry"
+ features='"http://www.example.com/bogus-feature 99.0"'
+ interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<assertEquals actual="length" expected="0" ignoreCase="false" id="emptyList"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry19.xml b/test/testcases/tests/level3/core/domimplementationregistry19.xml
new file mode 100644
index 0000000..6086e9b
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry19.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry19">
+<metadata>
+<title>domimplementationregistry19</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementationList("SVG") should return
+zero-length list or a list of DOMImplementation
+where hasFeature("SVG", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="baseImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry"
+ features='"SVG"'
+ interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<if>
+ <equals actual="length" expected="0" ignoreCase="false"/>
+ <implementation var="baseImpl"/>
+ <hasFeature var="hasFeature" feature='"SVG"'/>
+ <assertFalse actual="hasFeature" id="baseImplSupportsSVG"/>
+ <else>
+ <for-each collection="domImplList" member="domImpl">
+ <hasFeature var="hasFeature" obj="domImpl" feature='"SVG"' version="nullVersion"/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+ </for-each>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry20.xml b/test/testcases/tests/level3/core/domimplementationregistry20.xml
new file mode 100644
index 0000000..12233e4
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry20.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry20">
+<metadata>
+<title>domimplementationregistry20</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementationList("HTML") should return
+an empty list or a list of DOMImplementation
+where hasFeature("HTML", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="baseImpl" type="DOMImplementation"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry"
+ features='"HTML"'
+ interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<if>
+ <equals actual="length" expected="0" ignoreCase="false"/>
+ <implementation var="baseImpl"/>
+ <hasFeature var="hasFeature" feature='"HTML"' version="nullVersion"/>
+ <assertFalse actual="hasFeature" id="baseImplSupportsHTML"/>
+ <else>
+ <for-each collection="domImplList" member="domImpl">
+ <hasFeature var="hasFeature" obj="domImpl" feature='"HTML"' version="nullVersion"/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+ </for-each>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry21.xml b/test/testcases/tests/level3/core/domimplementationregistry21.xml
new file mode 100644
index 0000000..9f9e7d9
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry21.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry21">
+<metadata>
+<title>domimplementationregistry21</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementationList("LS") should return
+a empty list or a list of DOMImplementation
+where hasFeature("LS", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="baseImpl" type="DOMImplementation"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry"
+ features='"LS"'
+ interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<if>
+ <equals actual="length" expected="0" ignoreCase="false"/>
+ <implementation var="baseImpl"/>
+ <hasFeature var="hasFeature" feature='"LS"' version="nullVersion"/>
+ <assertFalse actual="hasFeature" id="baseImplSupportsLS"/>
+ <else>
+ <for-each collection="domImplList" member="domImpl">
+ <hasFeature var="hasFeature" obj="domImpl" feature='"LS"' version="nullVersion"/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+ </for-each>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry22.xml b/test/testcases/tests/level3/core/domimplementationregistry22.xml
new file mode 100644
index 0000000..405c7ab
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry22.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry22">
+<metadata>
+<title>domimplementationregistry22</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementationList("XPath") should return
+an empty list or a list of DOMImplementation
+where hasFeature("XPath", null) returns true.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasFeature" type="boolean"/>
+<var name="baseImpl" type="DOMImplementation"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry"
+ features='"XPath"'
+ interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<if>
+ <equals actual="length" expected="0" ignoreCase="false"/>
+ <implementation var="baseImpl"/>
+ <hasFeature var="hasFeature" feature='"XPath"' version="nullVersion"/>
+ <assertFalse actual="hasFeature" id="baseImplSupportsLS"/>
+ <else>
+ <for-each collection="domImplList" member="domImpl">
+ <hasFeature var="hasFeature" obj="domImpl" feature='"XPath"' version="nullVersion"/>
+ <assertTrue actual="hasFeature" id="hasCore"/>
+ </for-each>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry23.xml b/test/testcases/tests/level3/core/domimplementationregistry23.xml
new file mode 100644
index 0000000..cb7f5fa
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry23.xml
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry23">
+<metadata>
+<title>domimplementationregistry23</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementationList("cOrE 3.0 xMl 3.0 eVeNts 2.0 lS")
+should return an empty list or a list of DOMImplementation that implements the specified features.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="hasCore" type="boolean"/>
+<var name="hasXML" type="boolean"/>
+<var name="hasEvents" type="boolean"/>
+<var name="hasLS" type="boolean"/>
+<var name="baseImpl" type="DOMImplementation"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry"
+ features='"cOrE 3.0 xMl 3.0 eVeNts 2.0 lS"'
+ interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<if>
+ <equals actual="length" expected="0" ignoreCase="false"/>
+ <implementation var="baseImpl"/>
+ <hasFeature var="hasCore" obj="baseImpl" feature='"Core"' version='"3.0"'/>
+ <hasFeature var="hasXML" obj="baseImpl" feature='"XML"' version='"3.0"'/>
+ <hasFeature var="hasEvents" obj="baseImpl" feature='"Events"' version='"2.0"'/>
+ <hasFeature var="hasLS" obj="baseImpl" feature='"LS"' version='nullVersion'/>
+ <assertFalse id="baseImplFeatures">
+ <and>
+ <isTrue value="hasCore"/>
+ <isTrue value="hasXML"/>
+ <isTrue value="hasEvents"/>
+ <isTrue value="hasLS"/>
+ </and>
+ </assertFalse>
+ <else>
+ <for-each collection="domImplList" member="domImpl">
+ <hasFeature var="hasCore" obj="domImpl" feature='"Core"' version='"3.0"'/>
+ <assertTrue actual="hasCore" id="hasCore"/>
+ <hasFeature var="hasXML" obj="domImpl" feature='"XML"' version='"3.0"'/>
+ <assertTrue actual="hasXML" id="hasXML"/>
+ <hasFeature var="hasEvents" obj="domImpl" feature='"Events"' version='"2.0"'/>
+ <assertTrue actual="hasEvents" id="hasEvents"/>
+ <hasFeature var="hasLS" obj="domImpl" feature='"LS"' version='nullVersion'/>
+ <assertTrue actual="hasLS" id="hasLS"/>
+ </for-each>
+ </else>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry24.xml b/test/testcases/tests/level3/core/domimplementationregistry24.xml
new file mode 100644
index 0000000..e6d0622
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry24.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry24">
+<metadata>
+<title>domimplementationregistry24</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementation("") should return an implementation.
+</description>
+<date qualifier="created">2004-03-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom/2004JanMar/0111.html"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImpl" type="DOMImplementation"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementation var="domImpl" obj="domImplRegistry"
+ features='""'
+ interface="DOMImplementationRegistry"/>
+<assertNotNull actual="domImpl" id="domImplNotNull"/>
+</test>
diff --git a/test/testcases/tests/level3/core/domimplementationregistry25.xml b/test/testcases/tests/level3/core/domimplementationregistry25.xml
new file mode 100644
index 0000000..5640043
--- /dev/null
+++ b/test/testcases/tests/level3/core/domimplementationregistry25.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="domimplementationregistry25">
+<metadata>
+<title>domimplementationregistry25</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementationRegistry.getDOMImplementationList("cOrE 3.0 xMl 3.0 eVeNts 2.0 lS")
+should return an empty list or a list of DOMImplementation that implements the specified features.
+</description>
+<date qualifier="created">2004-03-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/ecma-script-binding"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-getDOMImpls"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom/2004JanMar/0111.html"/>
+</metadata>
+<var name="domImplRegistry" type="DOMImplementationRegistry"/>
+<var name="domImplList" type="DOMImplementationList"/>
+<var name="length" type="int"/>
+<DOMImplementationRegistry.newInstance var="domImplRegistry"/>
+<assertNotNull actual="domImplRegistry" id="domImplRegistryNotNull"/>
+<getDOMImplementationList var="domImplList" obj="domImplRegistry"
+ features='""'
+ interface="DOMImplementationRegistry"/>
+<length var="length" obj="domImplList" interface="DOMImplementationList"/>
+<assertTrue id="atLeastOne"><greater actual="length" expected="0"/></assertTrue>
+</test>
diff --git a/test/testcases/tests/level3/core/domstringlistcontains01.xml b/test/testcases/tests/level3/core/domstringlistcontains01.xml
new file mode 100644
index 0000000..5f7c62f
--- /dev/null
+++ b/test/testcases/tests/level3/core/domstringlistcontains01.xml
@@ -0,0 +1,42 @@
+<?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="domstringlistcontains01">
+<metadata>
+<title>domstringlistcontains01</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of DOMStringList.contains by searching DOMConfig parameter
+names for "comments" and "".
+</description>
+<date qualifier="created">2004-01-12</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMStringList-contains"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-parameterNames"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="paramList" type="DOMStringList"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="contains" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<parameterNames obj="domConfig" var="paramList"/>
+<contains var="contains" obj="paramList" str='"comments"' interface="DOMStringList"/>
+<assertTrue actual="contains" id="paramsContainComments"/>
+<contains var="contains" obj="paramList" str='""' interface="DOMStringList"/>
+<assertFalse actual="contains" id="paramsDoesntContainEmpty"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/domstringlistcontains02.xml b/test/testcases/tests/level3/core/domstringlistcontains02.xml
new file mode 100644
index 0000000..74a2279
--- /dev/null
+++ b/test/testcases/tests/level3/core/domstringlistcontains02.xml
@@ -0,0 +1,59 @@
+<?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="domstringlistcontains02">
+<metadata>
+<title>domstringlistcontains02</title>
+<creator>IBM</creator>
+<description>
+ The contains method of the DOMStringList tests if a string is part of this DOMStringList.
+
+ Invoke the contains method on the list searching for several of the parameters recognized by the
+ DOMConfiguration object.
+ Verify that the list contains features that are required and supported by this DOMConfiguration object.
+ Verify that the contains method returns false for a string that is not contained in this DOMStringList.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMStringList-contains"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="paramList" type="DOMStringList"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="contain" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<parameterNames obj="domConfig" var="paramList"/>
+
+<contains obj="paramList" var="contain" str='"comments"' interface="DOMStringList"/>
+<assertTrue actual="contain" id="domstringlistcontains02_1"/>
+<contains obj="paramList" var="contain" str='"cdata-sections"' interface="DOMStringList"/>
+<assertTrue actual="contain" id="domstringlistcontains02_2"/>
+<contains obj="paramList" var="contain" str='"entities"' interface="DOMStringList"/>
+<assertTrue actual="contain" id="domstringlistcontains02_3"/>
+<contains obj="paramList" var="contain" str='"error-handler"' interface="DOMStringList"/>
+<assertTrue actual="contain" id="domstringlistcontains02_4"/>
+<contains obj="paramList" var="contain" str='"infoset"' interface="DOMStringList"/>
+<assertTrue actual="contain" id="domstringlistcontains02_5"/>
+<contains obj="paramList" var="contain" str='"namespace-declarations"' interface="DOMStringList"/>
+<assertTrue actual="contain" id="domstringlistcontains02_6"/>
+<contains obj="paramList" var="contain" str='"element-content-whitespace"' interface="DOMStringList"/>
+<assertTrue actual="contain" id="domstringlistcontains02_7"/>
+<contains obj="paramList" var="contain" str='"test"' interface="DOMStringList"/>
+<assertFalse actual="contain" id="domstringlistcontains02_8"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/domstringlistgetlength01.xml b/test/testcases/tests/level3/core/domstringlistgetlength01.xml
new file mode 100644
index 0000000..3850874
--- /dev/null
+++ b/test/testcases/tests/level3/core/domstringlistgetlength01.xml
@@ -0,0 +1,45 @@
+<?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="domstringlistgetlength01">
+<metadata>
+<title>domstringlistgetlength01</title>
+<creator>IBM</creator>
+<description>
+ The length attribute of the DOMStringList returns the number of DOMStrings in the list.
+ The range of valid child node indices is 0 to length-1 inclusive.
+
+ Invoke the length on the list of parameters returned by the DOMConfiguration object.
+ Verify that the list is not null and length is not 0.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMStringList-length"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-parameterNames"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="paramList" type="DOMStringList"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="listSize" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<parameterNames obj="domConfig" var="paramList"/>
+<assertNotNull actual="paramList" id="domstringlistgetlength01_notNull"/>
+<length obj="paramList" var="listSize" interface="DOMStringList"/>
+<assertNotEquals actual="listSize" expected="0" id="domstringlistgetlength01_notZero" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/domstringlistitem01.xml b/test/testcases/tests/level3/core/domstringlistitem01.xml
new file mode 100644
index 0000000..a9187d2
--- /dev/null
+++ b/test/testcases/tests/level3/core/domstringlistitem01.xml
@@ -0,0 +1,49 @@
+<?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="domstringlistitem01">
+<metadata>
+<title>domstringlistitem01</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of DOMStringList.item by accessing items 0 and length-1 and expecting
+a string and accessing items out of range and expecting null.
+</description>
+<date qualifier="created">2004-01-12</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMStringList-item"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-parameterNames"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="paramList" type="DOMStringList"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="contains" type="boolean"/>
+<var name="length" type="int"/>
+<var name="index" type="int"/>
+<var name="parameter" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<parameterNames obj="domConfig" var="paramList"/>
+<length var="length" obj="paramList" interface="DOMStringList"/>
+<item var="parameter" obj="paramList" index="0" interface="DOMStringList"/>
+<assertNotNull actual="parameter" id="item0NotNull"/>
+<item var="parameter" obj="paramList" index="length" interface="DOMStringList"/>
+<assertNull actual="parameter" id="itemLengthNull"/>
+<decrement var="length" value="1"/>
+<item var="parameter" obj="paramList" index="length" interface="DOMStringList"/>
+<assertNotNull actual="parameter" id="itemLengthMinus1NotNull"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/domstringlistitem02.xml b/test/testcases/tests/level3/core/domstringlistitem02.xml
new file mode 100644
index 0000000..7180a78
--- /dev/null
+++ b/test/testcases/tests/level3/core/domstringlistitem02.xml
@@ -0,0 +1,45 @@
+<?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="domstringlistitem02">
+<metadata>
+<title>domstringlistitem02</title>
+<creator>IBM</creator>
+<description>
+ The item method of the DOMStringList Returns the indexth item in the collection.
+ If index is greater than or equal to the number of DOMStrings in the list, this returns null.
+
+ Invoke the first item on the list of parameters returned by the DOMConfiguration object and
+ make sure it is not null. Then invoke the 100th item and verify that null is returned.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMStringList-item"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="paramList" type="DOMStringList"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="listSize" type="int"/>
+<var name="retStr" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<parameterNames obj="domConfig" var="paramList"/>
+<item obj="paramList" var="retStr" index="0" interface="DOMStringList"/>
+<assertNotNull actual="retStr" id="domstringlistitem02_notNull"/>
+<item obj="paramList" var="retStr" index="100" interface="DOMStringList"/>
+<assertNull actual="retStr" id="domstringlistitem02_null"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/elementcontentwhitespace01.xml b/test/testcases/tests/level3/core/elementcontentwhitespace01.xml
new file mode 100644
index 0000000..a82f071
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementcontentwhitespace01.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="elementcontentwhitespace01">
+<metadata>
+<title>elementcontentwhitespace01</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with element-content-whitespace set to true, check that
+whitespace in element content is preserved.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-element-content-whitespace"/>
+</metadata>
+<!-- required for normalizationDocument -->
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="bodyList" type="NodeList"/>
+<var name="body" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="childType" type="int"/>
+<var name="text" type="Text"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"element-content-whitespace"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName
+ var="bodyList"
+ obj="doc"
+ tagname='"body"'
+ interface="Document"/>
+<item var="body" obj="bodyList" interface="NodeList" index="0"/>
+<firstChild var="child" obj="body" interface="Node"/>
+<nodeType var="childType" obj="child"/>
+<!-- if first child was an element
+ whitespace has been eliminated, add some back -->
+<if><equals actual="childType" expected="1" ignoreCase="false"/>
+ <createTextNode var="text" obj="doc" data='" "'/>
+ <insertBefore var="child" obj="body" newChild="text" refChild="child"/>
+</if>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName
+ var="bodyList"
+ obj="doc"
+ tagname='"body"'
+ interface="Document"/>
+<item var="body" obj="bodyList" interface="NodeList" index="0"/>
+<firstChild var="child" obj="body" interface="Node"/>
+<assertNotNull actual="child" id="firstChildNotNull"/>
+<!-- this should be a Text node -->
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"#text"' ignoreCase="false" id="firstChild"/>
+<nextSibling var="child" obj="child" interface="Node"/>
+<assertNotNull actual="child" id="secondChildNotNull"/>
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"p"' ignoreCase="false" id="secondChild"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/elementcontentwhitespace02.xml b/test/testcases/tests/level3/core/elementcontentwhitespace02.xml
new file mode 100644
index 0000000..15f2153
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementcontentwhitespace02.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="elementcontentwhitespace02">
+<metadata>
+<title>elementcontentwhitespace02</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with element-content-whitespace set to false and validation set to true, check that
+whitespace in element content is eliminated.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-element-content-whitespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="bodyList" type="NodeList"/>
+<var name="body" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"element-content-whitespace"' value="false"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSet"/>
+ </and>
+ <setParameter obj="domConfig" name='"element-content-whitespace"' value="false"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagName
+ var="bodyList"
+ obj="doc"
+ tagname='"body"'
+ interface="Document"/>
+ <item var="body" obj="bodyList" interface="NodeList" index="0"/>
+ <firstChild var="child" obj="body" interface="Node"/>
+ <assertNotNull actual="child" id="firstChildNotNull"/>
+ <!-- if normalization was successful this should be a "p" element -->
+ <nodeName var="childName" obj="child"/>
+ <assertEquals actual="childName" expected='"p"' ignoreCase="false" id="firstChild"/>
+ <nextSibling var="child" obj="child" interface="Node"/>
+ <assertNull actual="child" id="secondChild"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/elementcontentwhitespace03.xml b/test/testcases/tests/level3/core/elementcontentwhitespace03.xml
new file mode 100644
index 0000000..7360ba3
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementcontentwhitespace03.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="elementcontentwhitespace03">
+<metadata>
+<title>elementcontentwhitespace03</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document using Node.normalize with element-content-whitespace set to false and validation set to true, check that
+whitespace in element content is preserved.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-element-content-whitespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="bodyList" type="NodeList"/>
+<var name="body" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="text" type="Text"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<!-- if we discarded whitespace on parse, add some back -->
+<if><implementationAttribute name="ignoringElementContentWhitespace" value="true"/>
+ <getElementsByTagName
+ var="bodyList"
+ obj="doc"
+ tagname='"body"'
+ interface="Document"/>
+ <item var="body" obj="bodyList" interface="NodeList" index="0"/>
+ <firstChild var="child" obj="body" interface="Node"/>
+ <createTextNode var="text" obj="doc" data='" "'/>
+ <insertBefore var="child" obj="body" newChild="text" refChild="child"/>
+</if>
+<canSetParameter var="canSet" obj="domConfig" name='"element-content-whitespace"' value="false"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"element-content-whitespace"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalize obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName
+ var="bodyList"
+ obj="doc"
+ tagname='"body"'
+ interface="Document"/>
+<item var="body" obj="bodyList" interface="NodeList" index="0"/>
+<firstChild var="child" obj="body" interface="Node"/>
+<assertNotNull actual="child" id="firstChildNotNull"/>
+<!-- this should be a Text node -->
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"#text"' ignoreCase="false" id="firstChild"/>
+<nextSibling var="child" obj="child" interface="Node"/>
+<assertNotNull actual="child" id="secondChildNotNull"/>
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"p"' ignoreCase="false" id="secondChild"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/elementgetschematypeinfo01.xml b/test/testcases/tests/level3/core/elementgetschematypeinfo01.xml
new file mode 100644
index 0000000..e8f9816
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementgetschematypeinfo01.xml
@@ -0,0 +1,48 @@
+<?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="elementgetschematypeinfo01">
+<metadata>
+<title>elementgetschematypeinfo01</title>
+<creator>Curt Arnold</creator>
+<description>
+Call getSchemaTypeInfo on title attribute for the first "em" element from DTD validated document.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Element-schemaTypeInfo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeNamespace"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="typeNS" type="DOMString"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertNull actual="typeName" id="nameIsNull"/>
+<typeNamespace var="typeNS" obj="typeInfo"/>
+<assertNull actual="typeNS" id="nsIsNull"/>
+
+</test>
diff --git a/test/testcases/tests/level3/core/elementgetschematypeinfo02.xml b/test/testcases/tests/level3/core/elementgetschematypeinfo02.xml
new file mode 100644
index 0000000..d5cc405
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementgetschematypeinfo02.xml
@@ -0,0 +1,47 @@
+<?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="elementgetschematypeinfo02">
+<metadata>
+<title>elementgetschematypeinfo02</title>
+<creator>Curt Arnold</creator>
+<description>
+Call getSchemaTypeInfo on title attribute for the first "em" element from schema-validated document.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Element-schemaTypeInfo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeNamespace"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="typeNS" type="DOMString"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"emType"' ignoreCase="false" id="nameIsEmType"/>
+<typeNamespace var="typeNS" obj="typeInfo"/>
+<assertEquals actual="typeNS" expected='"http://www.w3.org/1999/xhtml"' ignoreCase="false" id="nsIsXML"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementgetschematypeinfo03.xml b/test/testcases/tests/level3/core/elementgetschematypeinfo03.xml
new file mode 100644
index 0000000..3a862f6
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementgetschematypeinfo03.xml
@@ -0,0 +1,47 @@
+<?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="elementgetschematypeinfo03">
+<metadata>
+<title>elementgetschematypeinfo03</title>
+<creator>Curt Arnold</creator>
+<description>
+Element.schemaTypeInfo should return null if not validating or schema validating.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Element-schemaTypeInfo"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeNamespace"/>
+</metadata>
+<implementationAttribute name="validating" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="typeNS" type="DOMString"/>
+<load var="doc" href="hc_nodtdstaff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertNull actual="typeName" id="typeName"/>
+<typeNamespace var="typeNS" obj="typeInfo"/>
+<assertNull actual="typeNS" id="typeNS"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementgetschematypeinfo04.xml b/test/testcases/tests/level3/core/elementgetschematypeinfo04.xml
new file mode 100644
index 0000000..f2a468c
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementgetschematypeinfo04.xml
@@ -0,0 +1,51 @@
+<?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="elementgetschematypeinfo04">
+<metadata>
+<title>elementgetschematypeinfo04</title>
+<creator>IBM</creator>
+<description>
+ The getSchemaTypeInfo method retrieves the type information associated with this element.
+
+ Load a valid document with an XML Schema.
+ Invoke getSchemaTypeInfo method on an element having [type definition] property. Expose {name} and {target namespace}
+ properties of the [type definition] property. Verity that the typeName and typeNamespace of the code element's
+ schemaTypeInfo are correct.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-28</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Element-schemaTypeInfo"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="codeElem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="typeNamespace" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="docElemNodeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"code"' interface="Document"/>
+<item var="codeElem" obj="elemList" index="1" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="codeElem" interface="Element"/>
+<typeName var="typeName" obj="elemTypeInfo"/>
+<typeNamespace var="typeNamespace" obj="elemTypeInfo"/>
+<assertEquals expected='"code"' actual="typeName" id="elementgetschematypeinfo04_typeName" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/1999/xhtml"' actual="typeNamespace" id="elementgetschematypeinfo04_typeNamespace" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementgetschematypeinfo05.xml b/test/testcases/tests/level3/core/elementgetschematypeinfo05.xml
new file mode 100644
index 0000000..b13fea6
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementgetschematypeinfo05.xml
@@ -0,0 +1,51 @@
+<?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="elementgetschematypeinfo05">
+<metadata>
+<title>elementgetschematypeinfo05</title>
+<creator>IBM</creator>
+<description>
+ The getSchemaTypeInfo method retrieves the type information associated with this element.
+
+ Load a valid document with an XML Schema.
+ Invoke getSchemaTypeInfo method on an element having [type definition] property. Expose {name} and {target namespace}
+ properties of the [type definition] property. Verity that the typeName and typeNamespace of the acronym element's
+ schemaTypeInfo are correct.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-28</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Element-schemaTypeInfo"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="acElem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="typeNamespace" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="docElemNodeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"span"' interface="Document"/>
+<item var="acElem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="acElem" interface="Element"/>
+<typeName var="typeName" obj="elemTypeInfo"/>
+<typeNamespace var="typeNamespace" obj="elemTypeInfo"/>
+<assertEquals expected='"string"' actual="typeName" id="typeNameString" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/2001/XMLSchema"' actual="typeNamespace" id="typeNsXSD" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementgetschematypeinfo06.xml b/test/testcases/tests/level3/core/elementgetschematypeinfo06.xml
new file mode 100644
index 0000000..ae51e59
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementgetschematypeinfo06.xml
@@ -0,0 +1,51 @@
+<?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="elementgetschematypeinfo06">
+<metadata>
+<title>elementgetschematypeinfo06</title>
+<creator>IBM</creator>
+<description>
+ The getSchemaTypeInfo method retrieves the type information associated with this element.
+
+ Load a valid document with an XML Schema.
+ Invoke getSchemaTypeInfo method on an element having [type definition] property. Expose {name} and {target namespace}
+ properties of the [type definition] property. Verity that the typeName and typeNamespace of the strong element's
+ schemaTypeInfo are correct.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-28</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Element-schemaTypeInfo"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="strongElem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="typeNamespace" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="docElemNodeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="strongElem" obj="elemList" index="1" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="strongElem" interface="Element"/>
+<typeName var="typeName" obj="elemTypeInfo"/>
+<typeNamespace var="typeNamespace" obj="elemTypeInfo"/>
+<assertEquals expected='"strongType"' actual="typeName" id="elementgetschematypeinfo06_typeName" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/1999/xhtml"' actual="typeNamespace" id="elementgetschematypeinfo06_typeNamespace" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementgetschematypeinfo07.xml b/test/testcases/tests/level3/core/elementgetschematypeinfo07.xml
new file mode 100644
index 0000000..44508b7
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementgetschematypeinfo07.xml
@@ -0,0 +1,51 @@
+<?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="elementgetschematypeinfo07">
+<metadata>
+<title>elementgetschematypeinfo07</title>
+<creator>IBM</creator>
+<description>
+ The getSchemaTypeInfo method retrieves the type information associated with this element.
+
+ Load a valid document with an XML Schema.
+ Invoke getSchemaTypeInfo method on an element having [type definition] property. Expose {name} and {target namespace}
+ properties of the [type definition] property. Verity that the typeName and typeNamespace of the name element's
+ schemaTypeInfo are correct.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-28</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Element-schemaTypeInfo"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="supElem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="typeNamespace" type="DOMString"/>
+<var name="docElemNodeName" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"sup"' interface="Document"/>
+<item var="supElem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="supElem" interface="Element"/>
+<typeName var="typeName" obj="elemTypeInfo"/>
+<typeNamespace var="typeNamespace" obj="elemTypeInfo"/>
+<assertEquals expected='"sup"' actual="typeName" id="elementgetschematypeinfo07_typeName" ignoreCase="false"/>
+<assertEquals expected='"http://www.w3.org/1999/xhtml"' actual="typeNamespace" id="elementgetschematypeinfo07_typeNamespace" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattribute01.xml b/test/testcases/tests/level3/core/elementsetidattribute01.xml
new file mode 100644
index 0000000..d4d9bc3
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattribute01.xml
@@ -0,0 +1,54 @@
+<?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="elementsetidattribute01">
+<metadata>
+<title>elementsetidattribute01</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttribute on the third acronym element's class attribute. Verify by calling isID
+ on the class attribute and getElementById on document. Invoke setIdAttribute again to reset.
+ Calling isID should return false.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<setIdAttribute obj="acronymElem" name='"class"' isId="true"/>
+<attributes var="attributesMap" obj="acronymElem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsIdTrue01"/>
+<getElementById obj="doc" var="elem" elementId='"No"'/>
+<tagName obj="elem" var="elemName"/>
+<assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributeGetElementById01" ignoreCase="false"/>
+<setIdAttribute obj="acronymElem" name='"class"' isId="false"/>
+<isId var="id" obj="attr"/>
+<assertFalse actual="id" id="elementsetidattributeIsIdFalse01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattribute03.xml b/test/testcases/tests/level3/core/elementsetidattribute03.xml
new file mode 100644
index 0000000..0af56b6
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattribute03.xml
@@ -0,0 +1,55 @@
+<?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="elementsetidattribute03">
+<metadata>
+<title>elementsetidattribute03</title>
+<creator>IBM</creator>
+<description>
+ First use setAttribute to change the class attribute of the third acronym element. Invoke setIdAttribute
+ on the newly set attribute. Verify by calling isID on the new attribute and getElementById on document.
+ Invoke setIdAttribute again to reset. Calling isID should return false.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<setAttribute obj="acronymElem" name= '"class"' value='"Maybe"'/>
+<setIdAttribute obj="acronymElem" name='"class"' isId="true"/>
+<attributes var="attributesMap" obj="acronymElem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsIdTrue03"/>
+<getElementById obj="doc" var="elem" elementId='"Maybe"'/>
+<tagName obj="elem" var="elemName"/>
+<assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributeGetElementById03" ignoreCase="false"/>
+<setIdAttribute obj="acronymElem" name='"class"' isId="false"/>
+<isId var="id" obj="attr"/>
+<assertFalse actual="id" id="elementsetidattributeIsIdFalse03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattribute04.xml b/test/testcases/tests/level3/core/elementsetidattribute04.xml
new file mode 100644
index 0000000..57b90a7
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattribute04.xml
@@ -0,0 +1,55 @@
+<?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="elementsetidattribute04">
+<metadata>
+<title>elementsetidattribute04</title>
+<creator>IBM</creator>
+<description>
+ First use setAttribute to create a new attribute on the third strong element. Invoke setIdAttribute
+ on the new attribute. Verify by calling isID on the new attribute and getElementById on document.
+ Invoke setIdAttribute again to reset. Calling isID should return false.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="nameElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="nameElem" obj="elemList" index="2" interface="NodeList"/>
+<setAttribute obj="nameElem" name= '"hasMiddleName"' value='"Antoine"'/>
+<setIdAttribute obj="nameElem" name='"hasMiddleName"' isId="true"/>
+<attributes var="attributesMap" obj="nameElem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"hasMiddleName"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsIdTrue03"/>
+<getElementById obj="doc" var="elem" elementId='"Antoine"'/>
+<tagName obj="elem" var="elemName"/>
+<assertEquals actual="elemName" expected='"strong"' id="elementsetidattributeGetElementById03" ignoreCase="false"/>
+<setIdAttribute obj="nameElem" name='"hasMiddleName"' isId="false"/>
+<isId var="id" obj="attr"/>
+<assertFalse actual="id" id="elementsetidattributeIsIdFalse03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattribute05.xml b/test/testcases/tests/level3/core/elementsetidattribute05.xml
new file mode 100644
index 0000000..4a541f3
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattribute05.xml
@@ -0,0 +1,42 @@
+<?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="elementsetidattribute05">
+<metadata>
+<title>elementsetidattribute05</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttribute on the third strong element with a non-existing attribute name. Verify that
+ NOT_FOUND_ERR is raised.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="nameElem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="nameElem" obj="elemList" index="2" interface="NodeList"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<setIdAttribute obj="nameElem" name='"hasMiddleName"' isId="true"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattribute06.xml b/test/testcases/tests/level3/core/elementsetidattribute06.xml
new file mode 100644
index 0000000..ecefbe3
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattribute06.xml
@@ -0,0 +1,42 @@
+<?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="elementsetidattribute06">
+<metadata>
+<title>elementsetidattribute06</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttribute on the third strong element with an attribute name of the acronym element.
+ Verify that NOT_FOUND_ERR is raised.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="nameElem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="nameElem" obj="elemList" index="2" interface="NodeList"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<setIdAttribute obj="nameElem" name='"class"' isId="true"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattribute07.xml b/test/testcases/tests/level3/core/elementsetidattribute07.xml
new file mode 100644
index 0000000..8f77de2
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattribute07.xml
@@ -0,0 +1,63 @@
+<?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="elementsetidattribute07">
+<metadata>
+<title>elementsetidattribute07</title>
+<creator>IBM</creator>
+<description>
+ First use setAttribute to create two new attribute of the second and third strong element with different values.
+ Invoke setIdAttribute on the new attributes. Verify by calling isID on the new attributes and getElementById
+ with two different values on document.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="nameElem1" type="Element"/>
+<var name="nameElem2" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="nameElem1" obj="elemList" index="2" interface="NodeList"/>
+<item var="nameElem2" obj="elemList" index="3" interface="NodeList"/>
+<setAttribute obj="nameElem1" name= '"hasMiddleName"' value='"Antoine"'/>
+<setIdAttribute obj="nameElem1" name='"hasMiddleName"' isId="true"/>
+<setAttribute obj="nameElem2" name= '"hasMiddleName"' value='"Neeya"'/>
+<setIdAttribute obj="nameElem2" name='"hasMiddleName"' isId="true"/>
+<attributes var="attributesMap" obj="nameElem1"/>
+<getNamedItem var="attr" obj="attributesMap" name='"hasMiddleName"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsId1True07"/>
+<attributes var="attributesMap" obj="nameElem2"/>
+<getNamedItem var="attr" obj="attributesMap" name='"hasMiddleName"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsId2True07"/>
+<getElementById obj="doc" var="elem" elementId='"Antoine"'/>
+<tagName obj="elem" var="elemName"/>
+<assertEquals actual="elemName" expected='"strong"' id="elementsetidattribute1GetElementById07" ignoreCase="false"/>
+<getElementById obj="doc" var="elem" elementId='"Neeya"'/>
+<tagName obj="elem" var="elemName"/>
+<assertEquals actual="elemName" expected='"strong"' id="elementsetidattribute2GetElementById07" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattribute08.xml b/test/testcases/tests/level3/core/elementsetidattribute08.xml
new file mode 100644
index 0000000..593cc1b
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattribute08.xml
@@ -0,0 +1,64 @@
+<?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="elementsetidattribute08">
+<metadata>
+<title>elementsetidattribute08</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttribute class attribute on the second, third, and the fifth acronym element.
+ Verify by calling isID on the attributes and getElementById with the unique value "No" on document.
+ </description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem1" type="Element"/>
+<var name="acronymElem2" type="Element"/>
+<var name="acronymElem3" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem1" obj="elemList" index="1" interface="NodeList"/>
+<item var="acronymElem2" obj="elemList" index="2" interface="NodeList"/>
+<item var="acronymElem3" obj="elemList" index="4" interface="NodeList"/>
+<setIdAttribute obj="acronymElem1" name='"class"' isId="true"/>
+<setIdAttribute obj="acronymElem2" name='"class"' isId="true"/>
+<setIdAttribute obj="acronymElem3" name='"class"' isId="true"/>
+<attributes var="attributesMap" obj="acronymElem1"/>
+<getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsId1True08"/>
+<attributes var="attributesMap" obj="acronymElem2"/>
+<getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsId2True08"/>
+<attributes var="attributesMap" obj="acronymElem3"/>
+<getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsId3True08"/>
+<getElementById obj="doc" var="elem" elementId='"No"'/>
+<tagName obj="elem" var="elemName"/>
+<assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributeGetElementById08" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattribute09.xml b/test/testcases/tests/level3/core/elementsetidattribute09.xml
new file mode 100644
index 0000000..60dc035
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattribute09.xml
@@ -0,0 +1,65 @@
+<?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="elementsetidattribute09">
+<metadata>
+<title>elementsetidattribute09</title>
+<creator>IBM</creator>
+<description>
+ First use setAttribute to create two new attributes on the second strong element and sup element.
+ Invoke setIdAttribute on the new attributes. Verify by calling isID on the new attributes and getElementById
+ with two different values on document.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList1" type="NodeList"/>
+<var name="elemList2" type="NodeList"/>
+<var name="nameElem" type="Element"/>
+<var name="salaryElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList1" obj="doc" tagname='"strong"' interface="Document"/>
+<getElementsByTagName var="elemList2" obj="doc" tagname='"sup"' interface="Document"/>
+<item var="nameElem" obj="elemList1" index="2" interface="NodeList"/>
+<item var="salaryElem" obj="elemList2" index="2" interface="NodeList"/>
+<setAttribute obj="nameElem" name= '"hasMiddleName"' value='"Antoine"'/>
+<setAttribute obj="salaryElem" name= '"annual"' value='"2002"'/>
+<setIdAttribute obj="nameElem" name='"hasMiddleName"' isId="true"/>
+<setIdAttribute obj="salaryElem" name='"annual"' isId="true"/>
+<attributes var="attributesMap" obj="nameElem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"hasMiddleName"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsId1True09"/>
+<attributes var="attributesMap" obj="salaryElem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"annual"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsId2True09"/>
+<getElementById obj="doc" var="elem" elementId='"Antoine"'/>
+<tagName obj="elem" var="elemName"/>
+<assertEquals actual="elemName" expected='"strong"' id="elementsetidattribute1GetElementById09" ignoreCase="false"/>
+<getElementById obj="doc" var="elem" elementId='"2002"'/>
+<tagName obj="elem" var="elemName"/>
+<assertEquals actual="elemName" expected='"sup"' id="elementsetidattribute2GetElementById09" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattribute10.xml b/test/testcases/tests/level3/core/elementsetidattribute10.xml
new file mode 100644
index 0000000..cce49e9
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattribute10.xml
@@ -0,0 +1,55 @@
+<?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="elementsetidattribute10">
+<metadata>
+<title>elementsetidattribute10</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttribute on the third acronym element's class attribute consecutively with different
+ isId values. Verify by calling isId on the attribute.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<setIdAttribute obj="acronymElem" name='"class"' isId="true"/>
+<attributes var="attributesMap" obj="acronymElem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsId1True10"/>
+<setIdAttribute obj="acronymElem" name='"class"' isId="true"/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsId2True10"/>
+<setIdAttribute obj="acronymElem" name='"class"' isId="false"/>
+<isId var="id" obj="attr"/>
+<assertFalse actual="id" id="elementsetidattributeIsIdFalse10"/>
+<getElementById obj="doc" var="elem" elementId='"No"'/>
+<assertNull actual="elem" id="elementsetidattributeGetElementByIdNull10"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattribute11.xml b/test/testcases/tests/level3/core/elementsetidattribute11.xml
new file mode 100644
index 0000000..cba51cb
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattribute11.xml
@@ -0,0 +1,55 @@
+<?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="elementsetidattribute11">
+<metadata>
+<title>elementsetidattribute11</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttribute on the 4th acronym element's class attribute which contains
+ an entity reference. Verify by calling isID on the class attribute and getElementById
+ on document. Invoke setIdAttribute again to reset. Calling isID should return false.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="id" type="boolean" value="false"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="3" interface="NodeList"/>
+<setIdAttribute obj="acronymElem" name='"class"' isId="true"/>
+<attributes var="attributesMap" obj="acronymElem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+<isId var="id" obj="attr"/>
+<assertTrue actual="id" id="elementsetidattributeIsIdTrue01"/>
+<getElementById obj="doc" var="elem" elementId='"Y&#945;"'/>
+<assertNotNull actual="elem" id="elemByIDNotNull"/>
+<tagName obj="elem" var="elemName"/>
+<assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributeGetElementById11" ignoreCase="false"/>
+<setIdAttribute obj="acronymElem" name='"class"' isId="false"/>
+<isId var="id" obj="attr"/>
+<assertFalse actual="id" id="elementsetidattributeIsIdFalse11"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributenode01.xml b/test/testcases/tests/level3/core/elementsetidattributenode01.xml
new file mode 100644
index 0000000..a98a85f
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributenode01.xml
@@ -0,0 +1,53 @@
+<?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="elementsetidattributenode01">
+ <metadata>
+ <title>elementsetidattributenode01</title>
+ <creator>IBM</creator>
+ <description>
+ Invoke setIdAttributeNode on the 3rd p element using the title attribute as a parameter . Verify by calling
+ isID on the attribute node and getElementById on document node. Call setIdAttributeNode again with isId=false
+ to reset. Invoke isId on the attribute node should return false.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-27</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNode"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="employeeElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="true"/>
+ <getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+ <item var="employeeElem" obj="elemList" index="2" interface="NodeList"/>
+ <attributes var="attributesMap" obj="employeeElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xmlns:dmstc"'/>
+ <setIdAttributeNode obj="employeeElem" idAttr="attr" isId="true"/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributenodeIsIdTrue01"/>
+ <getElementById obj="doc" var="elem" elementId='"http://www.netzero.com"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"p"' id="elementsetidattributenodeGetElementById01" ignoreCase="false"/>
+ <setIdAttributeNode obj="elem" idAttr="attr" isId="false"/>
+ <isId var="id" obj="attr"/>
+ <assertFalse actual="id" id="elementsetidattributenodeIsIdFalse01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributenode02.xml b/test/testcases/tests/level3/core/elementsetidattributenode02.xml
new file mode 100644
index 0000000..dcf0d05
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributenode02.xml
@@ -0,0 +1,53 @@
+<?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="elementsetidattributenode02">
+ <metadata>
+ <title>elementsetidattributenode02</title>
+ <creator>IBM</creator>
+ <description>
+ Invoke setIdAttributeNode on the 3rd acronym element using the class attribute as a parameter . Verify by calling
+ isID on the attribute node and getElementById on document node. Call setIdAttributeNode again with isId=false
+ to reset. Invoke isId on the attribute node should return false.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-27</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNode"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="acronymElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="true"/>
+ <getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+ <item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+ <attributes var="attributesMap" obj="acronymElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+ <setIdAttributeNode obj="acronymElem" idAttr="attr" isId="true"/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributenodeIsIdTrue02"/>
+ <getElementById obj="doc" var="elem" elementId='"No"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributenodeGetElementById02" ignoreCase="false"/>
+ <setIdAttributeNode obj="elem" idAttr="attr" isId="false"/>
+ <isId var="id" obj="attr"/>
+ <assertFalse actual="id" id="elementsetidattributenodeIsIdFalse02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributenode03.xml b/test/testcases/tests/level3/core/elementsetidattributenode03.xml
new file mode 100644
index 0000000..d6bb402
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributenode03.xml
@@ -0,0 +1,55 @@
+<?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="elementsetidattributenode03">
+ <metadata>
+ <title>elementsetidattributenode03</title>
+ <creator>IBM</creator>
+ <description>
+ Create a new attribute node on the second strong element. Invoke setIdAttributeNode on a newly created
+ attribute node. Verify by calling isID on the attribute node and getElementById on document node.
+ Call setIdAttributeNode again with isId=false to reset. Invoke isId on the attribute node should return false.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-27</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNode"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="nameElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="newAttr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="true"/>
+ <getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+ <item var="nameElem" obj="elemList" index="1" interface="NodeList"/>
+ <setAttribute obj="nameElem" name='"title"' value='"Karen"'/>
+ <attributes var="attributesMap" obj="nameElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"title"'/>
+ <setIdAttributeNode obj="nameElem" idAttr="attr" isId="true"/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributenodeIsIdTrue03"/>
+ <getElementById obj="doc" var="elem" elementId='"Karen"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"strong"' id="elementsetidattributenodeGetElementById03" ignoreCase="false"/>
+ <setIdAttributeNode obj="elem" idAttr="attr" isId="false"/>
+ <isId var="id" obj="attr"/>
+ <assertFalse actual="id" id="elementsetidattributenodeIsIdFalse03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributenode04.xml b/test/testcases/tests/level3/core/elementsetidattributenode04.xml
new file mode 100644
index 0000000..99ee8c4
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributenode04.xml
@@ -0,0 +1,55 @@
+<?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="elementsetidattributenode04">
+ <metadata>
+ <title>elementsetidattributenode04</title>
+ <creator>IBM</creator>
+ <description>
+ Create a new namespace attribute on the second strong element. Invoke setIdAttributeNode on a newly created
+ attribute node. Verify by calling isID on the attribute node and getElementById on document node.
+ Call setIdAttributeNode again with isId=false to reset. Invoke isId on the attribute node should return false.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-27</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNode"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="nameElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="newAttr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="true"/>
+ <getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+ <item var="nameElem" obj="elemList" index="1" interface="NodeList"/>
+ <setAttributeNS obj="nameElem" namespaceURI='"http://www.w3.org/2000/xmlns/"' qualifiedName='"xmlns:middle"' value='"http://www.example.com/middle"'/>
+ <attributes var="attributesMap" obj="nameElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xmlns:middle"'/>
+ <setIdAttributeNode obj="nameElem" idAttr="attr" isId="true"/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributenodeIsIdTrue04"/>
+ <getElementById obj="doc" var="elem" elementId='"http://www.example.com/middle"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"strong"' id="elementsetidattributenodeGetElementById04" ignoreCase="false"/>
+ <setIdAttributeNode obj="elem" idAttr="attr" isId="false"/>
+ <isId var="id" obj="attr"/>
+ <assertFalse actual="id" id="elementsetidattributenodeIsIdFalse04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributenode05.xml b/test/testcases/tests/level3/core/elementsetidattributenode05.xml
new file mode 100644
index 0000000..7b8fef6
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributenode05.xml
@@ -0,0 +1,50 @@
+<?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="elementsetidattributenode05">
+<metadata>
+<title>elementsetidattributenode05</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttributeNode on the third strong element but with the class attribute of the acronym
+ element as a parameter. Verify that NOT_FOUND_ERR is raised.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-27</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList1" type="NodeList"/>
+<var name="elemList2" type="NodeList"/>
+<var name="nameElem" type="Element"/>
+<var name="acronymElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList1" obj="doc" tagname='"strong"' interface="Document"/>
+<getElementsByTagName var="elemList2" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="nameElem" obj="elemList1" index="1" interface="NodeList"/>
+<item var="acronymElem" obj="elemList2" index="1" interface="NodeList"/>
+<attributes var="attributesMap" obj="acronymElem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<setIdAttributeNode obj="nameElem" idAttr="attr" isId="true"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributenode06.xml b/test/testcases/tests/level3/core/elementsetidattributenode06.xml
new file mode 100644
index 0000000..3992984
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributenode06.xml
@@ -0,0 +1,51 @@
+<?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="elementsetidattributenode06">
+<metadata>
+<title>elementsetidattributenode06</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttributeNode on the third strong element but with the title attribute of the acronym
+ element as a parameter. Verify that NOT_FOUND_ERR is raised.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-27</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList1" type="NodeList"/>
+<var name="elemList2" type="NodeList"/>
+<var name="nameElem" type="Element"/>
+<var name="acronymElem" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+ <var name="nameElement" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList1" obj="doc" tagname='"strong"' interface="Document"/>
+<getElementsByTagName var="elemList2" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="nameElem" obj="elemList1" index="1" interface="NodeList"/>
+<item var="acronymElem" obj="elemList2" index="1" interface="NodeList"/>
+<attributes var="attributesMap" obj="acronymElem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"xsi:noNamespaceSchemaLocation"'/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<setIdAttributeNode obj="nameElem" idAttr="attr" isId="true"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributenode07.xml b/test/testcases/tests/level3/core/elementsetidattributenode07.xml
new file mode 100644
index 0000000..d0d2f7c
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributenode07.xml
@@ -0,0 +1,61 @@
+<?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="elementsetidattributenode07">
+ <metadata>
+ <title>elementsetidattributenode07</title>
+ <creator>IBM</creator>
+ <description>
+ Invoke setIdAttributeNode on the 2nd and 3rd acronym element using the class attribute as a parameter . Verify by calling
+ isID on the attribute node and getElementById on document node.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-27</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNode"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="elemList1" type="NodeList"/>
+ <var name="elemList2" type="NodeList"/>
+ <var name="acronymElem1" type="Element"/>
+ <var name="acronymElem2" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="true"/>
+ <getElementsByTagName var="elemList1" obj="doc" tagname='"acronym"' interface="Document"/>
+ <getElementsByTagName var="elemList2" obj="doc" tagname='"acronym"' interface="Document"/>
+ <item var="acronymElem1" obj="elemList1" index="1" interface="NodeList"/>
+ <item var="acronymElem2" obj="elemList2" index="2" interface="NodeList"/>
+ <attributes var="attributesMap" obj="acronymElem1"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+ <setIdAttributeNode obj="acronymElem1" idAttr="attr" isId="true"/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributenodeIsId1True07"/>
+ <attributes var="attributesMap" obj="acronymElem2"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+ <setIdAttributeNode obj="acronymElem2" idAttr="attr" isId="true"/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributenodeIsId2True07"/>
+ <getElementById obj="doc" var="elem" elementId='"No"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributenode1GetElementById07" ignoreCase="false"/>
+ <getElementById obj="doc" var="elem" elementId='"Yes"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributenode2GetElementById07" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributenode08.xml b/test/testcases/tests/level3/core/elementsetidattributenode08.xml
new file mode 100644
index 0000000..41400a5
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributenode08.xml
@@ -0,0 +1,66 @@
+<?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="elementsetidattributenode08">
+ <metadata>
+ <title>elementsetidattributenode08</title>
+ <creator>IBM</creator>
+ <description>
+ This method declares the attribute specified by node to be of type ID. If the value of the specified attribute
+ is unique then this element node can later be retrieved using getElementById on Document. Note, however,
+ that this simply affects this node and does not change any grammar that may be in use.
+
+ Invoke setIdAttributeNode on the 2nd acronym element and 3rd p element using the title and xmlns:dmstc attributes respectively
+ as parameters . Verify by calling isID on the attribute node and getElementById on document node.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-27</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNode"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="elemList1" type="NodeList"/>
+ <var name="elemList2" type="NodeList"/>
+ <var name="acronymElem" type="Element"/>
+ <var name="pElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="false"/>
+ <getElementsByTagNameNS var="elemList1" obj="doc" localName='"acronym"' namespaceURI='"*"' interface="Document"/>
+ <getElementsByTagNameNS var="elemList2" obj="doc" localName='"p"' namespaceURI='"*"' interface="Document"/>
+ <item var="acronymElem" obj="elemList1" index="1" interface="NodeList"/>
+ <item var="pElem" obj="elemList2" index="2" interface="NodeList"/>
+ <attributes var="attributesMap" obj="acronymElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"title"'/>
+ <setIdAttributeNode obj="acronymElem" idAttr="attr" isId="true"/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributenodeIsId1True08"/>
+ <attributes var="attributesMap" obj="pElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xmlns:dmstc"'/>
+ <setIdAttributeNode obj="pElem" idAttr="attr" isId="true"/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributenodeIsId2True08"/>
+ <getElementById obj="doc" var="elem" elementId='"Yes"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributenode1GetElementById08" ignoreCase="false"/>
+ <getElementById obj="doc" var="elem" elementId='"http://www.netzero.com"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"p"' id="elementsetidattributenode2GetElementById08" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributenode09.xml b/test/testcases/tests/level3/core/elementsetidattributenode09.xml
new file mode 100644
index 0000000..e0fb8e6
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributenode09.xml
@@ -0,0 +1,59 @@
+<?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="elementsetidattributenode09">
+<metadata>
+<title>elementsetidattributenode09</title>
+<creator>IBM</creator>
+<description>
+ This method declares the attribute specified by node to be of type ID. If the value of the specified attribute
+ is unique then this element node can later be retrieved using getElementById on Document. Note, however,
+ that this simply affects this node and does not change any grammar that may be in use.
+
+ Invoke setIdAttributeNode with the xmlns attribute of ent4. Verify that NO_MODIFICATION_ALLOWED_ERR is raised.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNode"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="varElem" type="Element"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entElement" type="Element"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<domConfig var="domConfig" obj="doc" interface="Document"/>
+<setParameter obj="domConfig" name='"entities"' value="true" interface="DOMConfiguration"/>
+<normalizeDocument obj="doc" interface="Document"/>
+<getElementsByTagNameNS var="elemList" obj="doc" localName='"var"' namespaceURI='"*"' interface="Document"/>
+<item interface="NodeList" obj="elemList" var="varElem" index="2"/>
+<firstChild interface="Node" var="entRef" obj="varElem"/>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<attributes var="attributesMap" obj="entElement"/>
+<getNamedItem var="attr" obj="attributesMap" name='"xmlns"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setIdAttributeNode obj="entElement" idAttr="attr" isId="true"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributenode10.xml b/test/testcases/tests/level3/core/elementsetidattributenode10.xml
new file mode 100644
index 0000000..8f0666a
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributenode10.xml
@@ -0,0 +1,58 @@
+<?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="elementsetidattributenode10">
+ <metadata>
+ <title>elementsetidattributenode10</title>
+ <creator>IBM</creator>
+ <description>
+ This method declares the attribute specified by node to be of type ID. If the value of the specified attribute
+ is unique then this element node can later be retrieved using getElementById on Document. Note, however,
+ that this simply affects this node and does not change any grammar that may be in use.
+
+ Invoke setIdAttributeNode on the 4th acronym element using the class attribute (containing entity reference)
+ as a parameter . Verify by calling isId on the attribute node and getElementById on document node.
+ Reset by invoking setIdAttributeNode with isId=false.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-27</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNode"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="acronymElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="false"/>
+ <getElementsByTagNameNS var="elemList" obj="doc" localName='"acronym"' namespaceURI='"*"' interface="Document"/>
+ <item var="acronymElem" obj="elemList" index="3" interface="NodeList"/>
+ <attributes var="attributesMap" obj="acronymElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+ <setIdAttributeNode obj="acronymElem" idAttr="attr" isId="true"/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributenodeIsIdTrue10"/>
+ <getElementById obj="doc" var="elem" elementId='"Y&#945;"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributenodeGetElementById10" ignoreCase="false"/>
+ <setIdAttributeNode obj="acronymElem" idAttr="attr" isId="false"/>
+ <isId var="id" obj="attr"/>
+ <assertFalse actual="id" id="elementsetidattributenodeIsIdFalse10"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens01.xml b/test/testcases/tests/level3/core/elementsetidattributens01.xml
new file mode 100644
index 0000000..31daa6c
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens01.xml
@@ -0,0 +1,54 @@
+<?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="elementsetidattributens01">
+ <metadata>
+ <title>elementsetidattributens01</title>
+ <creator>IBM</creator>
+ <description>
+ Invoke setIdAttributeNS on an existing namespace attribute with a namespace URI and a qualified name. Verify by calling
+ isId on the attribute node and getElementById on document node. Call setIdAttributeNS with isId=false to reset.
+ isId should now return false.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-26</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="employeeElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="true"/>
+ <getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+ <item var="employeeElem" obj="elemList" index="2" interface="NodeList"/>
+ <setIdAttributeNS obj="employeeElem" localName='"dmstc"' namespaceURI='"http://www.w3.org/2000/xmlns/"' isId="true"/>
+ <attributes var="attributesMap" obj="employeeElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xmlns:dmstc"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsIdTrue01"/>
+ <getElementById obj="doc" var="elem" elementId='"http://www.netzero.com"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"p"' id="elementsetidattributensGetElementById01" ignoreCase="false"/>
+ <setIdAttributeNS obj="employeeElem" localName='"dmstc"' namespaceURI='"http://www.w3.org/2000/xmlns/"' isId="false"/>
+ <isId var="id" obj="attr"/>
+ <assertFalse actual="id" id="elementsetidattributensIsIdFalse01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens02.xml b/test/testcases/tests/level3/core/elementsetidattributens02.xml
new file mode 100644
index 0000000..e174f80
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens02.xml
@@ -0,0 +1,56 @@
+<?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="elementsetidattributens02">
+ <metadata>
+ <title>elementsetidattributens02</title>
+ <creator>IBM</creator>
+ <description>
+ Invoke setIdAttributeNS on an existing attribute with a namespace URI and a qualified name. Verify by calling
+ isID on the attribute node and getElementById on document node. Assume the grammar has not defined any
+ element of typeID. Call setIdAttributeNS with isId=false to reset. Method isId should now return false.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-26</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="addressElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <var name="xsiNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema-instance"'/>
+ <load var="doc" href="hc_staff" willBeModified="true"/>
+ <getElementsByTagNameNS var="elemList" obj="doc" localName='"acronym"' namespaceURI='"*"' interface="Document"/>
+ <item var="addressElem" obj="elemList" index="2" interface="NodeList"/>
+ <setIdAttributeNS obj="addressElem" localName='"noNamespaceSchemaLocation"' namespaceURI='xsiNS' isId="true"/>
+ <attributes var="attributesMap" obj="addressElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xsi:noNamespaceSchemaLocation"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsIdTrue02"/>
+ <getElementById obj="doc" var="elem" elementId='"Yes"'/>
+ <assertNotNull actual="elem" id="getElementByIDNotNull"/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributensGetElementById01" ignoreCase="false"/>
+ <setIdAttributeNS obj="addressElem" localName='"noNamespaceSchemaLocation"' namespaceURI='xsiNS' isId="false"/>
+ <isId var="id" obj="attr"/>
+ <assertFalse actual="id" id="elementsetidattributensIsIdFalse02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens03.xml b/test/testcases/tests/level3/core/elementsetidattributens03.xml
new file mode 100644
index 0000000..b9b3db7
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens03.xml
@@ -0,0 +1,54 @@
+<?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="elementsetidattributens03">
+ <metadata>
+ <title>elementsetidattributens03</title>
+ <creator>IBM</creator>
+ <description>
+ Invoke setIdAttributeNS on a newly added namespace attribute on the first em element. Verify by calling
+ isID on the attribute node and getElementById on document node. Call setIdAttributeNS with isId=false to reset.
+ Method isId should now return false.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-26</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="employeeIdElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="true"/>
+ <getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+ <item var="employeeIdElem" obj="elemList" index="0" interface="NodeList"/>
+ <setAttributeNS obj="employeeIdElem" qualifiedName='"xmlns:newAttr"' namespaceURI='"http://www.w3.org/2000/xmlns/"' value='"newValue"'/>
+ <setIdAttributeNS obj="employeeIdElem" localName='"newAttr"' namespaceURI='"http://www.w3.org/2000/xmlns/"' isId="true"/>
+ <attributes var="attributesMap" obj="employeeIdElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xmlns:newAttr"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsIdTrue03"/>
+ <getElementById obj="doc" var="elem" elementId='"newValue"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"em"' id="elementsetidattributensGetElementById03" ignoreCase="false"/>
+ <setIdAttributeNS obj="employeeIdElem" localName='"newAttr"' namespaceURI='"http://www.w3.org/2000/xmlns/"' isId="false"/>
+ <isId var="id" obj="attr"/>
+ <assertFalse actual="id" id="elementsetidattributensIsIdFalse03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens04.xml b/test/testcases/tests/level3/core/elementsetidattributens04.xml
new file mode 100644
index 0000000..0566ea5
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens04.xml
@@ -0,0 +1,59 @@
+<?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="elementsetidattributens04">
+ <metadata>
+ <title>elementsetidattributens04</title>
+ <creator>IBM</creator>
+ <description>
+ The method setIdAttributeNS declares the attribute specified by local name and namespace URI to be of type ID.
+ If the value of the specified attribute is unique then this element node can later be retrieved using getElementById on Document.
+ Note, however, that this simply affects this node and does not change any grammar that may be in use.
+
+ Invoke setIdAttributeNS on newly added attribute on the third strong element. Verify by calling
+ isID on the attribute node and getElementById on document node.
+ Call setIdAttributeNS with isId=false to reset. Method isId should now return false.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-26</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="strongElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="false"/>
+ <getElementsByTagNameNS var="elemList" obj="doc" localName='"strong"' namespaceURI='"*"' interface="Document"/>
+ <item var="strongElem" obj="elemList" index="2" interface="NodeList"/>
+ <setAttributeNS obj="strongElem" qualifiedName='"dmstc:newAttr"' namespaceURI='"http://www.netzero.com"' value='"newValue"'/>
+ <setIdAttributeNS obj="strongElem" localName='"newAttr"' namespaceURI='"http://www.netzero.com"' isId="true"/>
+ <attributes var="attributesMap" obj="strongElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"dmstc:newAttr"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsIdTrue04"/>
+ <getElementById obj="doc" var="elem" elementId='"newValue"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"strong"' id="elementsetidattributensGetElementById04" ignoreCase="false"/>
+ <setIdAttributeNS obj="strongElem" localName='"newAttr"' namespaceURI='"http://www.netzero.com"' isId="false"/>
+ <isId var="id" obj="attr"/>
+ <assertFalse actual="id" id="elementsetidattributensIsIdFalse04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens05.xml b/test/testcases/tests/level3/core/elementsetidattributens05.xml
new file mode 100644
index 0000000..59b16e8
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens05.xml
@@ -0,0 +1,59 @@
+<?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="elementsetidattributens05">
+ <metadata>
+ <title>elementsetidattributens05</title>
+ <creator>IBM</creator>
+ <description>
+ The method setIdAttributeNS declares the attribute specified by local name and namespace URI to be of type ID.
+ If the value of the specified attribute is unique then this element node can later be retrieved using getElementById on Document.
+ Note, however, that this simply affects this node and does not change any grammar that may be in use.
+
+ Invoke setIdAttributeNS on a changed attribute of the third acronym element. Verify by calling
+ isID on the attribute node and getElementById on document node.
+ Call setIdAttributeNS with isId=false to reset. Method isId should now return false.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-26</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="acronymElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="false"/>
+ <getElementsByTagNameNS var="elemList" obj="doc" localName='"acronym"' namespaceURI='"*"' interface="Document"/>
+ <item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+ <setAttributeNS obj="acronymElem" qualifiedName='"title"' namespaceURI='"*"' value='"newValue"'/>
+ <setIdAttributeNS obj="acronymElem" localName='"title"' namespaceURI='"*"' isId="true"/>
+ <attributes var="attributesMap" obj="acronymElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"title"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsIdTrue05"/>
+ <getElementById obj="doc" var="elem" elementId='"newValue"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributensGetElementById05" ignoreCase="false"/>
+ <setIdAttributeNS obj="acronymElem" localName='"title"' namespaceURI='"*"' isId="false"/>
+ <isId var="id" obj="attr"/>
+ <assertFalse actual="id" id="elementsetidattributensIsIdFalse05"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens06.xml b/test/testcases/tests/level3/core/elementsetidattributens06.xml
new file mode 100644
index 0000000..5b90d5d
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens06.xml
@@ -0,0 +1,42 @@
+<?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="elementsetidattributens06">
+<metadata>
+<title>elementsetidattributens06</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttributeNS on the third strong element with a non-existing attribute name. Verify that
+ NOT_FOUND_ERR is raised.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="nameElem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="nameElem" obj="elemList" index="2" interface="NodeList"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<setIdAttributeNS obj="nameElem" localName='"hasMiddleName"' namespaceURI='"http://www.netzero.com"' isId="true"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens07.xml b/test/testcases/tests/level3/core/elementsetidattributens07.xml
new file mode 100644
index 0000000..448db33
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens07.xml
@@ -0,0 +1,42 @@
+<?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="elementsetidattributens07">
+<metadata>
+<title>elementsetidattributens07</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttributeNS on the second p element with a non-existing attribute. Verify that
+ NOT_FOUND_ERR is raised.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="employeeElem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="employeeElem" obj="elemList" index="1" interface="NodeList"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<setIdAttributeNS obj="employeeElem" localName='"xsi"' namespaceURI='"http://www.netzero.com"' isId="true"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens08.xml b/test/testcases/tests/level3/core/elementsetidattributens08.xml
new file mode 100644
index 0000000..18c5640
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens08.xml
@@ -0,0 +1,42 @@
+<?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="elementsetidattributens08">
+<metadata>
+<title>elementsetidattributens08</title>
+<creator>IBM</creator>
+<description>
+ Invoke setIdAttributeNS on the second p element with a non-existing attribute. Verify that
+ NOT_FOUND_ERR is raised.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="employeeElem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="employeeElem" obj="elemList" index="1" interface="NodeList"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<setIdAttributeNS obj="employeeElem" localName='"usa"' namespaceURI='"http://www.usa.com"' isId="true"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens09.xml b/test/testcases/tests/level3/core/elementsetidattributens09.xml
new file mode 100644
index 0000000..769592e
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens09.xml
@@ -0,0 +1,51 @@
+<?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="elementsetidattributens09">
+<metadata>
+<title>elementsetidattributens09</title>
+<creator>IBM</creator>
+<description>
+ The method setIdAttributeNS declares the attribute specified by local name and namespace URI to be of type ID.
+ If the value of the specified attribute is unique then this element node can later be retrieved using getElementById on Document.
+ Note, however, that this simply affects this node and does not change any grammar that may be in use.
+
+ Invoke setIdAttributeNS on the xmlns attribute of ent4. Verify that NO_MODIFICATION_ALLOWED_ERR is raised.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="varElem" type="Element"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entElement" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagNameNS var="elemList" obj="doc" localName='"var"' namespaceURI='"*"' interface="Document"/>
+<item interface="NodeList" obj="elemList" var="varElem" index="2"/>
+<firstChild interface="Node" var="entRef" obj="varElem"/>
+<firstChild interface="Node" var="entElement" obj="entRef"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<setIdAttributeNS obj="entElement" localName='"xmlns"' namespaceURI='"http://www.w3.org/2000/xmlns/"' isId="true"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens10.xml b/test/testcases/tests/level3/core/elementsetidattributens10.xml
new file mode 100644
index 0000000..68b4038
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens10.xml
@@ -0,0 +1,64 @@
+<?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="elementsetidattributens10">
+ <metadata>
+ <title>elementsetidattributens10</title>
+ <creator>IBM</creator>
+ <description>
+ Declares the attribute specified by local name and namespace URI to be of type ID. If the value of the
+ specified attribute is unique then this element node can later be retrieved using getElementById on Document.
+ Note, however, that this simply affects this node and does not change any grammar that may be in use.
+
+ Invoke setIdAttributeNS on two existing namespace attributes with different values. Verify by calling
+ isId on the attributes and getElementById with different values on document node.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-26</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="pElem1" type="Element"/>
+ <var name="pElem2" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="false"/>
+ <getElementsByTagNameNS var="elemList" obj="doc" localName='"p"' namespaceURI='"*"' interface="Document"/>
+ <item var="pElem1" obj="elemList" index="2" interface="NodeList"/>
+ <item var="pElem2" obj="elemList" index="3" interface="NodeList"/>
+ <setIdAttributeNS obj="pElem1" localName='"dmstc"' namespaceURI='"http://www.w3.org/2000/xmlns/"' isId="true"/>
+ <setIdAttributeNS obj="pElem2" localName='"nm"' namespaceURI='"http://www.w3.org/2000/xmlns/"' isId="true"/>
+ <attributes var="attributesMap" obj="pElem1"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xmlns:dmstc"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsId1True10"/>
+ <attributes var="attributesMap" obj="pElem2"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xmlns:nm"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsId2True10"/>
+ <getElementById obj="doc" var="elem" elementId='"http://www.netzero.com"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"p"' id="elementsetidattributens1GetElementById10" ignoreCase="false"/>
+ <getElementById obj="doc" var="elem" elementId='"http://www.altavista.com"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"p"' id="elementsetidattributens2GetElementById10" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens11.xml b/test/testcases/tests/level3/core/elementsetidattributens11.xml
new file mode 100644
index 0000000..91aa8df
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens11.xml
@@ -0,0 +1,64 @@
+<?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="elementsetidattributens11">
+ <metadata>
+ <title>elementsetidattributens11</title>
+ <creator>IBM</creator>
+ <description>
+ Declares the attribute specified by local name and namespace URI to be of type ID. If the value of the
+ specified attribute is unique then this element node can later be retrieved using getElementById on Document.
+ Note, however, that this simply affects this node and does not change any grammar that may be in use.
+
+ Invoke setIdAttributeNS on two existing namespace attributes with same local name but different values. Verify by calling
+ isId on the attributes node and getElementById with different values on document node.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-26</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="pElem1" type="Element"/>
+ <var name="pElem2" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="false"/>
+ <getElementsByTagNameNS var="elemList" obj="doc" localName='"p"' namespaceURI='"*"' interface="Document"/>
+ <item var="pElem1" obj="elemList" index="1" interface="NodeList"/>
+ <item var="pElem2" obj="elemList" index="2" interface="NodeList"/>
+ <setIdAttributeNS obj="pElem1" localName='"dmstc"' namespaceURI='"http://www.w3.org/2000/xmlns/"' isId="true"/>
+ <setIdAttributeNS obj="pElem2" localName='"dmstc"' namespaceURI='"http://www.w3.org/2000/xmlns/"' isId="true"/>
+ <attributes var="attributesMap" obj="pElem1"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xmlns:dmstc"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsId1True11"/>
+ <attributes var="attributesMap" obj="pElem2"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xmlns:dmstc"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsId2True11"/>
+ <getElementById obj="doc" var="elem" elementId='"http://www.netzero.com"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"p"' id="elementsetidattributens1GetElementById11" ignoreCase="false"/>
+ <getElementById obj="doc" var="elem" elementId='"http://www.usa.com"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"p"' id="elementsetidattributens2GetElementById11" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens12.xml b/test/testcases/tests/level3/core/elementsetidattributens12.xml
new file mode 100644
index 0000000..1226f2d
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens12.xml
@@ -0,0 +1,70 @@
+<?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="elementsetidattributens12">
+ <metadata>
+ <title>elementsetidattributens12</title>
+ <creator>IBM</creator>
+ <description>
+ Declares the attribute specified by local name and namespace URI to be of type ID. If the value of the
+ specified attribute is unique then this element node can later be retrieved using getElementById on Document.
+ Note, however, that this simply affects this node and does not change any grammar that may be in use.
+
+ Set the noNamespaceSchemaLocation attribute on the first acronym element to "No". Invoke setIdAttributeNS on the
+ noNamespaceSchemaLocation attribute of the first, second and third acronym element. Verify by calling isId on
+ the attributes. Calling getElementById with "No" as a value should return the acronym element.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-26</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="acronymElem1" type="Element"/>
+ <var name="acronymElem2" type="Element"/>
+ <var name="acronymElem3" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="false"/>
+ <getElementsByTagNameNS var="elemList" obj="doc" localName='"acronym"' namespaceURI='"*"' interface="Document"/>
+ <item var="acronymElem1" obj="elemList" index="0" interface="NodeList"/>
+ <item var="acronymElem2" obj="elemList" index="1" interface="NodeList"/>
+ <item var="acronymElem3" obj="elemList" index="2" interface="NodeList"/>
+ <setAttributeNS obj="acronymElem1" qualifiedName='"xsi:noNamespaceSchemaLocation"' namespaceURI='"http://www.w3.org/2001/XMLSchema-instance"' value='"No"'/>
+ <setIdAttributeNS obj="acronymElem1" localName='"noNamespaceSchemaLocation"' namespaceURI='"http://www.w3.org/2001/XMLSchema-instance"' isId="true"/>
+ <setIdAttributeNS obj="acronymElem2" localName='"noNamespaceSchemaLocation"' namespaceURI='"http://www.w3.org/2001/XMLSchema-instance"' isId="true"/>
+ <setIdAttributeNS obj="acronymElem3" localName='"noNamespaceSchemaLocation"' namespaceURI='"http://www.w3.org/2001/XMLSchema-instance"' isId="true"/>
+ <attributes var="attributesMap" obj="acronymElem1"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xsi:noNamespaceSchemaLocation"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsId1True12"/>
+ <attributes var="attributesMap" obj="acronymElem2"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xsi:noNamespaceSchemaLocation"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsId2True12"/>
+ <attributes var="attributesMap" obj="acronymElem3"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xsi:noNamespaceSchemaLocation"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsId3True12"/>
+ <getElementById obj="doc" var="elem" elementId='"No"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributensGetElementById10" ignoreCase="false"/>
+ </test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens13.xml b/test/testcases/tests/level3/core/elementsetidattributens13.xml
new file mode 100644
index 0000000..6958429
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens13.xml
@@ -0,0 +1,57 @@
+<?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="elementsetidattributens13">
+ <metadata>
+ <title>elementsetidattributens13</title>
+ <creator>IBM</creator>
+ <description>
+ Invoke setIdAttributeNS on newly added attribute on the third strong element. Verify by calling
+ isID on the attribute node and getElementById on document node.
+ Call setIdAttributeNS on the same element to reset ID but with a non-existing attribute should generate
+ NOT_FOUND_ERR
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-26</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="nameElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="true"/>
+ <getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+ <item var="nameElem" obj="elemList" index="2" interface="NodeList"/>
+ <setAttributeNS obj="nameElem" qualifiedName='"xmlns:newAttr"' namespaceURI='"http://www.w3.org/2000/xmlns/"' value='"newValue"'/>
+ <setIdAttributeNS obj="nameElem" localName='"newAttr"' namespaceURI='"http://www.w3.org/2000/xmlns/"' isId="true"/>
+ <attributes var="attributesMap" obj="nameElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xmlns:newAttr"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsIdTrue13"/>
+ <getElementById obj="doc" var="elem" elementId='"newValue"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"strong"' id="elementsetidattributensGetElementById13" ignoreCase="false"/>
+ <assertDOMException id="throw_NOT_FOUND_ERR">
+ <NOT_FOUND_ERR>
+ <setIdAttributeNS obj="nameElem" localName='"lang"' namespaceURI='"http://www.w3.org/XML/1998/namespace"' isId="false"/>
+ </NOT_FOUND_ERR>
+ </assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/elementsetidattributens14.xml b/test/testcases/tests/level3/core/elementsetidattributens14.xml
new file mode 100644
index 0000000..2fe42fa
--- /dev/null
+++ b/test/testcases/tests/level3/core/elementsetidattributens14.xml
@@ -0,0 +1,65 @@
+<?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="elementsetidattributens14">
+ <metadata>
+ <title>elementsetidattributens14</title>
+ <creator>IBM</creator>
+ <description>
+ Declares the attribute specified by local name and namespace URI to be of type ID. If the value of the
+ specified attribute is unique then this element node can later be retrieved using getElementById on Document.
+ Note, however, that this simply affects this node and does not change any grammar that may be in use.
+
+ Invoke setIdAttributeNS on two existing attributes of the second p element and the third
+ acronym element. Verify by calling isId on the attributes and getElementById with different values on document node.
+ </description>
+ <contributor>Jenny Hsu</contributor>
+ <date qualifier="created">2003-02-26</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ElSetIdAttrNS"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+ <var name="doc" type="Document"/>
+ <var name="elemList" type="NodeList"/>
+ <var name="pElem" type="Element"/>
+ <var name="acronymElem" type="Element"/>
+ <var name="attributesMap" type="NamedNodeMap"/>
+ <var name="attr" type="Attr"/>
+ <var name="id" type="boolean" value="false"/>
+ <var name="elem" type="Element"/>
+ <var name="elemName" type="DOMString"/>
+ <load var="doc" href="hc_staff" willBeModified="false"/>
+ <getElementsByTagNameNS var="elemList" obj="doc" localName='"p"' namespaceURI='"*"' interface="Document"/>
+ <item var="pElem" obj="elemList" index="1" interface="NodeList"/>
+ <getElementsByTagNameNS var="elemList" obj="doc" localName='"acronym"' namespaceURI='"*"' interface="Document"/>
+ <item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+ <setIdAttributeNS obj="pElem" localName='"dmstc"' namespaceURI='"http://www.w3.org/2000/xmlns/"' isId="true"/>
+ <setIdAttributeNS obj="acronymElem" localName='"noNamespaceSchemaLocation"' namespaceURI='"http://www.w3.org/2001/XMLSchema-instance"' isId="true"/>
+ <attributes var="attributesMap" obj="pElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xmlns:dmstc"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsId1True14"/>
+ <attributes var="attributesMap" obj="acronymElem"/>
+ <getNamedItem var="attr" obj="attributesMap" name='"xsi:noNamespaceSchemaLocation"'/>
+ <isId var="id" obj="attr"/>
+ <assertTrue actual="id" id="elementsetidattributensIsId2True14"/>
+ <getElementById obj="doc" var="elem" elementId='"Yes"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"acronym"' id="elementsetidattributens1GetElementById14" ignoreCase="false"/>
+ <getElementById obj="doc" var="elem" elementId='"http://www.usa.com"'/>
+ <tagName obj="elem" var="elemName"/>
+ <assertEquals actual="elemName" expected='"p"' id="elementsetidattributens2GetElementById14" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/entities01.xml b/test/testcases/tests/level3/core/entities01.xml
new file mode 100644
index 0000000..ea11f68
--- /dev/null
+++ b/test/testcases/tests/level3/core/entities01.xml
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="entities01">
+<metadata>
+<title>entities01</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with entities set to true, check that
+entity references and unused entity declaration are maintained.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="ent2" type="Entity"/>
+<var name="doctype" type="DocumentType"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"entities"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<!-- add an entity reference to the content of the p element -->
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<createEntityReference var="entRef" obj="doc" name='"ent1"'/>
+<appendChild var="child" obj="pElem" newChild="entRef"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<lastChild var="child" obj="pElem" interface="Node"/>
+<assertNotNull actual="child" id="lastChildNotNull"/>
+<!-- this should be a Entity Reference node -->
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"ent1"' ignoreCase="false" id="firstChild"/>
+<!-- early drafts would have removed unused entity declarations too -->
+<doctype var="doctype" obj="doc"/>
+<entities var="entities" obj="doctype"/>
+<getNamedItem var="ent2" obj="entities" name='"ent2"'/>
+<assertNotNull actual="ent2" id="ent2NotNull"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/entities02.xml b/test/testcases/tests/level3/core/entities02.xml
new file mode 100644
index 0000000..ef3d553
--- /dev/null
+++ b/test/testcases/tests/level3/core/entities02.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="entities02">
+<metadata>
+<title>entities02</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with entities set to false, check that
+entity references are expanded and unused entity declaration are maintained.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="entRef" type="EntityReference"/>
+<var name="childValue" type="DOMString"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="ent2" type="Entity"/>
+<var name="doctype" type="DocumentType"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"entities"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<!-- add an entity reference to the content of the p element -->
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<createEntityReference var="entRef" obj="doc" name='"ent1"'/>
+<appendChild var="child" obj="pElem" newChild="entRef"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<lastChild var="child" obj="pElem" interface="Node"/>
+<assertNotNull actual="child" id="lastChildNotNull"/>
+<!-- this should be a Text node -->
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"#text"' ignoreCase="false" id="firstChildName"/>
+<nodeValue var="childValue" obj="child"/>
+<assertEquals actual="childValue" expected='"barfoo"' ignoreCase="false" id="firstChildValue"/>
+<!-- early drafts would have removed unused entity declarations too -->
+<doctype var="doctype" obj="doc"/>
+<entities var="entities" obj="doctype"/>
+<getNamedItem var="ent2" obj="entities" name='"ent2"'/>
+<assertNotNull actual="ent2" id="ent2NotNull"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/entities03.xml b/test/testcases/tests/level3/core/entities03.xml
new file mode 100644
index 0000000..f02fd9f
--- /dev/null
+++ b/test/testcases/tests/level3/core/entities03.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="entities03">
+<metadata>
+<title>entities03</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with entities set to false, check that
+unbound entity references are preserved.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="entRef" type="EntityReference"/>
+<var name="childType" type="int"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"entities"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<!-- add an entity reference to the content of the p element -->
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<createEntityReference var="entRef" obj="doc" name='"ent3"'/>
+<appendChild var="child" obj="pElem" newChild="entRef"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<lastChild var="child" obj="pElem" interface="Node"/>
+<assertNotNull actual="child" id="lastChildNotNull"/>
+<!-- this should be a Entity Reference node -->
+<nodeType var="childType" obj="child"/>
+<assertEquals actual="childType" expected="5" ignoreCase="false" id="lastChildEntRef"/>
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"ent3"' ignoreCase="false" id="lastChildName"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/entities04.xml b/test/testcases/tests/level3/core/entities04.xml
new file mode 100644
index 0000000..2daaa4f
--- /dev/null
+++ b/test/testcases/tests/level3/core/entities04.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="entities04">
+<metadata>
+<title>entities04</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document using Node.normalize checking that "entities" parameter is ignored.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="ent2" type="Entity"/>
+<var name="doctype" type="DocumentType"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"entities"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<!-- add an entity reference to the content of the p element -->
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<createEntityReference var="entRef" obj="doc" name='"ent1"'/>
+<appendChild var="child" obj="pElem" newChild="entRef"/>
+<normalize obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<lastChild var="child" obj="pElem" interface="Node"/>
+<assertNotNull actual="child" id="lastChildNotNull"/>
+<!-- this should be a Entity Reference node -->
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"ent1"' ignoreCase="false" id="firstChild"/>
+<!-- early drafts would have removed unused entity declarations too -->
+<doctype var="doctype" obj="doc"/>
+<entities var="entities" obj="doctype"/>
+<getNamedItem var="ent2" obj="entities" name='"ent2"'/>
+<assertNotNull actual="ent2" id="ent2NotNull"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/entitygetinputencoding01.xml b/test/testcases/tests/level3/core/entitygetinputencoding01.xml
new file mode 100644
index 0000000..0bf9701
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetinputencoding01.xml
@@ -0,0 +1,42 @@
+<?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="entitygetinputencoding01">
+<metadata>
+<title>entitygetinputencoding01</title>
+<creator>IBM</creator>
+<description>
+ Call the getInputEncoding method on a UTF-8 encoded document and check if the
+ value returned is null for a internal general entity.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-inputEncoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"alpha"'/>
+<inputEncoding obj="entity" var="encodingName" interface="Entity"/>
+<assertNull actual="encodingName" id="entitygetinputencoding01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/entitygetinputencoding02.xml b/test/testcases/tests/level3/core/entitygetinputencoding02.xml
new file mode 100644
index 0000000..528b642
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetinputencoding02.xml
@@ -0,0 +1,42 @@
+<?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="entitygetinputencoding02">
+<metadata>
+<title>entitygetinputencoding02</title>
+<creator>IBM</creator>
+<description>
+ Call the getInputEncoding method on a UTF-16 encoded document that contains an external
+ unparsed entity and check if the value returned is null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-inputEncoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="barfoo_utf16" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"ent5"'/>
+<inputEncoding obj="entity" var="encodingName" interface="Entity"/>
+<assertNull actual="encodingName" id="entitygetinputencoding02" />
+</test>
diff --git a/test/testcases/tests/level3/core/entitygetinputencoding03.xml b/test/testcases/tests/level3/core/entitygetinputencoding03.xml
new file mode 100644
index 0000000..2ed67a4
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetinputencoding03.xml
@@ -0,0 +1,52 @@
+<?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="entitygetinputencoding03">
+<metadata>
+<title>entitygetinputencoding03</title>
+<creator>IBM</creator>
+<description>
+Check the value of Entity.inputEncoding on an UTF-16 external entity
+is either UTF-16 or UTF-16LE
+</description>
+<contributor>Neil Delima</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-inputEncoding"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Dec/0045.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="external_barfoo" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"ent1"'/>
+<inputEncoding obj="entity" var="encodingName" interface="Entity"/>
+<!-- accept UTF-16LE and UTF-16 as encoding values -->
+<if>
+ <notEquals actual="encodingName" expected='"UTF-16LE"' ignoreCase="true"/>
+ <assertEquals id="entityIsUTF16orUTF16LE" actual="encodingName" expected='"UTF-16"' ignoreCase="true"/>
+</if>
+<!-- check that document's encoding is UTF-8 -->
+<inputEncoding obj="doc" var="encodingName" interface="Document"/>
+<assertEquals id="documentIsUTF8" actual="encodingName" expected='"UTF-8"' ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level3/core/entitygetinputencoding04.xml b/test/testcases/tests/level3/core/entitygetinputencoding04.xml
new file mode 100644
index 0000000..5b1af25
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetinputencoding04.xml
@@ -0,0 +1,48 @@
+<?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="entitygetinputencoding04">
+<metadata>
+<title>entitygetinputencoding04</title>
+<creator>IBM</creator>
+<description>
+Check the value of Entity.inputEncoding on an UTF-8 external entity
+is UTF-8.
+</description>
+<contributor>Neil Delima</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-inputEncoding"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Dec/0045.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="external_barfoo" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"ent2"'/>
+<inputEncoding obj="entity" var="encodingName" interface="Entity"/>
+<assertEquals id="entityIsUTF8" actual="encodingName" expected='"UTF-8"' ignoreCase="true"/>
+<!-- check that document's encoding is UTF-8 -->
+<inputEncoding obj="doc" var="encodingName" interface="Document"/>
+<assertEquals id="documentIsUTF8" actual="encodingName" expected='"UTF-8"' ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level3/core/entitygetxmlencoding01.xml b/test/testcases/tests/level3/core/entitygetxmlencoding01.xml
new file mode 100644
index 0000000..b7394f9
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetxmlencoding01.xml
@@ -0,0 +1,42 @@
+<?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="entitygetxmlencoding01">
+<metadata>
+<title>entitygetxmlencoding01</title>
+<creator>IBM</creator>
+<description>
+ Call the getXmlEncoding method on a UTF-8 encoded entity of a document that is not an
+ external parsed entity and check if the value returned is null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-encoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"alpha"'/>
+<xmlEncoding obj="entity" var="encodingName" interface="Entity"/>
+<assertNull actual="encodingName" id="entitygetxmlencoding01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/entitygetxmlencoding02.xml b/test/testcases/tests/level3/core/entitygetxmlencoding02.xml
new file mode 100644
index 0000000..5bc51ad
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetxmlencoding02.xml
@@ -0,0 +1,42 @@
+<?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="entitygetxmlencoding02">
+<metadata>
+<title>entitygetxmlencoding02</title>
+<creator>IBM</creator>
+<description>
+ Call the getencoding method on a document that contains an external
+ unparsed entity and check if the value returned is null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-encoding"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="external_barfoo" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"ent5"'/>
+<xmlEncoding obj="entity" var="encodingName" interface="Entity"/>
+<assertNull actual="encodingName" id="entitygetxmlencoding02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/entitygetxmlencoding03.xml b/test/testcases/tests/level3/core/entitygetxmlencoding03.xml
new file mode 100644
index 0000000..ea24f24
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetxmlencoding03.xml
@@ -0,0 +1,45 @@
+<?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="entitygetxmlencoding03">
+<metadata>
+<title>entitygetxmlencoding03</title>
+<creator>IBM</creator>
+<description>
+Check the value of Entity.xmlEncoding on an external entity with an encoding
+declaration precisely matches the specified value.
+</description>
+<contributor>Neil Delima</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-encoding"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Dec/0045.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="external_barfoo" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"ent1"'/>
+<xmlEncoding obj="entity" var="encodingName" interface="Entity"/>
+<assertEquals expected='"uTf-16"' actual="encodingName" id="xmlEncoding" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/entitygetxmlencoding04.xml b/test/testcases/tests/level3/core/entitygetxmlencoding04.xml
new file mode 100644
index 0000000..db26480
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetxmlencoding04.xml
@@ -0,0 +1,45 @@
+<?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="entitygetxmlencoding04">
+<metadata>
+<title>entitygetxmlencoding04</title>
+<creator>IBM</creator>
+<description>
+Check the value of Entity.xmlEncoding on an external entity without an encoding
+declaration is null.
+</description>
+<contributor>Neil Delima</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-encoding"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Dec/0045.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="encodingName" type="DOMString"/>
+<load var="doc" href="external_barfoo" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"ent2"'/>
+<xmlEncoding obj="entity" var="encodingName" interface="Entity"/>
+<assertNull actual="encodingName" id="xmlEncoding"/>
+</test>
diff --git a/test/testcases/tests/level3/core/entitygetxmlversion01.xml b/test/testcases/tests/level3/core/entitygetxmlversion01.xml
new file mode 100644
index 0000000..6526f2b
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetxmlversion01.xml
@@ -0,0 +1,42 @@
+<?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="entitygetxmlversion01">
+<metadata>
+<title>entitygetxmlversion01</title>
+<creator>IBM</creator>
+<description>
+ Call the getXmlVersion method on entity that is not an external entity and check if
+ the value returned is null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-version"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="entityVersion" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"epsilon"'/>
+<xmlVersion obj="entity" var="entityVersion" interface="Entity"/>
+<assertNull actual="entityVersion" id="entitygetxmlversion01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/entitygetxmlversion02.xml b/test/testcases/tests/level3/core/entitygetxmlversion02.xml
new file mode 100644
index 0000000..3136762
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetxmlversion02.xml
@@ -0,0 +1,42 @@
+<?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="entitygetxmlversion02">
+<metadata>
+<title>entitygetxmlversion02</title>
+<creator>IBM</creator>
+<description>
+ Call the getXmlVersion method on a UTF-16 encoded document that contains an external
+ unparsed entity declaration and check if the value returned is null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-version"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="entityVersion" type="DOMString"/>
+<load var="doc" href="barfoo_utf16" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"ent5"'/>
+<xmlVersion obj="entity" var="entityVersion" interface="Entity"/>
+<assertNull actual="entityVersion" id="entitygetxmlversion02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/entitygetxmlversion03.xml b/test/testcases/tests/level3/core/entitygetxmlversion03.xml
new file mode 100644
index 0000000..0e2adb4
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetxmlversion03.xml
@@ -0,0 +1,45 @@
+<?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="entitygetxmlversion03">
+<metadata>
+<title>entitygetxmlversion03</title>
+<creator>IBM</creator>
+<description>
+ Check that the value of Entity.xmlVersion on an external entity without
+ a version declaration is null.
+</description>
+<contributor>Neil Delima</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-version"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Dec/0045.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="entityVersion" type="DOMString"/>
+<load var="doc" href="external_barfoo" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"ent2"'/>
+<xmlVersion obj="entity" var="entityVersion" interface="Entity"/>
+<assertNull actual="entityVersion" id="xmlVersionNull"/>
+</test>
diff --git a/test/testcases/tests/level3/core/entitygetxmlversion04.xml b/test/testcases/tests/level3/core/entitygetxmlversion04.xml
new file mode 100644
index 0000000..391d76a
--- /dev/null
+++ b/test/testcases/tests/level3/core/entitygetxmlversion04.xml
@@ -0,0 +1,45 @@
+<?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="entitygetxmlversion04">
+<metadata>
+<title>entitygetxmlversion04</title>
+<creator>IBM</creator>
+<description>
+ Check that the value of Entity.xmlVersion on an external entity with
+ a version declaration is "1.0".
+</description>
+<contributor>Neil Delima</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Entity3-version"/>
+<subject resource="http://lists.w3.org/Archives/Public/www-dom-ts/2003Dec/0045.html"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="entityVersion" type="DOMString"/>
+<load var="doc" href="external_barfoo" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"ent1"'/>
+<xmlVersion obj="entity" var="entityVersion" interface="Entity"/>
+<assertEquals expected='"1.0"' actual="entityVersion" id="xmlVersion10" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/files/.cvsignore b/test/testcases/tests/level3/core/files/.cvsignore
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/.cvsignore
diff --git a/test/testcases/tests/level3/core/files/CVS/Entries b/test/testcases/tests/level3/core/files/CVS/Entries
new file mode 100644
index 0000000..2634cf9
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/CVS/Entries
@@ -0,0 +1,71 @@
+/.cvsignore/1.2/Fri Apr 3 02:47:59 2009//
+/Yes/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/barfoo.svg/1.2/Fri Apr 3 02:47:59 2009//
+/barfoo.xhtml/1.4/Fri Apr 3 02:47:59 2009/-kb/
+/barfoo.xml/1.5/Fri Apr 3 02:47:59 2009//
+/barfoo_base.svg/1.3/Fri Apr 3 02:47:59 2009//
+/barfoo_base.xhtml/1.3/Fri Apr 3 02:47:59 2009/-kb/
+/barfoo_base.xml/1.4/Fri Apr 3 02:47:59 2009//
+/barfoo_nodefaultns.svg/1.1/Fri Apr 3 02:47:59 2009//
+/barfoo_nodefaultns.xhtml/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/barfoo_nodefaultns.xml/1.2/Fri Apr 3 02:47:59 2009//
+/barfoo_standalone_no.svg/1.1/Fri Apr 3 02:47:59 2009//
+/barfoo_standalone_no.xhtml/1.4/Fri Apr 3 02:47:59 2009/-kb/
+/barfoo_standalone_no.xml/1.4/Fri Apr 3 02:47:59 2009//
+/barfoo_standalone_yes.svg/1.1/Fri Apr 3 02:47:59 2009//
+/barfoo_standalone_yes.xhtml/1.4/Fri Apr 3 02:47:59 2009/-kb/
+/barfoo_standalone_yes.xml/1.4/Fri Apr 3 02:47:59 2009//
+/barfoo_utf16.svg/1.3/Fri Apr 3 02:47:59 2009/-kb/
+/barfoo_utf16.xhtml/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/barfoo_utf16.xml/1.3/Fri Apr 3 02:47:59 2009/-kb/
+/barfoo_utf8.svg/1.1/Fri Apr 3 02:47:59 2009//
+/barfoo_utf8.xhtml/1.4/Fri Apr 3 02:47:59 2009/-kb/
+/barfoo_utf8.xml/1.4/Fri Apr 3 02:47:59 2009//
+/canonicalform01.svg/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/canonicalform01.xhtml/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/canonicalform01.xml/1.2/Fri Apr 3 02:47:59 2009//
+/canonicalform02.svg/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/canonicalform02.xhtml/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/canonicalform02.xml/1.2/Fri Apr 3 02:47:59 2009//
+/canonicalform03.svg/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/canonicalform03.xhtml/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/canonicalform03.xml/1.2/Fri Apr 3 02:47:59 2009//
+/canonicalform04.svg/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/canonicalform04.xhtml/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/canonicalform04.xml/1.2/Fri Apr 3 02:47:59 2009//
+/canonicalform05.svg/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/canonicalform05.xhtml/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/canonicalform05.xml/1.2/Fri Apr 3 02:47:59 2009//
+/datatype_normalization.svg/1.3/Fri Apr 3 02:47:59 2009/-kb/
+/datatype_normalization.svg.xsd/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/datatype_normalization.xml/1.3/Fri Apr 3 02:47:59 2009//
+/datatype_normalization.xsd/1.3/Fri Apr 3 02:47:59 2009/-kb/
+/datatype_normalization2.svg/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/datatype_normalization2.svg.xsd/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/datatype_normalization2.xhtml/1.3/Fri Apr 3 02:47:59 2009/-kb/
+/datatype_normalization2.xml/1.3/Fri Apr 3 02:47:59 2009//
+/datatype_normalization2.xsd/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/external_barfoo.svg/1.2/Fri Apr 3 02:47:59 2009//
+/external_barfoo.xhtml/1.4/Fri Apr 3 02:47:59 2009/-kb/
+/external_barfoo.xml/1.5/Fri Apr 3 02:47:59 2009//
+/external_foo.ent/1.1/Fri Apr 3 02:47:59 2009//
+/external_foobr.ent/1.1/Fri Apr 3 02:47:59 2009//
+/external_widget.ent/1.1/Fri Apr 3 02:47:59 2009//
+/hc_nodtdstaff.html/1.2/Fri Apr 3 02:47:59 2009//
+/hc_nodtdstaff.svg/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/hc_nodtdstaff.xhtml/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/hc_nodtdstaff.xml/1.2/Fri Apr 3 02:47:59 2009//
+/hc_staff.svg/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/hc_staff.svg.xsd/1.1/Fri Apr 3 02:47:59 2009/-kb/
+/hc_staff.xhtml/1.5/Fri Apr 3 02:47:59 2009/-kb/
+/hc_staff.xml/1.6/Fri Apr 3 02:47:59 2009//
+/hc_staff.xsd/1.8/Fri Apr 3 02:47:59 2009/-kb/
+/svgtest.js/1.1/Fri Apr 3 02:47:59 2009//
+/svgunit.js/1.1/Fri Apr 3 02:47:59 2009//
+/typeinfo.svg/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/typeinfo.svg.xsd/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/typeinfo.xhtml/1.3/Fri Apr 3 02:47:59 2009/-kb/
+/typeinfo.xml/1.3/Fri Apr 3 02:47:59 2009//
+/typeinfo.xsd/1.2/Fri Apr 3 02:47:59 2009/-kb/
+/xhtml1-strict.dtd/1.4/Fri Apr 3 02:47:59 2009/-kb/
+D
diff --git a/test/testcases/tests/level3/core/files/CVS/Repository b/test/testcases/tests/level3/core/files/CVS/Repository
new file mode 100644
index 0000000..1efd590
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3/core/files
diff --git a/test/testcases/tests/level3/core/files/CVS/Root b/test/testcases/tests/level3/core/files/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/core/files/CVS/Template b/test/testcases/tests/level3/core/files/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/CVS/Template
diff --git a/test/testcases/tests/level3/core/files/Yes b/test/testcases/tests/level3/core/files/Yes
new file mode 100644
index 0000000..b2019bc
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/Yes
@@ -0,0 +1,28 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+xsi:noNamespaceSchemaLocation="Yes" appears in hc_staff.xml
+but it was not anticipated that "Yes" would be resolved since
+there were no elements without a namespace. However, since
+at least one processor does attempt to load "Yes", this file
+is here to satisfy that request.
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:element name="bogus" type="xsd:string"/>
+</xsd:schema>
diff --git a/test/testcases/tests/level3/core/files/barfoo.svg b/test/testcases/tests/level3/core/files/barfoo.svg
new file mode 100644
index 0000000..a513594
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo.svg
@@ -0,0 +1,27 @@
+<!DOCTYPE svg [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT svg (rect,script,body)>
+<!ATTLIST svg xmlns CDATA #IMPLIED>
+<!ELEMENT rect EMPTY>
+<!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED
+ fill CDATA #REQUIRED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT body (p)>
+<!ATTLIST body xmlns CDATA #IMPLIED>
+<!ELEMENT br EMPTY>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script type CDATA #IMPLIED>
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<svg xmlns="http://www.w3.org/2000/svg">
+<rect x="0" y="0" width="100" height="100" fill="blue"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+<body xmlns='http://www.w3.org/1999/xhtml'>
+<p>bar</p>
+</body>
+</svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/barfoo.xhtml b/test/testcases/tests/level3/core/files/barfoo.xhtml
new file mode 100644
index 0000000..51c8c07
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo.xhtml
@@ -0,0 +1,25 @@
+<!DOCTYPE html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT body (p)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT br EMPTY>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>replaceWholeText sample</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>bar</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/barfoo.xml b/test/testcases/tests/level3/core/files/barfoo.xml
new file mode 100644
index 0000000..9d055dc
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo.xml
@@ -0,0 +1,25 @@
+<!DOCTYPE html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT body (p)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT br EMPTY>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>replaceWholeText sample</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>bar</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/barfoo_base.svg b/test/testcases/tests/level3/core/files/barfoo_base.svg
new file mode 100644
index 0000000..e905cc8
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_base.svg
@@ -0,0 +1,37 @@
+<!DOCTYPE svg [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT svg (rect,script,head,body)>
+<!ATTLIST svg xmlns CDATA #IMPLIED
+ xml:base CDATA #IMPLIED>
+<!ELEMENT rect EMPTY>
+<!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED
+ fill CDATA #REQUIRED>
+<!ELEMENT body (p)>
+<!ATTLIST body
+ xml:base CDATA #IMPLIED
+ xmlns CDATA #IMPLIED
+ id ID #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT br EMPTY>
+<!ELEMENT head (title)>
+<!ATTLIST head xmlns CDATA #IMPLIED>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script type CDATA #IMPLIED>
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<svg xmlns="http://www.w3.org/2000/svg" xml:base="http://www.w3.org/DOM/L3Test">
+<rect x="0" y="0" width="100" height="100" fill="blue"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+<head xmlns='http://www.w3.org/1999/xhtml'>
+<title>XML Base sample</title>
+</head>
+<body xmlns='http://www.w3.org/1999/xhtml' xml:base="http://www.w3.org/DOM/EmployeeID" id="body">
+<p>bar</p><!-- keep comment adjacent to p -->
+</body>
+</svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/barfoo_base.xhtml b/test/testcases/tests/level3/core/files/barfoo_base.xhtml
new file mode 100644
index 0000000..4c79469
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_base.xhtml
@@ -0,0 +1,29 @@
+<!DOCTYPE html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html (head, body)>
+<!ATTLIST html
+ xmlns CDATA #IMPLIED
+ xml:base CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT body (p)>
+<!ATTLIST body xml:base CDATA #IMPLIED
+ id ID #IMPLIED
+ onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT br EMPTY>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml' xml:base="http://www.w3.org/DOM/L3Test">
+<head>
+<title>XML Base sample</title>
+</head>
+<body xml:base="http://www.w3.org/DOM/EmployeeID" id="body">
+<p>bar</p><!-- keep comment adjacent to p -->
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/barfoo_base.xml b/test/testcases/tests/level3/core/files/barfoo_base.xml
new file mode 100644
index 0000000..4079a3b
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_base.xml
@@ -0,0 +1,29 @@
+<!DOCTYPE html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html (head, body)>
+<!ATTLIST html
+ xmlns CDATA #IMPLIED
+ xml:base CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT body (p)>
+<!ATTLIST body xml:base CDATA #IMPLIED
+ id ID #IMPLIED
+ onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT br EMPTY>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml' xml:base="http://www.w3.org/DOM/L3Test">
+<head>
+<title>XML Base sample</title>
+</head>
+<body xml:base="http://www.w3.org/DOM/EmployeeID" id="body">
+<p>bar</p><!-- keep comment adjacent to p -->
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/barfoo_nodefaultns.svg b/test/testcases/tests/level3/core/files/barfoo_nodefaultns.svg
new file mode 100644
index 0000000..dbb156c
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_nodefaultns.svg
@@ -0,0 +1,28 @@
+<!DOCTYPE svg:svg [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT svg:svg (svg:rect,svg:script,html:body)>
+<!ATTLIST svg:svg xmlns:svg CDATA #IMPLIED>
+<!ELEMENT svg:rect EMPTY>
+<!ATTLIST svg:rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED
+ fill CDATA #REQUIRED>
+<!ELEMENT html:p (#PCDATA|html:br)*>
+<!ATTLIST html:p class CDATA #IMPLIED>
+<!ELEMENT html:body (html:p)>
+<!ATTLIST html:body xmlns:html CDATA #IMPLIED>
+<!ELEMENT html:br EMPTY>
+<!ELEMENT svg:script (#PCDATA)>
+<!ATTLIST svg:script type CDATA #IMPLIED>
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<svg:svg xmlns:svg="http://www.w3.org/2000/svg">
+<svg:rect x="0" y="0" width="100" height="100" fill="blue"/><svg:script type="text/ecmascript">&svgtest;&svgunit;</svg:script>
+<html:body xmlns:html='http://www.w3.org/1999/xhtml'>
+<html:p class="visible:false">bar</html:p>
+</html:body>
+</svg:svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/barfoo_nodefaultns.xhtml b/test/testcases/tests/level3/core/files/barfoo_nodefaultns.xhtml
new file mode 100644
index 0000000..8c2c151
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_nodefaultns.xhtml
@@ -0,0 +1,26 @@
+<!DOCTYPE html:html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html:html (html:head, html:body)>
+<!ATTLIST html:html xmlns:html CDATA #IMPLIED>
+<!ELEMENT html:head (html:title,script*)>
+<!ATTLIST html:head xmlns CDATA #IMPLIED>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT html:title (#PCDATA)>
+<!ELEMENT html:body (html:p)>
+<!ELEMENT html:p (#PCDATA|html:br)*>
+<!ATTLIST html:p class CDATA #IMPLIED>
+<!ELEMENT html:br EMPTY>
+]>
+<html:html xmlns:html='http://www.w3.org/1999/xhtml'>
+<html:head xmlns='http://www.w3.org/1999/xhtml'>
+<html:title>test file</html:title>
+</html:head>
+<html:body>
+<html:p class="visible:false">bar</html:p>
+</html:body>
+</html:html>
diff --git a/test/testcases/tests/level3/core/files/barfoo_nodefaultns.xml b/test/testcases/tests/level3/core/files/barfoo_nodefaultns.xml
new file mode 100644
index 0000000..dc7220c
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_nodefaultns.xml
@@ -0,0 +1,26 @@
+<!DOCTYPE html:html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html:html (html:head, html:body)>
+<!ATTLIST html:html xmlns:html CDATA #IMPLIED>
+<!ELEMENT html:head (html:title,script*)>
+<!ATTLIST html:head xmlns CDATA #IMPLIED>
+<!ELEMENT html:title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT html:body (html:p)>
+<!ELEMENT html:p (#PCDATA|html:br)*>
+<!ATTLIST html:p class CDATA #IMPLIED>
+<!ELEMENT html:br EMPTY>
+]>
+<html:html xmlns:html='http://www.w3.org/1999/xhtml'>
+<html:head xmlns='http://www.w3.org/1999/xhtml'>
+<html:title>test file</html:title>
+</html:head>
+<html:body>
+<html:p class="visible:false">bar</html:p>
+</html:body>
+</html:html>
diff --git a/test/testcases/tests/level3/core/files/barfoo_standalone_no.svg b/test/testcases/tests/level3/core/files/barfoo_standalone_no.svg
new file mode 100644
index 0000000..ad183a3
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_standalone_no.svg
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT svg (rect,script,body)>
+<!ATTLIST svg xmlns CDATA #IMPLIED>
+<!ELEMENT rect EMPTY>
+<!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED
+ fill CDATA #REQUIRED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT body (p)>
+<!ATTLIST body xmlns CDATA #IMPLIED>
+<!ELEMENT br EMPTY>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script type CDATA #IMPLIED>
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<svg xmlns="http://www.w3.org/2000/svg">
+<rect x="0" y="0" width="100" height="100" fill="blue"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+<body xmlns='http://www.w3.org/1999/xhtml'>
+<p>bar</p>
+</body>
+</svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/barfoo_standalone_no.xhtml b/test/testcases/tests/level3/core/files/barfoo_standalone_no.xhtml
new file mode 100644
index 0000000..e41c526
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_standalone_no.xhtml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT body (p)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT br EMPTY>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>replaceWholeText sample</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>bar</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/barfoo_standalone_no.xml b/test/testcases/tests/level3/core/files/barfoo_standalone_no.xml
new file mode 100644
index 0000000..6723dfa
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_standalone_no.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT body (p)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT br EMPTY>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>replaceWholeText sample</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>bar</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/barfoo_standalone_yes.svg b/test/testcases/tests/level3/core/files/barfoo_standalone_yes.svg
new file mode 100644
index 0000000..1d76949
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_standalone_yes.svg
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!DOCTYPE svg [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT svg (rect,body)>
+<!ATTLIST svg xmlns CDATA #IMPLIED>
+<!ELEMENT rect EMPTY>
+<!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED
+ fill CDATA #REQUIRED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT body (p)>
+<!ATTLIST body xmlns CDATA #IMPLIED>
+<!ELEMENT br EMPTY>
+]>
+<svg xmlns="http://www.w3.org/2000/svg">
+<rect x="0" y="0" width="100" height="100" fill="blue"/>
+<body xmlns='http://www.w3.org/1999/xhtml'>
+<p>bar</p>
+</body>
+</svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/barfoo_standalone_yes.xhtml b/test/testcases/tests/level3/core/files/barfoo_standalone_yes.xhtml
new file mode 100644
index 0000000..49f389e
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_standalone_yes.xhtml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!DOCTYPE html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT body (p)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT br EMPTY>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>getXmlStandalone test doc</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>bar</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/barfoo_standalone_yes.xml b/test/testcases/tests/level3/core/files/barfoo_standalone_yes.xml
new file mode 100644
index 0000000..0adf126
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_standalone_yes.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!DOCTYPE html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT body (p)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT br EMPTY>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>getXmlStandalone test doc</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>bar</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/barfoo_utf16.svg b/test/testcases/tests/level3/core/files/barfoo_utf16.svg
new file mode 100644
index 0000000..40f8314
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_utf16.svg
Binary files differ
diff --git a/test/testcases/tests/level3/core/files/barfoo_utf16.xhtml b/test/testcases/tests/level3/core/files/barfoo_utf16.xhtml
new file mode 100644
index 0000000..260282d
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_utf16.xhtml
Binary files differ
diff --git a/test/testcases/tests/level3/core/files/barfoo_utf16.xml b/test/testcases/tests/level3/core/files/barfoo_utf16.xml
new file mode 100644
index 0000000..e6706ab
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_utf16.xml
Binary files differ
diff --git a/test/testcases/tests/level3/core/files/barfoo_utf8.svg b/test/testcases/tests/level3/core/files/barfoo_utf8.svg
new file mode 100644
index 0000000..8ebb45d
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_utf8.svg
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="uTf-8"?>
+<!DOCTYPE svg [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT svg (rect,script,body)>
+<!ATTLIST svg xmlns CDATA #IMPLIED>
+<!ELEMENT rect EMPTY>
+<!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED
+ fill CDATA #REQUIRED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT body (p)>
+<!ATTLIST body xmlns CDATA #IMPLIED>
+<!ELEMENT br EMPTY>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script type CDATA #IMPLIED>
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+<!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+<!NOTATION notation1 PUBLIC "notation1File">
+]>
+<svg xmlns="http://www.w3.org/2000/svg">
+<rect x="0" y="0" width="100" height="100" fill="blue"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+<body xmlns='http://www.w3.org/1999/xhtml'>
+<p>bar</p>
+</body>
+</svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/barfoo_utf8.xhtml b/test/testcases/tests/level3/core/files/barfoo_utf8.xhtml
new file mode 100644
index 0000000..5a7e3fc
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_utf8.xhtml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="uTf-8"?>
+<!DOCTYPE html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT body (p)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT br EMPTY>
+<!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+<!NOTATION notation1 PUBLIC "notation1File">
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>test file</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>bar</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/barfoo_utf8.xml b/test/testcases/tests/level3/core/files/barfoo_utf8.xml
new file mode 100644
index 0000000..414340c
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/barfoo_utf8.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="uTf-8"?>
+<!DOCTYPE html [
+<!ENTITY ent1 'foo'>
+<!ENTITY ent2 'foo<br/>'>
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT body (p)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ELEMENT br EMPTY>
+<!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+<!NOTATION notation1 PUBLIC "notation1File">
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>test file</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>bar</p>
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/canonicalform01.svg b/test/testcases/tests/level3/core/files/canonicalform01.svg
new file mode 100644
index 0000000..ea1a91e
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform01.svg
@@ -0,0 +1,17 @@
+<?xml version="1.0"?>
+
+<?xml-stylesheet href="doc.xsl"
+ type="text/xsl" ?>
+
+<!DOCTYPE svg SYSTEM "xhtml1-strict.dtd"[
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100" fill="blue"/><script type="text/ecmascript">&svgtest;&svgunit;</script><body xmlns='http://www.w3.org/1999/xhtml'>
+<p>Hello, world!<!-- Comment 1 --></p></body></svg>
+
+<?pi-without-data ?>
+
+<!-- Comment 2 -->
+
+<!-- Comment 3 -->
diff --git a/test/testcases/tests/level3/core/files/canonicalform01.xhtml b/test/testcases/tests/level3/core/files/canonicalform01.xhtml
new file mode 100644
index 0000000..35a0979
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform01.xhtml
@@ -0,0 +1,14 @@
+<?xml version="1.0"?>
+
+<?xml-stylesheet href="doc.xsl"
+ type="text/xsl" ?>
+
+<!DOCTYPE html SYSTEM "xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform01</title></head><body onload="parent.loadComplete()">
+<p>Hello, world!<!-- Comment 1 --></p></body></html>
+
+<?pi-without-data ?>
+
+<!-- Comment 2 -->
+
+<!-- Comment 3 -->
diff --git a/test/testcases/tests/level3/core/files/canonicalform01.xml b/test/testcases/tests/level3/core/files/canonicalform01.xml
new file mode 100644
index 0000000..ac9b7c8
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform01.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0"?>
+
+<?xml-stylesheet href="doc.xsl"
+ type="text/xsl" ?>
+
+<!DOCTYPE html SYSTEM "xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform01</title></head><body onload="parent.loadComplete()">
+<p>Hello, world!<!-- Comment 1 --></p></body></html>
+
+<?pi-without-data ?>
+
+<!-- Comment 2 -->
+
+<!-- Comment 3 -->
diff --git a/test/testcases/tests/level3/core/files/canonicalform02.svg b/test/testcases/tests/level3/core/files/canonicalform02.svg
new file mode 100644
index 0000000..132c460
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform02.svg
@@ -0,0 +1,14 @@
+<!DOCTYPE svg SYSTEM "xhtml1-strict.dtd"[
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+]><svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100" fill="blue"/><script type="text/ecmascript">&svgtest;&svgunit;</script><body xmlns='http://www.w3.org/1999/xhtml'>
+ <acronym> </acronym>
+ <em> A B </em>
+ <p>
+ A
+ <acronym> </acronym>
+ B
+ <em> A B </em>
+ C
+ </p>
+</body></svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/canonicalform02.xhtml b/test/testcases/tests/level3/core/files/canonicalform02.xhtml
new file mode 100644
index 0000000..270d698
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform02.xhtml
@@ -0,0 +1,11 @@
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform02</title></head><body onload="parent.loadComplete()">
+ <acronym> </acronym>
+ <em> A B </em>
+ <p>
+ A
+ <acronym> </acronym>
+ B
+ <em> A B </em>
+ C
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level3/core/files/canonicalform02.xml b/test/testcases/tests/level3/core/files/canonicalform02.xml
new file mode 100644
index 0000000..f949cfc
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform02.xml
@@ -0,0 +1,11 @@
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform02</title></head><body onload="parent.loadComplete()">
+ <acronym> </acronym>
+ <em> A B </em>
+ <p>
+ A
+ <acronym> </acronym>
+ B
+ <em> A B </em>
+ C
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level3/core/files/canonicalform03.svg b/test/testcases/tests/level3/core/files/canonicalform03.svg
new file mode 100644
index 0000000..e6ea9a4
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform03.svg
@@ -0,0 +1,22 @@
+<!DOCTYPE svg SYSTEM "xhtml1-strict.dtd"[
+<!ATTLIST acronym title CDATA "default">
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100" fill="blue"/><script type="text/ecmascript">&svgtest;&svgunit;</script><body xmlns='http://www.w3.org/1999/xhtml'>
+ <br />
+ <br ></br>
+ <div name = "elem3" id="elem3" />
+ <div name="elem4" id="elem4" ></div>
+ <div a:attr="out" b:attr="sorted" name="all" class="I'm"
+ xmlns:b="http://www.ietf.org"
+ xmlns:a="http://www.w3.org"
+ xmlns="http://example.org"/>
+ <div xmlns="" xmlns:a="http://www.w3.org">
+ <div xmlns="http://www.ietf.org">
+ <div xmlns="" xmlns:a="http://www.w3.org">
+ <acronym xmlns="" xmlns:a="http://www.ietf.org"/>
+ </div>
+ </div>
+ </div>
+</body></svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/canonicalform03.xhtml b/test/testcases/tests/level3/core/files/canonicalform03.xhtml
new file mode 100644
index 0000000..4caa90d
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform03.xhtml
@@ -0,0 +1,18 @@
+<!DOCTYPE html [<!ATTLIST acronym title CDATA "default">]>
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform03</title></head><body onload="parent.loadComplete()">
+ <br />
+ <br ></br>
+ <div name = "elem3" id="elem3" />
+ <div name="elem4" id="elem4" ></div>
+ <div a:attr="out" b:attr="sorted" name="all" class="I'm"
+ xmlns:b="http://www.ietf.org"
+ xmlns:a="http://www.w3.org"
+ xmlns="http://example.org"/>
+ <div xmlns="" xmlns:a="http://www.w3.org">
+ <div xmlns="http://www.ietf.org">
+ <div xmlns="" xmlns:a="http://www.w3.org">
+ <acronym xmlns="" xmlns:a="http://www.ietf.org"/>
+ </div>
+ </div>
+ </div>
+</body></html>
diff --git a/test/testcases/tests/level3/core/files/canonicalform03.xml b/test/testcases/tests/level3/core/files/canonicalform03.xml
new file mode 100644
index 0000000..d1257bc
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform03.xml
@@ -0,0 +1,18 @@
+<!DOCTYPE html [<!ATTLIST acronym title CDATA "default">]>
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform03</title></head><body onload="parent.loadComplete()">
+ <br />
+ <br ></br>
+ <div name = "elem3" id="elem3" />
+ <div name="elem4" id="elem4" ></div>
+ <div a:attr="out" b:attr="sorted" name="all" class="I'm"
+ xmlns:b="http://www.ietf.org"
+ xmlns:a="http://www.w3.org"
+ xmlns="http://example.org"/>
+ <div xmlns="" xmlns:a="http://www.w3.org">
+ <div xmlns="http://www.ietf.org">
+ <div xmlns="" xmlns:a="http://www.w3.org">
+ <acronym xmlns="" xmlns:a="http://www.ietf.org"/>
+ </div>
+ </div>
+ </div>
+</body></html>
diff --git a/test/testcases/tests/level3/core/files/canonicalform04.svg b/test/testcases/tests/level3/core/files/canonicalform04.svg
new file mode 100644
index 0000000..0b5a1d1
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform04.svg
@@ -0,0 +1,15 @@
+<!DOCTYPE svg [
+<!ATTLIST div id ID #IMPLIED>
+<!ATTLIST div class NMTOKENS #IMPLIED>
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100" fill="blue"/><script type="text/ecmascript">&svgtest;&svgunit;</script><body xmlns='http://www.w3.org/1999/xhtml'>
+ <em>First line&#x0d;&#10;Second line</em>
+ <acronym>&#x32;</acronym>
+ <code><![CDATA[value>"0" && value<"10" ?"valid":"error"]]></code>
+ <code title='value>"0" &amp;&amp; value&lt;"10" ?"valid":"error"'>valid</code>
+ <div title=' &apos; &#x20;&#13;&#xa;&#9; &apos; '/>
+ <div class=' A &#x20;&#13;&#xa;&#9; B '/>
+ <div id=' &apos; &#x20;&#13;&#xa;&#9; &apos; '/>
+</body></svg>
diff --git a/test/testcases/tests/level3/core/files/canonicalform04.xhtml b/test/testcases/tests/level3/core/files/canonicalform04.xhtml
new file mode 100644
index 0000000..53a51ca
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform04.xhtml
@@ -0,0 +1,13 @@
+<!DOCTYPE html [
+<!ATTLIST div id ID #IMPLIED>
+<!ATTLIST div class NMTOKENS #IMPLIED>
+]>
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform04</title></head><body onload="parent.loadComplete()">
+ <em>First line&#x0d;&#10;Second line</em>
+ <acronym>&#x32;</acronym>
+ <code><![CDATA[value>"0" && value<"10" ?"valid":"error"]]></code>
+ <code title='value>"0" &amp;&amp; value&lt;"10" ?"valid":"error"'>valid</code>
+ <div title=' &apos; &#x20;&#13;&#xa;&#9; &apos; '/>
+ <div class=' A &#x20;&#13;&#xa;&#9; B '/>
+ <div id=' &apos; &#x20;&#13;&#xa;&#9; &apos; '/>
+</body></html>
diff --git a/test/testcases/tests/level3/core/files/canonicalform04.xml b/test/testcases/tests/level3/core/files/canonicalform04.xml
new file mode 100644
index 0000000..41f59bf
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform04.xml
@@ -0,0 +1,13 @@
+<!DOCTYPE html [
+<!ATTLIST div id ID #IMPLIED>
+<!ATTLIST div class NMTOKENS #IMPLIED>
+]>
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform04</title></head><body onload="parent.loadComplete()">
+ <em>First line&#x0d;&#10;Second line</em>
+ <acronym>&#x32;</acronym>
+ <code><![CDATA[value>"0" && value<"10" ?"valid":"error"]]></code>
+ <code title='value>"0" &amp;&amp; value&lt;"10" ?"valid":"error"'>valid</code>
+ <div title=' &apos; &#x20;&#13;&#xa;&#9; &apos; '/>
+ <div class=' A &#x20;&#13;&#xa;&#9; B '/>
+ <div id=' &apos; &#x20;&#13;&#xa;&#9; &apos; '/>
+</body></html>
diff --git a/test/testcases/tests/level3/core/files/canonicalform05.svg b/test/testcases/tests/level3/core/files/canonicalform05.svg
new file mode 100644
index 0000000..c52d5a8
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform05.svg
@@ -0,0 +1,15 @@
+<!DOCTYPE svg [
+<!ATTLIST p attrExtEnt ENTITY #IMPLIED>
+<!ENTITY ent1 "Hello">
+<!ENTITY ent2 SYSTEM "world.txt">
+<!ENTITY entExt SYSTEM "earth.gif" NDATA gif>
+<!NOTATION gif SYSTEM "viewgif.exe">
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100" fill="blue"/><script type="text/ecmascript">&svgtest;&svgunit;</script><body xmlns='http://www.w3.org/1999/xhtml'>
+<p attrExtEnt="entExt">
+ &ent1;, &ent2;!
+</p></body></svg>
+
+<!-- Let world.txt contain "world" (excluding the quotes) --> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/canonicalform05.xhtml b/test/testcases/tests/level3/core/files/canonicalform05.xhtml
new file mode 100644
index 0000000..722d017
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform05.xhtml
@@ -0,0 +1,13 @@
+<!DOCTYPE html [
+<!ATTLIST p attrExtEnt ENTITY #IMPLIED>
+<!ENTITY ent1 "Hello">
+<!ENTITY ent2 SYSTEM "world.txt">
+<!ENTITY entExt SYSTEM "earth.gif" NDATA gif>
+<!NOTATION gif SYSTEM "viewgif.exe">
+]>
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform05</title></head><body onload="parent.loadComplete()">
+<p attrExtEnt="entExt">
+ &ent1;, &ent2;!
+</p></body></html>
+
+<!-- Let world.txt contain "world" (excluding the quotes) -->
diff --git a/test/testcases/tests/level3/core/files/canonicalform05.xml b/test/testcases/tests/level3/core/files/canonicalform05.xml
new file mode 100644
index 0000000..8e7a345
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/canonicalform05.xml
@@ -0,0 +1,13 @@
+<!DOCTYPE html [
+<!ATTLIST p attrExtEnt ENTITY #IMPLIED>
+<!ENTITY ent1 "Hello">
+<!ENTITY ent2 SYSTEM "world.txt">
+<!ENTITY entExt SYSTEM "earth.gif" NDATA gif>
+<!NOTATION gif SYSTEM "viewgif.exe">
+]>
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform05</title></head><body onload="parent.loadComplete()">
+<p attrExtEnt="entExt">
+ &ent1;, &ent2;!
+</p></body></html>
+
+<!-- Let world.txt contain "world" (excluding the quotes) -->
diff --git a/test/testcases/tests/level3/core/files/datatype_normalization.svg b/test/testcases/tests/level3/core/files/datatype_normalization.svg
new file mode 100644
index 0000000..77f4988
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/datatype_normalization.svg
@@ -0,0 +1,89 @@
+<!DOCTYPE svg [
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+<!ELEMENT svg (rect, script, data)>
+<!ATTLIST svg
+ xmlns CDATA #IMPLIED
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ELEMENT script (#PCDATA)>
+ <!ATTLIST script type CDATA #IMPLIED>
+ <!ELEMENT data (double*, boolean*, decimal*, float*, dateTime*, time*)>
+ <!ATTLIST data xmlns CDATA #IMPLIED>
+ <!ELEMENT double (#PCDATA)>
+ <!ATTLIST double
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT boolean (#PCDATA)>
+ <!ATTLIST boolean
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT decimal (#PCDATA)>
+ <!ATTLIST decimal
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT float (#PCDATA)>
+ <!ATTLIST float
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT dateTime (#PCDATA)>
+ <!ATTLIST dateTime
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT time (#PCDATA)>
+ <!ATTLIST time
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+]>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/2000/svg datatype_normalization.svg.xsd">
+<rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+<data xmlns='http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization'>
+<double value="
+ +0003.141592600E+0000 " union=" +0003.141592600E+0000
+ "> -31415926.00E-7
+2.718</double>
+<double value=" NaN" union="NaN "> INF -INF </double>
+<double value="
+1 " union="1
+"> -0</double>
+<boolean value="
+ true" union="false
+ "> false true false </boolean>
+<boolean value="
+ 1" union=" 0
+ ">0 1 0 </boolean>
+<decimal value=" +0003.141592600 " union=" +0003.141592600 "> +10 .1 </decimal>
+<decimal value=" 01 " union=" 01 "> -.001 </decimal>
+<float value=" +0003.141592600E+0000 " union=" +0003.141592600E+0000 "> -31415926.00E-7
+2.718</float>
+<float value=" NaN " union=" NaN "> INF -INF </float>
+<float value="
+1 " union="1
+">-0</float>
+<dateTime value="
+2004-01-21T15:30:00-05:00" union="2004-01-21T20:30:00-05:00
+">2004-01-21T15:30:00
+2004-01-21T15:30:00Z</dateTime>
+<dateTime value="
+2004-01-21T15:30:00.0000-05:00" union="2004-01-21T15:30:00.0000-05:00
+"> 2004-01-21T15:30:00.0000 </dateTime>
+<dateTime value="2004-01-21T15:30:00.0001-05:00" union="2004-01-21T15:30:00.0001-05:00">2004-01-21T15:30:00.0001</dateTime>
+<time value="
+15:30:00-05:00" union="15:30:00-05:00
+"> 15:30:00 </time>
+<time value="
+ 15:30:00.0000-05:00" union=" 15:30:00.0000-05:00
+ ">15:30:00.0000</time>
+<time value="
+ 15:30:00.0001-05:00" union="15:30:00.0001-05:00
+ ">15:30:00.0001</time>
+</data>
+</svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/datatype_normalization.svg.xsd b/test/testcases/tests/level3/core/files/datatype_normalization.svg.xsd
new file mode 100644
index 0000000..e2cdde3
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/datatype_normalization.svg.xsd
@@ -0,0 +1,60 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This schema is attempts to use every construct that could
+be interrogated by DOM Level 3 and is no way intended to
+be a general purpose schema for SVG
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:data="http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization">
+
+ <xsd:import namespace="http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization" schemaLocation="datatype_normalization.xsd"/>
+
+ <xsd:element name="svg">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="rect"/>
+ <xsd:element ref="script"/>
+ <xsd:element ref="data:data"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="rect">
+ <xsd:complexType>
+ <xsd:attribute name="x" type="xsd:double" use="required"/>
+ <xsd:attribute name="y" type="xsd:double" use="required"/>
+ <xsd:attribute name="height" type="xsd:double" use="required"/>
+ <xsd:attribute name="width" type="xsd:double" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="script">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="type" type="xsd:string" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</xsd:schema>
diff --git a/test/testcases/tests/level3/core/files/datatype_normalization.xml b/test/testcases/tests/level3/core/files/datatype_normalization.xml
new file mode 100644
index 0000000..cced1b9
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/datatype_normalization.xml
@@ -0,0 +1,90 @@
+<!DOCTYPE svg [
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+<!ELEMENT svg (rect, script, data)>
+<!ATTLIST svg
+ xmlns CDATA #IMPLIED
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ELEMENT script (#PCDATA)>
+ <!ATTLIST script type CDATA #IMPLIED>
+ <!ELEMENT data (double*, boolean*, decimal*, float*, dateTime*, time*)>
+ <!ATTLIST data xmlns CDATA #IMPLIED>
+ <!ELEMENT double (#PCDATA)>
+ <!ATTLIST double
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT boolean (#PCDATA)>
+ <!ATTLIST boolean
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT decimal (#PCDATA)>
+ <!ATTLIST decimal
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT float (#PCDATA)>
+ <!ATTLIST float
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT dateTime (#PCDATA)>
+ <!ATTLIST dateTime
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT time (#PCDATA)>
+ <!ATTLIST time
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+
+]>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/2000/svg datatype_normalization.svg.xsd">
+<rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+<data xmlns='http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization'>
+<double value="
+ +0003.141592600E+0000 " union=" +0003.141592600E+0000
+ "> -31415926.00E-7
+2.718</double>
+<double value=" NaN" union="NaN "> INF -INF </double>
+<double value="
+1 " union="1
+"> -0</double>
+<boolean value="
+ true" union="false
+ "> false true false </boolean>
+<boolean value="
+ 1" union=" 0
+ ">0 1 0 </boolean>
+<decimal value=" +0003.141592600 " union=" +0003.141592600 "> +10 .1 </decimal>
+<decimal value=" 01 " union=" 01 "> -.001 </decimal>
+<float value=" +0003.141592600E+0000 " union=" +0003.141592600E+0000 "> -31415926.00E-7
+2.718</float>
+<float value=" NaN " union=" NaN "> INF -INF </float>
+<float value="
+1 " union="1
+">-0</float>
+<dateTime value="
+2004-01-21T15:30:00-05:00" union="2004-01-21T20:30:00-05:00
+">2004-01-21T15:30:00
+2004-01-21T15:30:00Z</dateTime>
+<dateTime value="
+2004-01-21T15:30:00.0000-05:00" union="2004-01-21T15:30:00.0000-05:00
+"> 2004-01-21T15:30:00.0000 </dateTime>
+<dateTime value="2004-01-21T15:30:00.0001-05:00" union="2004-01-21T15:30:00.0001-05:00">2004-01-21T15:30:00.0001</dateTime>
+<time value="
+15:30:00-05:00" union="15:30:00-05:00
+"> 15:30:00 </time>
+<time value="
+ 15:30:00.0000-05:00" union=" 15:30:00.0000-05:00
+ ">15:30:00.0000</time>
+<time value="
+ 15:30:00.0001-05:00" union="15:30:00.0001-05:00
+ ">15:30:00.0001</time>
+</data>
+</svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/datatype_normalization.xsd b/test/testcases/tests/level3/core/files/datatype_normalization.xsd
new file mode 100644
index 0000000..2b3a789
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/datatype_normalization.xsd
@@ -0,0 +1,212 @@
+<!--
+
+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.
+
+-->
+
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"
+ xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization">
+
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="double"/>
+ <xsd:element ref="boolean"/>
+ <xsd:element ref="decimal"/>
+ <xsd:element ref="float"/>
+ <xsd:element ref="dateTime"/>
+ <xsd:element ref="time"/>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:simpleType name="myDouble">
+ <xsd:restriction base="xsd:double"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDoubleList">
+ <xsd:list itemType="myDouble"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDoubleUnion">
+ <xsd:union memberTypes="myDouble xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="double">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myDoubleList">
+ <xsd:attribute name="value" type="myDouble" use="required"/>
+ <xsd:attribute name="union" type="myDoubleUnion" use="required"/>
+ <xsd:attribute name="default" type="myDouble"
+ default="+0003.141592600E+0000" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:simpleType name="myBoolean">
+ <xsd:restriction base="xsd:boolean"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myBooleanList">
+ <xsd:list itemType="myBoolean"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myBooleanUnion">
+ <xsd:union memberTypes="myBoolean xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="boolean">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myBooleanList">
+ <xsd:attribute name="value" type="myBoolean" use="required"/>
+ <xsd:attribute name="union" type="myDoubleUnion" use="required"/>
+ <xsd:attribute name="default" type="myBoolean"
+ default="1" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:simpleType name="myDecimal">
+ <xsd:restriction base="xsd:decimal"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDecimalList">
+ <xsd:list itemType="myDecimal"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDecimalUnion">
+ <xsd:union memberTypes="myDecimal xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="decimal">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myDecimalList">
+ <xsd:attribute name="value" type="myDecimal" use="required"/>
+ <xsd:attribute name="union" type="myDecimalUnion" use="required"/>
+ <xsd:attribute name="default" type="myDecimal"
+ default="+0003.141592600" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:simpleType name="myFloat">
+ <xsd:restriction base="xsd:float"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myFloatList">
+ <xsd:list itemType="myFloat"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myFloatUnion">
+ <xsd:union memberTypes="myFloat xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="float">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myFloatList">
+ <xsd:attribute name="value" type="myFloat" use="required"/>
+ <xsd:attribute name="union" type="myFloatUnion" use="required"/>
+ <xsd:attribute name="default" type="myDouble"
+ default="+0003.141592600E+0000" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:simpleType name="myDateTime">
+ <xsd:restriction base="xsd:dateTime"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDateTimeList">
+ <xsd:list itemType="myDateTime"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDateTimeUnion">
+ <xsd:union memberTypes="myDateTime xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="dateTime">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myDateTimeList">
+ <xsd:attribute name="value" type="myDateTime" use="required"/>
+ <xsd:attribute name="union" type="myDateTimeUnion" use="required"/>
+ <xsd:attribute name="default" type="myDateTime"
+ default="2004-01-21T15:30:00-05:00" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:simpleType name="myTime">
+ <xsd:restriction base="xsd:time"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myTimeList">
+ <xsd:list itemType="myTime"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myTimeUnion">
+ <xsd:union memberTypes="myTime xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="time">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myTimeList">
+ <xsd:attribute name="value" type="myTime" use="required"/>
+ <xsd:attribute name="union" type="myTimeUnion" use="required"/>
+ <xsd:attribute name="default" type="myTime"
+ default="15:30:00-05:00" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:simpleType name="myUnion">
+ <xsd:union memberTypes="xsd:integer xsd:string"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myUnionList">
+ <xsd:list itemType="myUnion"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myUnionUnion">
+ <xsd:union memberTypes="myUnion xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="union">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myUnionList">
+ <xsd:attribute name="value" type="myUnion" use="required"/>
+ <xsd:attribute name="union" type="myUnionUnion" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</xsd:schema>
diff --git a/test/testcases/tests/level3/core/files/datatype_normalization2.svg b/test/testcases/tests/level3/core/files/datatype_normalization2.svg
new file mode 100644
index 0000000..14e5dd7
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/datatype_normalization2.svg
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!DOCTYPE svg
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+ <!ELEMENT svg (rect, script, body)>
+ <!ATTLIST svg
+ xmlns CDATA #IMPLIED
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ATTLIST body xmlns CDATA #IMPLIED>
+]>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/2000/svg datatype_normalization2.svg.xsd">
+<rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script><body xmlns="http://www.w3.org/1999/xhtml">
+ <p>
+ <!-- preserve, string default -->
+ <em> EMP 0001 </em>
+ <!-- explicit preserve -->
+ <acronym> EMP 0001 </acronym>
+ <!-- explicit collapse -->
+ <code>
+ EMP 0001
+</code>
+ <code>EMP 0001</code>
+ <code>EMP 0001</code>
+ <!-- explicit replace -->
+ <sup>
+ EMP 0001
+</sup>
+ <sup>EMP 0001</sup>
+ <sup>EMP 0001</sup>
+ <sup>EMP
+0001</sup>
+ </p>
+</body>
+</svg>
diff --git a/test/testcases/tests/level3/core/files/datatype_normalization2.svg.xsd b/test/testcases/tests/level3/core/files/datatype_normalization2.svg.xsd
new file mode 100644
index 0000000..0df77aa
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/datatype_normalization2.svg.xsd
@@ -0,0 +1,60 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This schema is attempts to use every construct that could
+be interrogated by DOM Level 3 and is no way intended to
+be a general purpose schema for SVG
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xhtml="http://www.w3.org/1999/xhtml">
+
+ <xsd:import namespace="http://www.w3.org/1999/xhtml" schemaLocation="datatype_normalization2.xsd"/>
+
+ <xsd:element name="svg">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="rect"/>
+ <xsd:element ref="script"/>
+ <xsd:element ref="xhtml:body"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="rect">
+ <xsd:complexType>
+ <xsd:attribute name="x" type="xsd:double" use="required"/>
+ <xsd:attribute name="y" type="xsd:double" use="required"/>
+ <xsd:attribute name="height" type="xsd:double" use="required"/>
+ <xsd:attribute name="width" type="xsd:double" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="script">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="type" type="xsd:string" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</xsd:schema>
diff --git a/test/testcases/tests/level3/core/files/datatype_normalization2.xhtml b/test/testcases/tests/level3/core/files/datatype_normalization2.xhtml
new file mode 100644
index 0000000..3b93b18
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/datatype_normalization2.xhtml
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ATTLIST html
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/1999/xhtml datatype_normalization2.xsd"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>datatype_normalization2</title></head><body onload="parent.loadComplete()">
+ <p>
+ <!-- preserve, string default -->
+ <em> EMP 0001 </em>
+ <!-- explicit preserve -->
+ <acronym> EMP 0001 </acronym>
+ <!-- explicit collapse -->
+ <code>
+ EMP 0001
+</code>
+ <code>EMP 0001</code>
+ <code>EMP 0001</code>
+ <!-- explicit replace -->
+ <sup>
+ EMP 0001
+</sup>
+ <sup>EMP 0001</sup>
+ <sup>EMP 0001</sup>
+ <sup>EMP
+0001</sup>
+ </p>
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/datatype_normalization2.xml b/test/testcases/tests/level3/core/files/datatype_normalization2.xml
new file mode 100644
index 0000000..19d9415
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/datatype_normalization2.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ATTLIST html
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/1999/xhtml datatype_normalization2.xsd"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>datatype_normalization2</title></head><body onload="parent.loadComplete()">
+ <p>
+ <!-- preserve, string default -->
+ <em> EMP 0001 </em>
+ <!-- explicit preserve -->
+ <acronym> EMP 0001 </acronym>
+ <!-- explicit collapse -->
+ <code>
+ EMP 0001
+</code>
+ <code>EMP 0001</code>
+ <code>EMP 0001</code>
+ <!-- explicit replace -->
+ <sup>
+ EMP 0001
+</sup>
+ <sup>EMP 0001</sup>
+ <sup>EMP 0001</sup>
+ <sup>EMP
+0001</sup>
+ </p>
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/datatype_normalization2.xsd b/test/testcases/tests/level3/core/files/datatype_normalization2.xsd
new file mode 100644
index 0000000..c7a7903
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/datatype_normalization2.xsd
@@ -0,0 +1,99 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This schema is intended to support specific DOM L3 tests is no way intended to
+be a general purpose schema for XHTML
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/1999/xhtml"
+ xmlns="http://www.w3.org/1999/xhtml">
+
+ <xsd:element name="html">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="head"/>
+ <xsd:element ref="body"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="head">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="meta"/>
+ <xsd:element ref="title"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="title" type="xsd:string"/>
+ <xsd:element name="meta">
+ <xsd:complexType>
+ <xsd:attribute name="http-equiv" type="xsd:string" use="required"/>
+ <xsd:attribute name="content" type="xsd:string" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="body">
+ <xsd:complexType>
+ <xsd:sequence minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="p"/>
+ </xsd:sequence>
+ <xsd:attribute name="onload" type="xsd:string" use="optional"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="p">
+ <xsd:complexType>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="em"/>
+ <xsd:element ref="code"/>
+ <xsd:element ref="sup"/>
+ <xsd:element ref="acronym"/>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="em" type="xsd:string"/>
+
+ <xsd:simpleType name="acronym">
+ <xsd:restriction base="xsd:string">
+ <xsd:whiteSpace value="preserve"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="acronym" type="acronym"/>
+
+ <xsd:simpleType name="code">
+ <xsd:restriction base="xsd:string">
+ <xsd:whiteSpace value="collapse"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="code" type="code"/>
+
+ <xsd:simpleType name="sup">
+ <xsd:restriction base="xsd:string">
+ <xsd:whiteSpace value="replace"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="sup" type="sup"/>
+
+</xsd:schema>
diff --git a/test/testcases/tests/level3/core/files/external_barfoo.svg b/test/testcases/tests/level3/core/files/external_barfoo.svg
new file mode 100644
index 0000000..98afcde
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/external_barfoo.svg
@@ -0,0 +1,31 @@
+<!DOCTYPE svg [
+<!ENTITY ent1 SYSTEM 'external_foo.ent'>
+<!ENTITY ent2 SYSTEM 'external_foobr.ent'>
+<!ENTITY ent3 SYSTEM 'external_widget.ent'>
+<!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+<!ELEMENT svg (rect,script,p*)>
+<!ATTLIST svg xmlns CDATA #IMPLIED>
+<!ELEMENT rect EMPTY>
+<!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED
+ fill CDATA #REQUIRED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ATTLIST p xmlns CDATA #IMPLIED
+ xml:base CDATA #IMPLIED>
+<!ELEMENT br EMPTY>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script type CDATA #IMPLIED>
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+<!NOTATION notation1 PUBLIC "notation1File">
+]>
+<svg xmlns="http://www.w3.org/2000/svg">
+<rect x="0" y="0" width="100" height="100" fill="blue"/>
+<script type="text/ecmascript">&svgtest;&svgunit;</script>
+<p xmlns='http://www.w3.org/1999/xhtml'>bar&ent2;&ent1;</p>
+<p xmlns='http://www.w3.org/1999/xhtml' xml:base="http://www.example.com/bogus_base">bar&ent2;&ent1;</p>
+&ent3;
+</svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/external_barfoo.xhtml b/test/testcases/tests/level3/core/files/external_barfoo.xhtml
new file mode 100644
index 0000000..e316dee
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/external_barfoo.xhtml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html [
+<!ENTITY ent1 SYSTEM 'external_foo.ent'>
+<!ENTITY ent2 SYSTEM 'external_foobr.ent'>
+<!ENTITY ent3 SYSTEM 'external_widget.ent'>
+<!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT body (p*)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ATTLIST p xml:base CDATA #IMPLIED
+ xmlns CDATA #IMPLIED>
+<!ELEMENT br EMPTY>
+<!NOTATION notation1 PUBLIC "notation1File">
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>external entity encoding sample</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>bar&ent2;&ent1;</p>
+<p xml:base="http://www.example.com/bogus_base">bar&ent2;&ent1;</p>
+&ent3;
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/external_barfoo.xml b/test/testcases/tests/level3/core/files/external_barfoo.xml
new file mode 100644
index 0000000..cc36fa4
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/external_barfoo.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html [
+<!ENTITY ent1 SYSTEM 'external_foo.ent'>
+<!ENTITY ent2 SYSTEM 'external_foobr.ent'>
+<!ENTITY ent3 SYSTEM 'external_widget.ent'>
+<!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (title,script*)>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ src CDATA #IMPLIED
+ type CDATA #IMPLIED
+ charset CDATA #IMPLIED>
+<!ELEMENT body (p*)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|br)*>
+<!ATTLIST p xml:base CDATA #IMPLIED
+ xmlns CDATA #IMPLIED>
+<!ELEMENT br EMPTY>
+<!NOTATION notation1 PUBLIC "notation1File">
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>external entity encoding sample</title>
+</head>
+<body onload="parent.loadComplete()">
+<p>bar&ent2;&ent1;</p>
+<p xml:base="http://www.example.com/bogus_base">bar&ent2;&ent1;</p>
+&ent3;
+</body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/external_foo.ent b/test/testcases/tests/level3/core/files/external_foo.ent
new file mode 100644
index 0000000..fe8efcd
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/external_foo.ent
Binary files differ
diff --git a/test/testcases/tests/level3/core/files/external_foobr.ent b/test/testcases/tests/level3/core/files/external_foobr.ent
new file mode 100644
index 0000000..2cd59e8
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/external_foobr.ent
@@ -0,0 +1 @@
+<br/>foo \ No newline at end of file
diff --git a/test/testcases/tests/level3/core/files/external_widget.ent b/test/testcases/tests/level3/core/files/external_widget.ent
new file mode 100644
index 0000000..7c7d8a9
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/external_widget.ent
@@ -0,0 +1 @@
+<p xmlns='http://www.w3.org/1999/xhtml'>widget</p>
diff --git a/test/testcases/tests/level3/core/files/hc_nodtdstaff.html b/test/testcases/tests/level3/core/files/hc_nodtdstaff.html
new file mode 100644
index 0000000..0506a01
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/hc_nodtdstaff.html
@@ -0,0 +1,10 @@
+<html><head><title>hc_nodtdstaff</title></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level3/core/files/hc_nodtdstaff.svg b/test/testcases/tests/level3/core/files/hc_nodtdstaff.svg
new file mode 100644
index 0000000..0ff4110
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/hc_nodtdstaff.svg
@@ -0,0 +1,10 @@
+<svg xmlns='http://www.w3.org/2000/svg'><rect x="0" y="0" width="100" height="100"/><head xmlns='http://www.w3.org/1999/xhtml'><title>hc_nodtdstaff</title></head><body xmlns='http://www.w3.org/1999/xhtml'>
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+</body></svg>
diff --git a/test/testcases/tests/level3/core/files/hc_nodtdstaff.xhtml b/test/testcases/tests/level3/core/files/hc_nodtdstaff.xhtml
new file mode 100644
index 0000000..d183b02
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/hc_nodtdstaff.xhtml
@@ -0,0 +1,10 @@
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>hc_nodtdstaff</title></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level3/core/files/hc_nodtdstaff.xml b/test/testcases/tests/level3/core/files/hc_nodtdstaff.xml
new file mode 100644
index 0000000..7926374
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/hc_nodtdstaff.xml
@@ -0,0 +1,10 @@
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>hc_nodtdstaff</title></head><body onload="parent.loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level3/core/files/hc_staff.svg b/test/testcases/tests/level3/core/files/hc_staff.svg
new file mode 100644
index 0000000..e11e135
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/hc_staff.svg
@@ -0,0 +1,87 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST p
+ dir CDATA 'rtl'
+ xmlns:dmstc CDATA #IMPLIED
+ xmlns:nm CDATA #IMPLIED
+ xmlns:emp2 CDATA #IMPLIED>
+ <!ATTLIST html
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ATTLIST acronym xsi:noNamespaceSchemaLocation CDATA #IMPLIED>
+ <!ENTITY ent4 "<span xmlns='http://www.w3.org/1999/xhtml'>Element data</span><?PItarget PIdata?>">
+ <!ATTLIST span xmlns CDATA #IMPLIED>
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+ <!ELEMENT svg (rect, script, body)>
+ <!ATTLIST svg
+ xmlns CDATA #IMPLIED
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ATTLIST body xmlns CDATA #IMPLIED>
+]>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/2000/svg hc_staff.svg.xsd">
+<rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script><body xmlns="http://www.w3.org/1999/xhtml">
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" xsi:noNamespaceSchemaLocation="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0002</em>
+ <strong>Martha Raynolds
+<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.netzero.com">
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&ent4;</var>
+ <acronym title="Yes" class="No" id="_98553" xsi:noNamespaceSchemaLocation="Yes">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p xmlns:nm="http://www.altavista.com">
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;" id="_98556" xsi:noNamespaceSchemaLocation="Yes">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p xmlns:emp2="http://www.nist.gov">
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></svg>
diff --git a/test/testcases/tests/level3/core/files/hc_staff.svg.xsd b/test/testcases/tests/level3/core/files/hc_staff.svg.xsd
new file mode 100644
index 0000000..52335a3
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/hc_staff.svg.xsd
@@ -0,0 +1,60 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This schema is attempts to use every construct that could
+be interrogated by DOM Level 3 and is no way intended to
+be a general purpose schema for SVG
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xhtml="http://www.w3.org/1999/xhtml">
+
+ <xsd:import namespace="http://www.w3.org/1999/xhtml" schemaLocation="hc_staff.xsd"/>
+
+ <xsd:element name="svg">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="rect"/>
+ <xsd:element ref="script"/>
+ <xsd:element ref="xhtml:body"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="rect">
+ <xsd:complexType>
+ <xsd:attribute name="x" type="xsd:double" use="required"/>
+ <xsd:attribute name="y" type="xsd:double" use="required"/>
+ <xsd:attribute name="height" type="xsd:double" use="required"/>
+ <xsd:attribute name="width" type="xsd:double" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="script">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="type" type="xsd:string" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</xsd:schema>
diff --git a/test/testcases/tests/level3/core/files/hc_staff.xhtml b/test/testcases/tests/level3/core/files/hc_staff.xhtml
new file mode 100644
index 0000000..f2b6e71
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/hc_staff.xhtml
@@ -0,0 +1,73 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST p
+ dir CDATA 'rtl'
+ xmlns:dmstc CDATA #IMPLIED
+ xmlns:nm CDATA #IMPLIED
+ xmlns:emp2 CDATA #IMPLIED>
+ <!ATTLIST html
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ATTLIST acronym xsi:noNamespaceSchemaLocation CDATA #IMPLIED>
+ <!ENTITY ent4 "<span xmlns='http://www.w3.org/1999/xhtml'>Element data</span><?PItarget PIdata?>">
+ <!ATTLIST span xmlns CDATA #IMPLIED>
+]>
+<!-- This is comment number 1.-->
+<html xmlns='http://www.w3.org/1999/xhtml'
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/1999/xhtml hc_staff.xsd"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title><script type="text/javascript" src="svgunit.js"/><script charset="UTF-8" type="text/javascript" src="svgtest.js"/><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" xsi:noNamespaceSchemaLocation="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0002</em>
+ <strong>Martha Raynolds
+<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.netzero.com">
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&ent4;</var>
+ <acronym title="Yes" class="No" id="_98553" xsi:noNamespaceSchemaLocation="Yes">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p xmlns:nm="http://www.altavista.com">
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;" id="_98556" xsi:noNamespaceSchemaLocation="Yes">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p xmlns:emp2="http://www.nist.gov">
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level3/core/files/hc_staff.xml b/test/testcases/tests/level3/core/files/hc_staff.xml
new file mode 100644
index 0000000..0366a05
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/hc_staff.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST p
+ dir CDATA 'rtl'
+ xmlns:dmstc CDATA #IMPLIED
+ xmlns:nm CDATA #IMPLIED
+ xmlns:emp2 CDATA #IMPLIED>
+ <!ATTLIST html
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ATTLIST acronym xsi:noNamespaceSchemaLocation CDATA #IMPLIED>
+ <!ENTITY ent4 "<span xmlns='http://www.w3.org/1999/xhtml'>Element data</span><?PItarget PIdata?>">
+ <!ATTLIST span xmlns CDATA #IMPLIED>
+]>
+<!-- This is comment number 1.-->
+<html xmlns='http://www.w3.org/1999/xhtml'
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/1999/xhtml hc_staff.xsd"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title><script type="text/javascript" src="svgunit.js"/><script charset="UTF-8" type="text/javascript" src="svgtest.js"/><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" xsi:noNamespaceSchemaLocation="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0002</em>
+ <strong>Martha Raynolds
+<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.netzero.com">
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&ent4;</var>
+ <acronym title="Yes" class="No" id="_98553" xsi:noNamespaceSchemaLocation="Yes">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p xmlns:nm="http://www.altavista.com">
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;" id="_98556" xsi:noNamespaceSchemaLocation="Yes">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p xmlns:emp2="http://www.nist.gov">
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level3/core/files/hc_staff.xsd b/test/testcases/tests/level3/core/files/hc_staff.xsd
new file mode 100644
index 0000000..915cba0
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/hc_staff.xsd
@@ -0,0 +1,250 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This schema is attempts to use every construct that could
+be interrogated by DOM Level 3 and is no way intended to
+be a general purpose schema for XHTML
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/1999/xhtml"
+ xmlns="http://www.w3.org/1999/xhtml">
+
+ <xsd:element name="html">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="head"/>
+ <xsd:element ref="body"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="head">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="meta"/>
+ <xsd:element ref="title"/>
+ <xsd:element ref="script" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="meta">
+ <xsd:complexType>
+ <xsd:attribute name="http-equiv" type="xsd:string" use="required"/>
+ <xsd:attribute name="content" type="xsd:string" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="script">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="src" type="xsd:string" use="optional"/>
+ <xsd:attribute name="charset" type="xsd:string" use="optional"/>
+ <xsd:attribute name="type" type="xsd:string" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="title" type="xsd:string"/>
+
+ <xsd:element name="body">
+ <xsd:complexType>
+ <xsd:sequence minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="p"/>
+ </xsd:sequence>
+ <xsd:attribute name="onload" type="xsd:string" use="optional"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:simpleType name="classType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Yes"/>
+ <xsd:enumeration value="No"/>
+ <xsd:enumeration value="Y&#945;"/>
+ <xsd:enumeration value="Y"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:complexType name="part1">
+ <xsd:sequence>
+ <xsd:element ref="em"/>
+ <xsd:element ref="strong"/>
+ <xsd:element ref="code"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="pType">
+ <xsd:complexContent>
+ <xsd:extension base="part1">
+ <xsd:sequence>
+ <xsd:element ref="sup"/>
+ <xsd:element ref="var"/>
+ <xsd:element ref="acronym"/>
+ </xsd:sequence>
+ <xsd:attribute name="title" type="xsd:string" use="optional"/>
+ <xsd:attribute name="class" type="classType" use="optional"/>
+ <xsd:attribute name="dir" type="dirType" use="optional" default="rtl"/>
+ <xsd:attribute name="foo" type="xsd:string" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+
+ <xsd:element name="p">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:restriction base="pType">
+ <xsd:sequence>
+ <xsd:element ref="em"/>
+ <xsd:element ref="strong"/>
+ <xsd:element ref="code"/>
+ <xsd:element ref="sup"/>
+ <xsd:element ref="var"/>
+ <xsd:element ref="acronym"/>
+ </xsd:sequence>
+ <xsd:attribute name="title" type="xsd:string" use="optional"/>
+ <xsd:attribute name="class" type="classType" use="optional"/>
+ <xsd:attribute name="dir" type="dirType" use="optional" default="rtl"/>
+ <xsd:attribute name="foo" type="xsd:string" use="prohibited"/>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:simpleType name="emp0001_3Type">
+ <xsd:restriction base="xsd:ID">
+ <xsd:enumeration value="EMP0001"/>
+ <xsd:enumeration value="EMP0002"/>
+ <xsd:enumeration value="EMP0003"/>
+ <xsd:enumeration value="EMP0004"/>
+ <xsd:enumeration value="EMP0005"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="emp0004_5Type">
+ <xsd:restriction base="xsd:ID">
+ <xsd:enumeration value="EMP0006"/>
+ <xsd:enumeration value="EMP0007"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="unboundedEmType">
+ <xsd:union memberTypes="emp0001_3Type emp0004_5Type"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="emType">
+ <xsd:restriction base="unboundedEmType">
+ <xsd:pattern value="EMP[0-9]*"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+ <xsd:element name="em" type="emType"/>
+
+ <xsd:simpleType name="unboundedStrongType">
+ <xsd:list itemType="xsd:string"/>
+ </xsd:simpleType>
+
+
+ <xsd:simpleType name="strongType">
+ <xsd:restriction base="unboundedStrongType">
+ <xsd:maxLength value="100"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="strong" type="strongType"/>
+
+ <!-- union of union and union of list -->
+ <xsd:simpleType name="integers">
+ <xsd:list itemType="xsd:integer"/>
+ </xsd:simpleType>
+
+
+ <xsd:simpleType name="sup">
+ <xsd:union memberTypes="emType integers xsd:string"/>
+ </xsd:simpleType>
+ <xsd:element name="sup" type="sup"/>
+
+ <!-- list of union of union -->
+ <xsd:simpleType name="supervisoryTitle">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Specialist"/>
+ <xsd:enumeration value="Director"/>
+ <xsd:enumeration value="Manager"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="nonSupervisoryTitle">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Accountant"/>
+ <xsd:enumeration value="Secretary"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="title">
+ <xsd:union memberTypes="supervisoryTitle nonSupervisoryTitle"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="field">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Department"/>
+ <xsd:enumeration value="Personnel"/>
+ <xsd:enumeration value="Computer"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="codeItem">
+ <xsd:union memberTypes="field title"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="code">
+ <xsd:list itemType="codeItem"/>
+ </xsd:simpleType>
+ <xsd:element name="code" type="code"/>
+
+ <xsd:element name="span" type="xsd:string"/>
+
+ <xsd:complexType name="var" mixed="true">
+ <xsd:sequence>
+ <xsd:element ref="span" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:element name="var" type="var"/>
+
+ <xsd:simpleType name="dirType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="ltr"/>
+ <xsd:enumeration value="rtl"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="acronym">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="class" type="classType" use="optional"/>
+ <xsd:attribute name="title" type="xsd:string" use="optional"/>
+ <xsd:attribute name="id" type="xsd:ID" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+</xsd:schema>
diff --git a/test/testcases/tests/level3/core/files/svgtest.js b/test/testcases/tests/level3/core/files/svgtest.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/svgtest.js
diff --git a/test/testcases/tests/level3/core/files/svgunit.js b/test/testcases/tests/level3/core/files/svgunit.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/svgunit.js
diff --git a/test/testcases/tests/level3/core/files/typeinfo.svg b/test/testcases/tests/level3/core/files/typeinfo.svg
new file mode 100644
index 0000000..35c2d44
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/typeinfo.svg
@@ -0,0 +1,29 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+ <!ELEMENT svg (rect, script, body)>
+ <!ATTLIST svg
+ xmlns CDATA #IMPLIED
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ATTLIST body xmlns CDATA #IMPLIED>
+]>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/2000/svg typeinfo.svg.xsd">
+<rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script><body xmlns="http://www.w3.org/1999/xhtml">
+ <p id="foo1"><strong>foo1 foo2</strong></p>
+ <p id="foo2"><code>1</code><code>unbounded</code></p>
+ <p><em>127</em><em>48</em></p>
+ <p><acronym>3.1415926 2.718</acronym></p>
+ </body>
+</svg>
diff --git a/test/testcases/tests/level3/core/files/typeinfo.svg.xsd b/test/testcases/tests/level3/core/files/typeinfo.svg.xsd
new file mode 100644
index 0000000..51b4e7d
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/typeinfo.svg.xsd
@@ -0,0 +1,60 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This schema is attempts to use every construct that could
+be interrogated by DOM Level 3 and is no way intended to
+be a general purpose schema for SVG
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xhtml="http://www.w3.org/1999/xhtml">
+
+ <xsd:import namespace="http://www.w3.org/1999/xhtml" schemaLocation="typeinfo.xsd"/>
+
+ <xsd:element name="svg">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="rect"/>
+ <xsd:element ref="script"/>
+ <xsd:element ref="xhtml:body"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="rect">
+ <xsd:complexType>
+ <xsd:attribute name="x" type="xsd:double" use="required"/>
+ <xsd:attribute name="y" type="xsd:double" use="required"/>
+ <xsd:attribute name="height" type="xsd:double" use="required"/>
+ <xsd:attribute name="width" type="xsd:double" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="script">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="type" type="xsd:string" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</xsd:schema>
diff --git a/test/testcases/tests/level3/core/files/typeinfo.xhtml b/test/testcases/tests/level3/core/files/typeinfo.xhtml
new file mode 100644
index 0000000..23eeacd
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/typeinfo.xhtml
@@ -0,0 +1,18 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd"[
+<!ATTLIST html
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/1999/xhtml typeinfo.xsd"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title></head>
+ <body onload="parent.loadComplete()">
+ <p id="foo1"><strong>foo1 foo2</strong></p>
+ <p id="foo2"><code>1</code><code>unbounded</code></p>
+ <p><em>127</em><em>48</em></p>
+ <p><acronym>3.1415926 2.718</acronym></p>
+ </body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/typeinfo.xml b/test/testcases/tests/level3/core/files/typeinfo.xml
new file mode 100644
index 0000000..b94469b
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/typeinfo.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd"[
+<!ATTLIST html
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/1999/xhtml typeinfo.xsd"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title></head>
+ <body onload="parent.loadComplete()">
+ <p id="foo1"><strong>foo1 foo2</strong></p>
+ <p id="foo2"><code>1</code><code>unbounded</code></p>
+ <p><em>127</em><em>48</em></p>
+ <p><acronym>3.1415926 2.718</acronym></p>
+ </body>
+</html>
diff --git a/test/testcases/tests/level3/core/files/typeinfo.xsd b/test/testcases/tests/level3/core/files/typeinfo.xsd
new file mode 100644
index 0000000..ff72aef
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/typeinfo.xsd
@@ -0,0 +1,107 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This schema provides supports misc_typeinfo.xml
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/1999/xhtml"
+ xmlns="http://www.w3.org/1999/xhtml">
+
+ <xsd:element name="html">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="head"/>
+ <xsd:element ref="body"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="head">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="meta"/>
+ <xsd:element ref="title"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="title" type="xsd:string"/>
+ <xsd:element name="meta">
+ <xsd:complexType>
+ <xsd:attribute name="http-equiv" type="xsd:string" use="required"/>
+ <xsd:attribute name="content" type="xsd:string" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:element name="body">
+ <xsd:complexType>
+ <xsd:sequence minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="p"/>
+ </xsd:sequence>
+ <xsd:attribute name="onload" type="xsd:string" use="optional"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="p">
+ <xsd:complexType>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="em"/>
+ <xsd:element ref="strong"/>
+ <xsd:element ref="code"/>
+ <xsd:element ref="acronym"/>
+ </xsd:choice>
+ <xsd:attribute name="id" type="xsd:ID" use="optional"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="strong" type="xsd:IDREFS"/>
+ <xsd:element name="em" type="xsd:byte"/>
+ <xsd:simpleType name="unbounded">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="unbounded"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="unsignedIntOrUnbounded">
+ <xsd:union memberTypes="xsd:unsignedInt unbounded"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="doubleList">
+ <xsd:list itemType="xsd:double"/>
+ </xsd:simpleType>
+
+ <xsd:element name="acronym">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="doubleList">
+ <xsd:attribute name="id" use="optional" type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="code">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="unsignedIntOrUnbounded">
+ <xsd:attribute name="id" type="xsd:ID" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+</xsd:schema>
diff --git a/test/testcases/tests/level3/core/files/xhtml1-strict.dtd b/test/testcases/tests/level3/core/files/xhtml1-strict.dtd
new file mode 100644
index 0000000..7ba5dd7
--- /dev/null
+++ b/test/testcases/tests/level3/core/files/xhtml1-strict.dtd
@@ -0,0 +1,65 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This is a radically simplified DTD for use in the DOM Test Suites
+due to a XML non-conformance of one implementation in processing
+parameter entities. When that non-conformance is resolved,
+this DTD can be replaced by the normal DTD for XHTML.
+
+-->
+
+
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (meta,title,script*)>
+<!ELEMENT meta EMPTY>
+<!ATTLIST meta
+ http-equiv CDATA #IMPLIED
+ content CDATA #IMPLIED>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT body (p*)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|em|strong|code|sup|var|acronym|abbr)*>
+<!ATTLIST p
+ xmlns:dmstc CDATA #IMPLIED
+ xmlns:nm CDATA #IMPLIED
+ xmlns:emp2 CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT em (#PCDATA)>
+<!ELEMENT span (#PCDATA)>
+<!ELEMENT strong (#PCDATA)>
+<!ELEMENT code (#PCDATA)>
+<!ELEMENT sup (#PCDATA)>
+<!ELEMENT var (#PCDATA|span)*>
+<!ELEMENT acronym (#PCDATA)>
+<!ATTLIST acronym
+ title CDATA #IMPLIED
+ class CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT abbr (#PCDATA)>
+<!ATTLIST abbr
+ title CDATA #IMPLIED
+ class CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ type CDATA #IMPLIED
+ src CDATA #IMPLIED
+ charset CDATA #IMPLIED>
diff --git a/test/testcases/tests/level3/core/handleerror01.xml b/test/testcases/tests/level3/core/handleerror01.xml
new file mode 100644
index 0000000..b0a2d16
--- /dev/null
+++ b/test/testcases/tests/level3/core/handleerror01.xml
@@ -0,0 +1,91 @@
+<?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="handleerror01">
+<metadata>
+<title>handleerror01</title>
+<creator>Curt Arnold</creator>
+<description>
+Add two CDATASection containing "]]&gt;" and call Node.normalize
+with an error handler that stops processing. Only one of the
+CDATASections should be split.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-split-cdata-sections"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ERRORS-DOMErrorHandler-handleError"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="elemList" type="NodeList"/>
+<var name="newChild" type="CDATASection"/>
+<var name="oldChild" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<var name="childType" type="int"/>
+<var name="retval" type="Node"/>
+<var name="errors" type="List"/>
+
+<var name="errorHandler" type="DOMErrorHandler">
+ <handleError>
+ <!-- returning false should stop processing -->
+ <return value="false"/>
+ </handleError>
+</var>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<!-- have two invalid CDATASections as the content for the p element -->
+<firstChild var="oldChild" obj="elem" interface="Node"/>
+<createCDATASection var="newChild" obj="doc" data='"this is not ]]&gt; good"'/>
+<replaceChild var="retval" obj="elem" newChild="newChild" oldChild="oldChild"/>
+<createCDATASection var="newChild" obj="doc" data='"this is not ]]&gt; bad"'/>
+<appendChild var="retval" obj="elem" newChild="newChild"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"split-cdata-sections"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorHandler"/>
+<!-- normalization should have been stopped after
+ so one of the cdata sections should be intact -->
+<normalizeDocument obj="doc"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<lastChild var="child" obj="elem" interface="Node"/>
+<nodeValue var="childValue" obj="child"/>
+<if>
+ <!-- if last child matches original test -->
+ <equals actual="childValue" expected='"this is not ]]&gt; bad"' ignoreCase="false"/>
+ <!-- check that it is a CDATASection -->
+ <nodeType var="childType" obj="child"/>
+ <assertEquals actual="childType" expected="4" ignoreCase="false" id="lastChildCDATA"/>
+ <!-- check that first child is not intact -->
+ <firstChild var="child" obj="elem" interface="Node"/>
+ <nodeValue var="childValue" obj="child"/>
+ <assertNotEquals actual="childValue" expected='"this is not ]]&gt; good"'
+ ignoreCase="false" id="firstChildNotIntact"/>
+ <else>
+ <!-- last child was split, check that first child is intact -->
+ <firstChild var="child" obj="elem" interface="Node"/>
+ <nodeValue var="childValue" obj="child"/>
+ <assertEquals actual="childValue" expected='"this is not ]]&gt; good"'
+ ignoreCase="false" id="firstChildIntact"/>
+ </else>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/core/handleerror02.xml b/test/testcases/tests/level3/core/handleerror02.xml
new file mode 100644
index 0000000..67accc8
--- /dev/null
+++ b/test/testcases/tests/level3/core/handleerror02.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="handleerror02">
+<metadata>
+<title>handleerror02</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with two DOM L1 nodes.
+Use an error handler to continue from errors and check that more than one
+error was reported.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespaces"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-ERRORS-DOMErrorHandler-handleError"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<var name="brElem" type="Element"/>
+<var name="errors" type="List"/>
+<var name="errorHandler" type="DOMErrorHandler">
+ <!-- instance scope variables,
+ value attributes are passed via constructor -->
+ <var name="errors" type="List" value="errors"/>
+ <handleError>
+ <var name="severity" type="int"/>
+ <severity var="severity" obj="error"/>
+ <if><equals actual="severity" expected="2" ignoreCase="false"/>
+ <append collection="errors" item="error"/>
+ </if>
+ <return value="true"/>
+ </handleError>
+</var>
+
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorHandler"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<createElement var="brElem" obj="doc" tagName='"br"'/>
+<appendChild var="retval" obj="pElem" newChild="brElem"/>
+<createElement var="brElem" obj="doc" tagName='"br"'/>
+<appendChild var="retval" obj="pElem" newChild="brElem"/>
+<normalizeDocument obj="doc"/>
+<assertSize id="twoErrors" size="2" collection="errors"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/hasFeature01.xml b/test/testcases/tests/level3/core/hasFeature01.xml
new file mode 100644
index 0000000..ce25645
--- /dev/null
+++ b/test/testcases/tests/level3/core/hasFeature01.xml
@@ -0,0 +1,33 @@
+<?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="hasFeature01">
+<metadata>
+<title>hasFeature01</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementation.hasFeature("XML", "3.0") should return true.
+</description>
+<date qualifier="created">2003-05-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-5CED94D7"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="impl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<implementation var="impl"/>
+<hasFeature var="state" obj="impl" feature='"xMl"' version='"3.0"'/>
+<assertTrue id="hasXML30" actual="state"/>
+</test>
diff --git a/test/testcases/tests/level3/core/hasFeature02.xml b/test/testcases/tests/level3/core/hasFeature02.xml
new file mode 100644
index 0000000..f5d6bea
--- /dev/null
+++ b/test/testcases/tests/level3/core/hasFeature02.xml
@@ -0,0 +1,32 @@
+<?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="hasFeature02">
+<metadata>
+<title>hasFeature02</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementation.hasFeature("XML", "3.0") should return true.
+</description>
+<date qualifier="created">2003-05-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-5CED94D7"/>
+</metadata>
+<var name="impl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<implementation var="impl"/>
+<hasFeature var="state" obj="impl" feature='"cOrE"' version='"3.0"'/>
+<assertTrue id="hasCore30" actual="state"/>
+</test>
diff --git a/test/testcases/tests/level3/core/hasFeature03.xml b/test/testcases/tests/level3/core/hasFeature03.xml
new file mode 100644
index 0000000..ce11584
--- /dev/null
+++ b/test/testcases/tests/level3/core/hasFeature03.xml
@@ -0,0 +1,32 @@
+<?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="hasFeature03">
+<metadata>
+<title>hasFeature03</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementation.hasFeature("XML", "3.0") should return true.
+</description>
+<date qualifier="created">2003-05-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-5CED94D7"/>
+</metadata>
+<var name="impl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<implementation var="impl"/>
+<hasFeature var="state" obj="impl" feature='"+cOrE"' version='"3.0"'/>
+<assertTrue id="hasPlusCore30" actual="state"/>
+</test>
diff --git a/test/testcases/tests/level3/core/hasFeature04.xml b/test/testcases/tests/level3/core/hasFeature04.xml
new file mode 100644
index 0000000..5eac64d
--- /dev/null
+++ b/test/testcases/tests/level3/core/hasFeature04.xml
@@ -0,0 +1,33 @@
+<?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="hasFeature04">
+<metadata>
+<title>hasFeature04</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementation.hasFeature("XML", "3.0") should return true.
+</description>
+<date qualifier="created">2003-05-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-5CED94D7"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="impl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<implementation var="impl"/>
+<hasFeature var="state" obj="impl" feature='"+xMl"' version='"3.0"'/>
+<assertTrue id="hasXML30" actual="state"/>
+</test>
diff --git a/test/testcases/tests/level3/core/infoset01.xml b/test/testcases/tests/level3/core/infoset01.xml
new file mode 100644
index 0000000..b154037
--- /dev/null
+++ b/test/testcases/tests/level3/core/infoset01.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset01">
+<metadata>
+<title>infoset01</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with infoset set to true, check that
+entity references are expanded and unused entity declaration are maintained.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-infoset"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="entRef" type="EntityReference"/>
+<var name="childValue" type="DOMString"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="ent2" type="Entity"/>
+<var name="doctype" type="DocumentType"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<!-- add an entity reference to the content of the p element -->
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<createEntityReference var="entRef" obj="doc" name='"ent1"'/>
+<appendChild var="child" obj="pElem" newChild="entRef"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<lastChild var="child" obj="pElem" interface="Node"/>
+<assertNotNull actual="child" id="lastChildNotNull"/>
+<!-- this should be a Text node -->
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"#text"' ignoreCase="false" id="firstChildName"/>
+<nodeValue var="childValue" obj="child"/>
+<assertEquals actual="childValue" expected='"barfoo"' ignoreCase="false" id="firstChildValue"/>
+<!-- early drafts would have removed unused entity declarations too -->
+<doctype var="doctype" obj="doc"/>
+<entities var="entities" obj="doctype"/>
+<getNamedItem var="ent2" obj="entities" name='"ent2"'/>
+<assertNotNull actual="ent2" id="ent2NotNull"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/infoset02.xml b/test/testcases/tests/level3/core/infoset02.xml
new file mode 100644
index 0000000..570d8ff
--- /dev/null
+++ b/test/testcases/tests/level3/core/infoset02.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset02">
+<metadata>
+<title>infoset02</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with infoset set to true, check that
+unbound entity references are preserved.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-infoset"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="entRef" type="EntityReference"/>
+<var name="childType" type="int"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<!-- add an entity reference to the content of the p element -->
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<createEntityReference var="entRef" obj="doc" name='"ent3"'/>
+<appendChild var="child" obj="pElem" newChild="entRef"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName
+ var="pList"
+ obj="doc"
+ tagname='"p"'
+ interface="Document"/>
+<item var="pElem" obj="pList" interface="NodeList" index="0"/>
+<lastChild var="child" obj="pElem" interface="Node"/>
+<assertNotNull actual="child" id="lastChildNotNull"/>
+<!-- this should be a Entity Reference node -->
+<nodeType var="childType" obj="child"/>
+<assertEquals actual="childType" expected="5" ignoreCase="false" id="lastChildEntRef"/>
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"ent3"' ignoreCase="false" id="lastChildName"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/infoset03.xml b/test/testcases/tests/level3/core/infoset03.xml
new file mode 100644
index 0000000..21acd6a
--- /dev/null
+++ b/test/testcases/tests/level3/core/infoset03.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset03">
+<metadata>
+<title>infoset03</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with infoset set to true,
+check if string values were not normalized.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-infoset"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+<var name="childLength" type="int"/>
+<load var="doc" href="datatype_normalization2" willBeModified="true"/>
+
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"infoset"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <normalizeDocument obj="doc"/>
+ <!-- fail test if normalize had any errors or fatal errors -->
+ <assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"code"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <length var="childLength" obj="childValue" interface="DOMString"/>
+ <assertEquals actual="childLength" expected='18' ignoreCase="false" id="content1"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content2"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content3"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/infoset04.xml b/test/testcases/tests/level3/core/infoset04.xml
new file mode 100644
index 0000000..6261d23
--- /dev/null
+++ b/test/testcases/tests/level3/core/infoset04.xml
@@ -0,0 +1,62 @@
+<?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="infoset04">
+<metadata>
+<title>infoset04</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize a document with a created CDATA section with the
+'infoset' to true and check if
+the CDATASection has been coalesced.
+</description>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=416"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-infoset"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="newCdata" type="CDATASection"/>
+<var name="cdata" type="CDATASection"/>
+<var name="text" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="pList" type="NodeList"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<createCDATASection var="newCdata" obj="doc" data='"CDATA"'/>
+<appendChild obj="elem" var="appendedChild" newChild="newCdata"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="normalization2Error"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<lastChild var="text" obj="elem" interface="Node"/>
+<nodeName var="nodeName" obj="text"/>
+<assertEquals actual="nodeName" expected='"#text"' id="documentnormalizedocument03_false" ignoreCase="false"/>
+<nodeValue var="nodeValue" obj="text"/>
+<assertEquals actual="nodeValue" expected='"barCDATA"' id="normalizedValue" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/infoset05.xml b/test/testcases/tests/level3/core/infoset05.xml
new file mode 100644
index 0000000..dfbfde5
--- /dev/null
+++ b/test/testcases/tests/level3/core/infoset05.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset05">
+<metadata>
+<title>infoset05</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with infoset set to true, check that
+namespace declaration attributes are maintained.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-infoset"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="xmlnsAttr" type="Attr"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<documentElement var="docElem" obj="doc"/>
+<getAttributeNode var="xmlnsAttr" obj="docElem" name='"xmlns"'/>
+<assertNotNull actual="xmlnsAttr" id="xmlnsAttrNotNull"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/infoset06.xml b/test/testcases/tests/level3/core/infoset06.xml
new file mode 100644
index 0000000..596c8b3
--- /dev/null
+++ b/test/testcases/tests/level3/core/infoset06.xml
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset06">
+<metadata>
+<title>infoset06</title>
+<creator>Curt Arnold</creator>
+<description>
+Create a document with an XML 1.1 valid but XML 1.0 invalid element and
+normalize document with infoset set to true.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-infoset"/>
+</metadata>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullString" type="DOMString" isNull="true"/>
+<var name="nullDoctype" type="DocumentType" isNull="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="retval" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="locator" type="DOMLocator"/>
+<var name="relatedNode" type="Node"/>
+<implementation var="domImpl"/>
+<createDocument var="doc" obj="domImpl"
+ namespaceURI="nullString"
+ qualifiedName="nullString"
+ doctype="nullDoctype"/>
+<assertDOMException id="xml10InvalidName">
+ <INVALID_CHARACTER_ERR>
+ <createElementNS var="elem" obj="doc"
+ namespaceURI='"http://www.example.org/domts/wellformed01"'
+ qualifiedName='"LegalName&#2190;"'/>
+ </INVALID_CHARACTER_ERR>
+</assertDOMException>
+<try>
+ <xmlVersion obj="doc" value='"1.1"' interface="Document"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<createElementNS var="elem" obj="doc"
+ namespaceURI='"http://www.example.org/domts/wellformed01"'
+ qualifiedName='"LegalName&#2190;"'/>
+<appendChild var="retval" obj="doc" newChild="elem"/>
+<xmlVersion obj="doc" value='"1.0"' interface="Document"/>
+<domConfig var="domConfig" obj="doc" interface="Document"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <assertEquals actual="severity" expected="2" ignoreCase="false" id="severity"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <assertEquals actual="type" expected='"wf-invalid-character-in-node-name"'
+ ignoreCase="false" id="type"/>
+ <location var="locator" obj="error" interface="DOMError"/>
+ <relatedNode var="relatedNode" obj="locator" interface="DOMLocator"/>
+ <assertSame actual="relatedNode" expected="elem" id="relatedNode"/>
+</for-each>
+<assertSize size="1" collection="errors" id="oneError"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/infoset07.xml b/test/testcases/tests/level3/core/infoset07.xml
new file mode 100644
index 0000000..91dad6f
--- /dev/null
+++ b/test/testcases/tests/level3/core/infoset07.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset07">
+<metadata>
+<title>infoset07</title>
+<creator>Curt Arnold</creator>
+<description>
+Create a document with an XML 1.1 valid but XML 1.0 invalid attribute and
+normalize document with infoset set to true.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-infoset"/>
+</metadata>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullDoctype" type="DocumentType" isNull="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="retval" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="locator" type="DOMLocator"/>
+<var name="relatedNode" type="Node"/>
+<implementation var="domImpl"/>
+<createDocument var="doc" obj="domImpl"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ qualifiedName='"html"'
+ doctype="nullDoctype"/>
+<documentElement var="docElem" obj="doc"/>
+<assertDOMException id="xml10InvalidName">
+ <INVALID_CHARACTER_ERR>
+ <createAttribute var="attr" obj="doc"
+ name='"LegalName&#2190;"'/>
+ </INVALID_CHARACTER_ERR>
+</assertDOMException>
+<try>
+ <xmlVersion obj="doc" value='"1.1"' interface="Document"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<setAttribute obj="docElem" name='"LegalName&#2190;"' value='"foo"'/>
+<getAttributeNode var="attr" obj="docElem" name='"LegalName&#2190;"'/>
+<xmlVersion obj="doc" value='"1.0"' interface="Document"/>
+<domConfig var="domConfig" obj="doc" interface="Document"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <assertEquals actual="severity" expected="2" ignoreCase="false" id="severity"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <assertEquals actual="type" expected='"wf-invalid-character-in-node-name"'
+ ignoreCase="false" id="type"/>
+ <location var="locator" obj="error" interface="DOMError"/>
+ <relatedNode var="relatedNode" obj="locator" interface="DOMLocator"/>
+ <assertSame actual="relatedNode" expected="attr" id="relatedNode"/>
+</for-each>
+<assertSize size="1" collection="errors" id="oneError"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/infoset08.xml b/test/testcases/tests/level3/core/infoset08.xml
new file mode 100644
index 0000000..28d8b6c
--- /dev/null
+++ b/test/testcases/tests/level3/core/infoset08.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset08">
+<metadata>
+<title>infoset08</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with infoset and validation set to true, check that
+whitespace in element content is preserved.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-infoset"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="bodyList" type="NodeList"/>
+<var name="body" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="child" type="Node"/>
+<var name="childName" type="DOMString"/>
+<var name="text" type="Text"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<!-- if we discarded whitespace on parse, add some back -->
+<if><implementationAttribute name="ignoringElementContentWhitespace" value="true"/>
+ <getElementsByTagName
+ var="bodyList"
+ obj="doc"
+ tagname='"body"'
+ interface="Document"/>
+ <item var="body" obj="bodyList" interface="NodeList" index="0"/>
+ <firstChild var="child" obj="body" interface="Node"/>
+ <createTextNode var="text" obj="doc" data='" "'/>
+ <insertBefore var="child" obj="body" newChild="text" refChild="child"/>
+</if>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName
+ var="bodyList"
+ obj="doc"
+ tagname='"body"'
+ interface="Document"/>
+<item var="body" obj="bodyList" interface="NodeList" index="0"/>
+<firstChild var="child" obj="body" interface="Node"/>
+<assertNotNull actual="child" id="firstChildNotNull"/>
+<!-- this should be a Text node -->
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"#text"' ignoreCase="false" id="firstChild"/>
+<nextSibling var="child" obj="child" interface="Node"/>
+<assertNotNull actual="child" id="secondChildNotNull"/>
+<nodeName var="childName" obj="child"/>
+<assertEquals actual="childName" expected='"p"' ignoreCase="false" id="secondChild"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/infoset09.xml b/test/testcases/tests/level3/core/infoset09.xml
new file mode 100644
index 0000000..ab75a9f
--- /dev/null
+++ b/test/testcases/tests/level3/core/infoset09.xml
@@ -0,0 +1,59 @@
+<?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="infoset09">
+<metadata>
+<title>infoset09</title>
+<creator>Curt Arnold</creator>
+<description>
+ Append a Comment node and normalize with "infoset" set to true.
+</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#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-infoset"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="newComment" type="Comment"/>
+<var name="lastChild" type="Node"/>
+<var name="text" type="Text"/>
+<var name="nodeName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<createComment var="newComment" obj="doc" data='"COMMENT_NODE"'/>
+<appendChild obj="elem" var="appendedChild" newChild="newComment"/>
+<domConfig interface="Document" obj="doc" var="domConfig" />
+<setParameter obj="domConfig" name='"comments"' value="false"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="normalizationError"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="pList" index="0" interface="NodeList"/>
+<lastChild var="lastChild" obj="elem" interface="Node"/>
+<nodeName var="nodeName" obj="lastChild"/>
+<assertEquals actual="nodeName" expected='"#comment"' id="commentPreserved" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/metadata.xml b/test/testcases/tests/level3/core/metadata.xml
new file mode 100644
index 0000000..d9117c5
--- /dev/null
+++ b/test/testcases/tests/level3/core/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+Copyright (c) 2003 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 metadata SYSTEM "dom3.dtd">
+
+<!-- This file contains additional metadata about DOM L3 Core tests.
+ Allowing additional documentation without modifying the tests themselves. -->
+<metadata xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3">
+</metadata>
diff --git a/test/testcases/tests/level3/core/namespacedeclarations01.xml b/test/testcases/tests/level3/core/namespacedeclarations01.xml
new file mode 100644
index 0000000..7f1ad9b
--- /dev/null
+++ b/test/testcases/tests/level3/core/namespacedeclarations01.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="namespacedeclarations01">
+<metadata>
+<title>namespacedeclarations01</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with namespace-declarations set to true, check that
+namespace declaration attributes are maintained.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespace-declarations"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="xmlnsAttr" type="Attr"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"namespace-declarations"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<documentElement var="docElem" obj="doc"/>
+<getAttributeNode var="xmlnsAttr" obj="docElem" name='"xmlns"'/>
+<assertNotNull actual="xmlnsAttr" id="xmlnsAttrNotNull"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/namespacedeclarations02.xml b/test/testcases/tests/level3/core/namespacedeclarations02.xml
new file mode 100644
index 0000000..fb0a911
--- /dev/null
+++ b/test/testcases/tests/level3/core/namespacedeclarations02.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="namespacedeclarations02">
+<metadata>
+<title>namespacedeclarations02</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with namespace-declarations set to true, check that
+namespace declaration attributes are maintained.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespace-declarations"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="xmlnsAttr" type="Attr"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"namespace-declarations"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<documentElement var="docElem" obj="doc"/>
+<getAttributeNode var="xmlnsAttr" obj="docElem" name='"xmlns"'/>
+<assertNull actual="xmlnsAttr" id="xmlnsAttrNull"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/nodeappendchild01.xml b/test/testcases/tests/level3/core/nodeappendchild01.xml
new file mode 100644
index 0000000..cd151a1
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeappendchild01.xml
@@ -0,0 +1,50 @@
+<?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="nodeappendchild01">
+<metadata>
+<title>nodeappendchild01</title>
+<creator>Curt Arnold</creator>
+<description>
+An attempt to add a second doctype node should result in a HIERARCHY_REQUEST_ERR
+or a NOT_SUPPORTED_ERR.
+</description>
+<date qualifier="created">2004-01-22</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-184E7107"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="nullPubId" type="DOMString" isNull="true"/>
+<var name="nullSysId" type="DOMString" isNull="true"/>
+<var name="appendedChild" type="Node"/>
+<var name="tagName" type="DOMString"/>
+<var name="docElem" type="Element"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="tagName" obj="docElem"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="docType" obj="domImpl" qualifiedName='tagName' publicId="nullPubId" systemId="nullSysId"/>
+<try>
+ <appendChild obj="doc" var="appendedChild" newChild="docType"/>
+ <fail id="throw_HIERARCHY_REQUEST_OR_NOT_SUPPORTED"/>
+ <catch>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="NOT_SUPPORTED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeappendchild02.xml b/test/testcases/tests/level3/core/nodeappendchild02.xml
new file mode 100644
index 0000000..64cad80
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeappendchild02.xml
@@ -0,0 +1,48 @@
+<?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="nodeappendchild02">
+<metadata>
+<title>nodeappendchild02</title>
+<creator>Curt Arnold</creator>
+<description>
+An attempt to add a second document element should result in a HIERARCHY_REQUEST_ERR
+or a NOT_SUPPORTED_ERR.
+</description>
+<date qualifier="created">2004-01-22</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-184E7107"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newElem" type="Element"/>
+<var name="appendedChild" type="Node"/>
+<var name="tagName" type="DOMString"/>
+<var name="rootNS" type="DOMString"/>
+<var name="docElem" type="Element"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="tagName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<createElementNS var="newElem" obj="doc" qualifiedName='tagName' namespaceURI="rootNS"/>
+<try>
+ <appendChild obj="doc" var="appendedChild" newChild="newElem"/>
+ <fail id="throw_HIERARCHY_REQUEST_OR_NOT_SUPPORTED"/>
+ <catch>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="NOT_SUPPORTED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition01.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition01.xml
new file mode 100644
index 0000000..eeb6a4b
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition01.xml
@@ -0,0 +1,44 @@
+<?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="nodecomparedocumentposition01">
+<metadata>
+<title>nodecomparedocumentposition01</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using compareDocumentPosition to check if a Document node contains and precedes its documentType and
+ node and if the DocumentTypeNode is contained and follows its Document node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-18</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="documentPositionDoc" type="int"/>
+<var name="documentPositionDocType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<compareDocumentPosition var="documentPositionDoc" obj="doc" other="docType"/>
+<assertEquals actual="documentPositionDoc" expected="20" id="nodecomparedocumentpositionIsContainedFollowing01" ignoreCase="false"/>
+<compareDocumentPosition var="documentPositionDocType" obj="docType" other="doc"/>
+<assertEquals actual="documentPositionDocType" expected="10" id="nodecomparetreepositionContainsPRECEDING01" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition02.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition02.xml
new file mode 100644
index 0000000..9f15c4f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition02.xml
@@ -0,0 +1,51 @@
+<?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="nodecomparedocumentposition02">
+<metadata>
+<title>nodecomparedocumentposition02</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check if a Document node contains and precedes its new DocumentType and
+ node and if the new DocumentType Node is contained and follows its Document node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDocType" type="DocumentType"/>
+<var name="docType" type="DocumentType"/>
+<var name="documentPositionDoc" type="int"/>
+<var name="documentPositionDocType" type="int"/>
+<var name="nullPubId" type="DOMString" isNull="true"/>
+<var name="nullSysId" type="DOMString" isNull="true"/>
+<var name="replaced" type="Node"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<name var="rootName" obj="docType" interface="DocumentType"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="newDocType" obj="domImpl" qualifiedName="rootName" publicId="nullPubId" systemId="nullSysId"/>
+<replaceChild obj="doc" var="replaced" newChild="newDocType" oldChild="docType"/>
+<compareDocumentPosition var="documentPositionDoc" obj="doc" other="newDocType"/>
+<assertEquals actual="documentPositionDoc" expected="20" id="nodecomparedocumentpositionIsContainedFollowing02" ignoreCase="false"/>
+<compareDocumentPosition var="documentPositionDocType" obj="newDocType" other="doc"/>
+<assertEquals actual="documentPositionDocType" expected="10" id="nodecomparedocumentpositionContainsPRECEDING02" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition03.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition03.xml
new file mode 100644
index 0000000..5fbc2ed
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition03.xml
@@ -0,0 +1,49 @@
+<?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="nodecomparedocumentposition03">
+<metadata>
+<title>nodecomparedocumentposition03</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the document position of two Document nodes obtained from the
+ same xml document is disconnected, implementation specific, and that the order of these two documents
+ is reserved.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docComp" type="Document"/>
+<var name="documentPosition1" type="int"/>
+<var name="documentPosition2" type="int"/>
+<var name="documentPosition3" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<load var="docComp" href="hc_staff" willBeModified="false"/>
+<compareDocumentPosition var="documentPosition1" obj="doc" other="docComp"/>
+<!-- bitmask blocks out preceding and following bits -->
+<assertEquals bitmask="57" actual="documentPosition1" expected="33" id="isImplSpecificDisconnected1" ignoreCase="false"/>
+<compareDocumentPosition var="documentPosition2" obj="docComp" other="doc"/>
+<assertNotEquals bitmask="2" actual="documentPosition2" expected="documentPosition1" id="notBothPreceding" ignoreCase="false"/>
+<assertNotEquals bitmask="4" actual="documentPosition2" expected="documentPosition1" id="notBothFollowing" ignoreCase="false"/>
+<assertEquals bitmask="57" actual="documentPosition2" expected="33" id="isImplSpecificDisconnected2" ignoreCase="false"/>
+<!-- returned value should be consistent between invocations -->
+<compareDocumentPosition var="documentPosition3" obj="doc" other="docComp"/>
+<assertEquals actual="documentPosition3" expected="documentPosition1" id="isConsistent" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition04.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition04.xml
new file mode 100644
index 0000000..754ab87
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition04.xml
@@ -0,0 +1,36 @@
+<?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="nodecomparedocumentposition04">
+<metadata>
+<title>nodecomparedocumentposition04</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check that no flags are set in return when the document position of a
+ Document node is compared with itself
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="documentPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<compareDocumentPosition var="documentPosition" obj="doc" other="doc"/>
+<assertEquals actual="documentPosition" expected="0" id="nodecomparedocumentpositionNoFlags04" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition05.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition05.xml
new file mode 100644
index 0000000..ed93ae3
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition05.xml
@@ -0,0 +1,55 @@
+<?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="nodecomparedocumentposition05">
+<metadata>
+<title>nodecomparedocumentposition05</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the document position of a Document and a new Document node
+ are disconnected, implementation-specific and preceding/following.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="documentPosition1" type="int"/>
+<var name="documentPosition2" type="int"/>
+<var name="documentPosition3" type="int"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="rootName" type="DOMString"/>
+<var name="rootNS" type="DOMString"/>
+<var name="docElem" type="Element"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" qualifiedName='rootName' namespaceURI='rootNS' doctype="nullDocType"/>
+<compareDocumentPosition var="documentPosition1" obj="doc" other="newDoc"/>
+<assertEquals bitmask="57" actual="documentPosition1" expected="33" id="isImplSpecificDisconnected1" ignoreCase="false"/>
+<compareDocumentPosition var="documentPosition2" obj="newDoc" other="doc"/>
+<assertEquals bitmask="57" actual="documentPosition2" expected="33" id="isImplSpecificDisconnected2" ignoreCase="false"/>
+<assertNotEquals bitmask="2" actual="documentPosition2" expected="documentPosition1" id="notBothPreceding" ignoreCase="false"/>
+<assertNotEquals bitmask="4" actual="documentPosition2" expected="documentPosition1" id="notBothFollowing" ignoreCase="false"/>
+<compareDocumentPosition var="documentPosition3" obj="doc" other="newDoc"/>
+<assertEquals actual="documentPosition3" expected="documentPosition1" id="isConsistent" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition06.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition06.xml
new file mode 100644
index 0000000..aaaa6d4
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition06.xml
@@ -0,0 +1,44 @@
+<?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="nodecomparedocumentposition06">
+<metadata>
+<title>nodecomparedocumentposition06</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using compareDocumentPosition check if the document position of a Document node contains and precedes
+ its DocumentElement, and the DocumentElement is contained and follows the Document node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="documentPositionDoc" type="int"/>
+<var name="documentPositionDocElem" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<compareDocumentPosition var="documentPositionDoc" obj="doc" other="docElem"/>
+<assertEquals actual="documentPositionDoc" expected="20" id="nodecomparedocumentpositionIsContainedFollowing06" ignoreCase="false"/>
+<compareDocumentPosition var="documentPositionDocElem" obj="docElem" other="doc"/>
+<assertEquals actual="documentPositionDocElem" expected="10" id="nodecomparedocumentpotionContainsPRECEDING06" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition07.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition07.xml
new file mode 100644
index 0000000..221d09a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition07.xml
@@ -0,0 +1,45 @@
+<?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="nodecomparedocumentposition07">
+<metadata>
+<title>nodecomparedocumentposition07</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the document compared contains and precedes the new
+ newElement, and the newElement is contained and follows the document.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="newElem" type="Element"/>
+<var name="documentPosition" type="int"/>
+<var name="documentElementPosition" type="int"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createElementNS var="newElem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"br"'/>
+<appendChild obj="docElem" var="appendedChild" newChild="newElem"/>
+<compareDocumentPosition var="documentPosition" obj="doc" other="newElem"/>
+<assertEquals actual="documentPosition" expected="20" id="nodecomparedocumentpositionIsContainedFollowing07" ignoreCase="false"/>
+<compareDocumentPosition var="documentElementPosition" obj="newElem" other="doc"/>
+<assertEquals actual="documentElementPosition" expected="10" id="nodecomparedocumentpositionContainedPRECEDING07" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition08.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition08.xml
new file mode 100644
index 0000000..27386be
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition08.xml
@@ -0,0 +1,43 @@
+<?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="nodecomparedocumentposition08">
+<metadata>
+<title>nodecomparedocumentposition08</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the Document node contains and precedes an Element,
+ and the Element is contained and follows the Document node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="documentPosition" type="int"/>
+<var name="elementPosition" type = "int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<compareDocumentPosition var="documentPosition" obj="doc" other="elem"/>
+<assertEquals actual="documentPosition" expected="20" id="nodecomparedocumentpositionIsContainedFollowing08" ignoreCase="false"/>
+<compareDocumentPosition var="elementPosition" obj="elem" other="doc"/>
+<assertEquals actual="elementPosition" expected="10" id="nodecomparedocumentpositionContainsPRECEDING08" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition09.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition09.xml
new file mode 100644
index 0000000..5d7ac69
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition09.xml
@@ -0,0 +1,47 @@
+<?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="nodecomparedocumentposition09">
+<metadata>
+<title>nodecomparedocumentposition09</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the Element node is contained and follows the appended Document node, and
+ if the Document node contains and precedes the Element node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="newElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="documentPosition" type="int"/>
+<var name="documentElementPosition" type = "int"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<createElementNS var="newElem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"br"'/>
+<appendChild obj="elem" var="appendedChild" newChild="newElem"/>
+<compareDocumentPosition var="documentPosition" obj="doc" other="newElem"/>
+<assertEquals actual="documentPosition" expected="20" id="nodecomparedocumentpositionIsContainedFollowing09" ignoreCase="false"/>
+<compareDocumentPosition var="documentElementPosition" obj="newElem" other="doc"/>
+<assertEquals actual="documentElementPosition" expected="10" id="nodecomparedocumentpositionContainsPRECEDING09" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition10.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition10.xml
new file mode 100644
index 0000000..2d854d9
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition10.xml
@@ -0,0 +1,41 @@
+<?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="nodecomparedocumentposition10">
+<metadata>
+<title>nodecomparedocumentposition10</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the document node precedes and contains its default Attr node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="dir" type="Attr"/>
+<var name="elemList" type="NodeList"/>
+<var name="attrPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<getAttributeNode var="dir" obj="elem" name='"dir"'/>
+<compareDocumentPosition var="attrPosition" obj="dir" other="doc"/>
+<assertEquals actual="attrPosition" expected="10" id="nodecomparedocumentpositionPRECEDINGContains10" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition11.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition11.xml
new file mode 100644
index 0000000..e07f82c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition11.xml
@@ -0,0 +1,44 @@
+<?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="nodecomparedocumentposition11">
+<metadata>
+<title>nodecomparedocumentposition11</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the Document node precedes and contains the Attr node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="newAttr" type="Attr"/>
+<var name="elemList" type="NodeList"/>
+<var name="documentPosition" type="int"/>
+<var name="attrPosition" type ="int"/>
+<var name="replacedAttr" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<createAttributeNS var="newAttr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<setAttributeNodeNS obj="elem" var="replacedAttr" newAttr="newAttr"/>
+<compareDocumentPosition var="attrPosition" obj="newAttr" other="doc"/>
+<assertEquals actual="attrPosition" expected="10" id="nodecomparedocumentpositionPRECEDINGContains11" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition12.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition12.xml
new file mode 100644
index 0000000..d350306
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition12.xml
@@ -0,0 +1,43 @@
+<?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="nodecomparedocumentposition12">
+<metadata>
+<title>nodecomparedocumentposition12</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check if a new ProcessingInstruction node is contained and follows the
+ Document node, and that the Document node contains and precedes the ProcessingInstruction node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="documentPosition" type="int"/>
+<var name="piPosition" type="int"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createProcessingInstruction var="pi" obj="doc" data='"PIDATA"' target='"PITarget"'/>
+<appendChild obj="doc" var="appendedChild" newChild="pi"/>
+<compareDocumentPosition var="documentPosition" obj="doc" other="pi"/>
+<assertEquals actual="documentPosition" expected="20" id="nodecomparedocumentpositionIsContainedFollowing12" ignoreCase="false"/>
+<compareDocumentPosition var="piPosition" obj="pi" other="doc"/>
+<assertEquals actual="piPosition" expected="10" id="nodecomparedocumentpositionContainsPRECEDING12" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition13.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition13.xml
new file mode 100644
index 0000000..f75a093
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition13.xml
@@ -0,0 +1,47 @@
+<?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="nodecomparedocumentposition13">
+<metadata>
+<title>nodecomparedocumentposition13</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the Document node contains and precedes the new Comment node,
+ and if the Comment node is contained and follows the Document node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="comment" type="Comment"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="documentPosition" type="int"/>
+<var name="commentPosition" type="int"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createComment var="comment" obj="doc" data='"Another Comment"'/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<appendChild obj="elem" var="appendedChild" newChild="comment"/>
+<compareDocumentPosition var="documentPosition" obj="doc" other="comment"/>
+<assertEquals actual="documentPosition" expected="20" id="nodecomparedocumentpositionIsContainedFollowing13" ignoreCase="false"/>
+<compareDocumentPosition var="commentPosition" obj="comment" other="doc"/>
+<assertEquals actual="commentPosition" expected="10" id="nodecomparedocumentpositionContainsPRECEDING13" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition14.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition14.xml
new file mode 100644
index 0000000..499915f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition14.xml
@@ -0,0 +1,47 @@
+<?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="nodecomparedocumentposition14">
+<metadata>
+<title>nodecomparedocumentposition14</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the DocumentFragment node contains and precedes an Element
+ node appended to it, and that the Element node is contained and follows the DocumentFragment node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="docElem" type="Element"/>
+<var name="docFragChild" type="Node"/>
+<var name="docFragPosition" type="int"/>
+<var name="docFragChildPosition" type="int"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="docElem" />
+<firstChild var="docFragChild" obj="docFrag" interface="Node"/>
+<compareDocumentPosition var="docFragPosition" obj="docFrag" other="docFragChild"/>
+<assertEquals actual="docFragPosition" expected="20" id="nodecomparedocumentpositionContainsPRECEDING14" ignoreCase="false"/>
+<compareDocumentPosition var="docFragChildPosition" obj="docFragChild" other="docFrag"/>
+<assertEquals actual="docFragChildPosition" expected="10" id="nodecomparedocumentpositionIsContainedFollowing14" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition15.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition15.xml
new file mode 100644
index 0000000..bcf1d5e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition15.xml
@@ -0,0 +1,51 @@
+<?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="nodecomparedocumentposition15">
+<metadata>
+<title>nodecomparedocumentposition15</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the Element node precedes and contains its Attr child, and that the Attr child
+ is contained and follows the Element node.
+</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-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="docElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="docFragChild" type="Node"/>
+<var name="attrPosition" type="int"/>
+<var name="docFragChildPosition" type="int"/>
+<var name="appendedChild" type="Node"/>
+<var name="attrNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<setAttributeNodeNS obj="docElem" var="attrNode" newAttr="attr" />
+<appendChild obj="docFrag" var="appendedChild" newChild="docElem" />
+<firstChild var="docFragChild" obj="docFrag" interface="Node"/>
+<compareDocumentPosition var="docFragChildPosition" obj="docFragChild" other="attr"/>
+<assertEquals actual="docFragChildPosition" expected="20" id="nodecomparedocumentpositionIsContainedFollows15" ignoreCase="false"/>
+<compareDocumentPosition var="attrPosition" obj="attr" other="docFragChild"/>
+<assertEquals actual="attrPosition" expected="10" id="nodecomparedocumentpositionPRECEEDINGContains15" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition16.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition16.xml
new file mode 100644
index 0000000..083b654
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition16.xml
@@ -0,0 +1,54 @@
+<?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="nodecomparedocumentposition16">
+<metadata>
+<title>nodecomparedocumentposition16</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the document position of a DocumentFragment node compared with
+ a cloned Attr node is disconnected and implementation specific, and that the order between these two
+ nodes is preserved.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="attr" type="Attr"/>
+<var name="attrCloned" type="Attr"/>
+<var name="docFragPosition" type="int"/>
+<var name="position1" type="int"/>
+<var name="position2" type="int"/>
+<var name="position3" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<cloneNode var="attrCloned" obj="attr" deep="true"/>
+<compareDocumentPosition var="position1" obj="docFrag" other="attrCloned"/>
+<!-- bitmask blocks out preceding and following bits -->
+<assertEquals bitmask="57" actual="position1" expected="33" id="isImplSpecificDisconnected1" ignoreCase="false"/>
+<compareDocumentPosition var="position2" obj="attrCloned" other="docFrag"/>
+<assertNotEquals bitmask="2" actual="position2" expected="position1" id="notBothPreceding" ignoreCase="false"/>
+<assertNotEquals bitmask="4" actual="position2" expected="position1" id="notBothFollowing" ignoreCase="false"/>
+<assertEquals bitmask="57" actual="position2" expected="33" id="isImplSpecificDisconnected2" ignoreCase="false"/>
+<!-- returned value should be consistent between invocations -->
+<compareDocumentPosition var="position3" obj="docFrag" other="attrCloned"/>
+<assertEquals actual="position3" expected="position1" id="isConsistent" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition17.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition17.xml
new file mode 100644
index 0000000..6c5335af
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition17.xml
@@ -0,0 +1,46 @@
+<?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="nodecomparedocumentposition17">
+<metadata>
+<title>nodecomparedocumentposition17</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the document position of the first ProcessingInstruction node compared to
+ this second newly apended ProcessingInstruction node is PRECEDING, and FOLLOWING vice versa.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="pi1" type="ProcessingInstruction"/>
+<var name="pi2" type="ProcessingInstruction"/>
+<var name="pi1Position" type="int"/>
+<var name="pi2Position" type="int"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createProcessingInstruction var="pi1" obj="doc" target='"PI1"' data='""'/>
+<createProcessingInstruction var="pi2" obj="doc" target='"PI2"' data='""'/>
+<appendChild obj="doc" var="appendedChild" newChild="pi1"/>
+<appendChild obj="doc" var="appendedChild" newChild="pi2"/>
+<compareDocumentPosition var="pi1Position" obj="pi1" other="pi2"/>
+<assertEquals actual="pi1Position" expected="4" id="nodecomparedocumentpositionFollowing17" ignoreCase="false"/>
+<compareDocumentPosition var="pi2Position" obj="pi2" other="pi1"/>
+<assertEquals actual="pi2Position" expected="2" id="nodecomparedocumentpositionPRECEDING17" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition18.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition18.xml
new file mode 100644
index 0000000..0742885
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition18.xml
@@ -0,0 +1,48 @@
+<?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="nodecomparedocumentposition18">
+<metadata>
+<title>nodecomparedocumentposition18</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the document position of the first new Text node compared to the
+ second text node is PRECEDING and is FOLLOWING vice versa.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-19</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="txt1" type="Text"/>
+<var name="txt2" type="Text"/>
+<var name="txt1Position" type="int"/>
+<var name="txt2Position" type="int"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createTextNode var="txt1" obj="doc" data='"T1"'/>
+<createTextNode var="txt2" obj="doc" data='"T2"'/>
+<appendChild obj="docElem" var="appendedChild" newChild="txt1"/>
+<appendChild obj="docElem" var="appendedChild" newChild="txt2"/>
+<compareDocumentPosition var="txt1Position" obj="txt1" other="txt2"/>
+<assertEquals actual="txt1Position" expected="4" id="nodecomparedocumentpositionFollowing18" ignoreCase="false"/>
+<compareDocumentPosition var="txt2Position" obj="txt2" other="txt1"/>
+<assertEquals actual="txt2Position" expected="2" id="nodecomparedocumentpositionPRECEDING18" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition19.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition19.xml
new file mode 100644
index 0000000..25cf54a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition19.xml
@@ -0,0 +1,55 @@
+<?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="nodecomparedocumentposition19">
+<metadata>
+<title>nodecomparedocumentposition19</title>
+<creator>IBM</creator>
+<description>
+ The method compareDocumentPosition compares a node with this node with regard to their position in the
+ document and according to the document order.
+
+ Using compareDocumentPosition check if the document position of the first CDATASection node
+ of the second element whose localName is name compared with the second CDATASection node
+ is PRECEDING and is FOLLOWING vice versa.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<implementationAttribute name="coalescing" value="false"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elemStrong" type="Element"/>
+<var name="cdata1" type="CDATASection"/>
+<var name="cdata2" type="CDATASection"/>
+<var name="aNode" type="Node"/>
+<var name="cdata1Position" type="int"/>
+<var name="cdata2Position" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagNameNS var="elemList" obj="doc" namespaceURI='"*"' localName='"strong"' interface="Document"/>
+<item var="elemStrong" obj="elemList" index="1" interface="NodeList"/>
+<lastChild var="cdata2" obj="elemStrong" interface="Node"/>
+<previousSibling var="aNode" obj="cdata2" interface="Node"/>
+<previousSibling var="cdata1" obj="aNode" interface="Node"/>
+<compareDocumentPosition var="cdata1Position" obj="cdata1" other="cdata2"/>
+<assertEquals actual="cdata1Position" expected="4" id="nodecomparedocumentposition19_cdata2Follows" ignoreCase="false"/>
+<compareDocumentPosition var="cdata2Position" obj="cdata2" other="cdata1"/>
+<assertEquals actual="cdata2Position" expected="2" id="nodecomparedocumentposition_cdata1Precedes" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition20.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition20.xml
new file mode 100644
index 0000000..776c573
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition20.xml
@@ -0,0 +1,49 @@
+<?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="nodecomparedocumentposition20">
+<metadata>
+<title>nodecomparedocumentposition20</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the document position of the first Text node
+ of the second element whose localName is name compared with the next CDATASection node
+ is PRECEDING and FOLLOWING vice versa.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<implementationAttribute name="coalescing" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elemName" type="Element"/>
+<var name="cdata" type="CDATASection"/>
+<var name="txt" type="Text"/>
+<var name="txtPosition" type="int"/>
+<var name="cdataPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elemName" obj="elemList" index="1" interface="NodeList"/>
+<firstChild var="txt" obj="elemName" interface="Node"/>
+<lastChild var="cdata" obj="elemName" interface="Node"/>
+<compareDocumentPosition var="txtPosition" obj="txt" other="cdata"/>
+<assertEquals actual="txtPosition" expected="4" id="nodecomparedocumentpositionFollowingg20" ignoreCase="false"/>
+<compareDocumentPosition var="cdataPosition" obj="cdata" other="txt"/>
+<assertEquals actual="cdataPosition" expected="2" id="nodecomparedocumentpositionPRECEDING20" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition21.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition21.xml
new file mode 100644
index 0000000..3e7525b
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition21.xml
@@ -0,0 +1,52 @@
+<?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="nodecomparedocumentposition21">
+<metadata>
+<title>nodecomparedocumentposition21</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check the document position of the text node of the fist and second elements
+ whose localName is name. The first text node should return FOLLOWING and the second text node should
+ return PRECEDING when compareDocumentPosition is invoked with the other node as a parameter.
+
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<implementationAttribute name="coalescing" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elemName1" type="Element"/>
+<var name="elemName2" type="Element"/>
+<var name="txt1" type="Text"/>
+<var name="txt2" type="Text"/>
+<var name="txt1Position" type="int"/>
+<var name="txt2Position" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elemName1" obj="elemList" index="0" interface="NodeList"/>
+<item var="elemName2" obj="elemList" index="1" interface="NodeList"/>
+<firstChild var="txt1" obj="elemName1" interface="Node"/>
+<firstChild var="txt2" obj="elemName2" interface="Node"/>
+<compareDocumentPosition var="txt1Position" obj="txt1" other="txt2"/>
+<assertEquals actual="txt1Position" expected="4" id="nodecomparedocumentpositionFollowing21" ignoreCase="false"/>
+<compareDocumentPosition var="txt2Position" obj="txt2" other="txt1"/>
+<assertEquals actual="txt2Position" expected="2" id="nodecomparedocumentpositionPRECEDING21" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition22.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition22.xml
new file mode 100644
index 0000000..bbd3737
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition22.xml
@@ -0,0 +1,50 @@
+<?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="nodecomparedocumentposition22">
+<metadata>
+<title>nodecomparedocumentposition22</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the Entity node precedes the Notation node and the Notation
+ node follows the Entity node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<implementationAttribute name="coalescing" value="false"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="notation" type="Notation"/>
+<var name="entityPosition" type="int"/>
+<var name="notationPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<notations var="notationsMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"alpha"'/>
+<getNamedItem var="notation" obj="notationsMap" name='"notation1"'/>
+<compareDocumentPosition var="entityPosition" obj="entity" other="notation"/>
+<assertEquals actual="entityPosition" expected="4" id="nodecomparedocumentpositionFollowing22" ignoreCase="false"/>
+<compareDocumentPosition var="notationPosition" obj="notation" other="entity"/>
+<assertEquals actual="notationPosition" expected="2" id="nodecomparedocumentpositionPRECEDING22" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition23.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition23.xml
new file mode 100644
index 0000000..8b3e32e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition23.xml
@@ -0,0 +1,54 @@
+<?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="nodecomparedocumentposition23">
+<metadata>
+<title>nodecomparedocumentposition23</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the document position of an Entity node compared to another
+ Entity node following it in DocumentType is implementation specific.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="entity2" type="Entity"/>
+<var name="position1" type="int"/>
+<var name="position2" type="int"/>
+<var name="position3" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"alpha"'/>
+<getNamedItem var="entity2" obj="entitiesMap" name='"delta"'/>
+<compareDocumentPosition var="position1" obj="entity" other="entity2"/>
+<!-- bitmask blocks out preceding and following bits -->
+<assertEquals bitmask="57" actual="position1" expected="32" id="isImplSpecificDisconnected1" ignoreCase="false"/>
+<compareDocumentPosition var="position2" obj="entity2" other="entity"/>
+<assertNotEquals bitmask="2" actual="position2" expected="position1" id="notBothPreceding" ignoreCase="false"/>
+<assertNotEquals bitmask="4" actual="position2" expected="position1" id="notBothFollowing" ignoreCase="false"/>
+<assertEquals bitmask="57" actual="position2" expected="32" id="isImplSpecificDisconnected2" ignoreCase="false"/>
+<!-- returned value should be consistent between invocations -->
+<compareDocumentPosition var="position3" obj="entity" other="entity2"/>
+<assertEquals actual="position3" expected="position1" id="isConsistent" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition24.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition24.xml
new file mode 100644
index 0000000..ab4f111
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition24.xml
@@ -0,0 +1,44 @@
+<?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="nodecomparedocumentposition24">
+<metadata>
+<title>nodecomparedocumentposition24</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the return value of document position of a Notation node compared to another
+ that is the same is not flagged.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notaionsMap" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="notation2" type="Notation"/>
+<var name="notationPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<notations var="notaionsMap" obj="docType"/>
+<getNamedItem var="notation" obj="notaionsMap" name='"notation1"'/>
+<getNamedItem var="notation2" obj="notaionsMap" name='"notation1"'/>
+<compareDocumentPosition var="notationPosition" obj="notation" other="notation2"/>
+<assertEquals actual="notationPosition" expected="0" id="nodecomparedocumentposition24" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition25.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition25.xml
new file mode 100644
index 0000000..1bfe1fa
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition25.xml
@@ -0,0 +1,46 @@
+<?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="nodecomparedocumentposition25">
+<metadata>
+<title>nodecomparedocumentposition25</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the EntityReference or Text node is contained and follows its
+ parent Element node, and that the Element node contains and precedes the
+ EntityReference or Text node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elemName" type="Element"/>
+<var name="entRef" type="Node"/>
+<var name="elementPosition" type="int"/>
+<var name="entRefPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"var"' interface="Document"/>
+<item var="elemName" obj="elemList" index="2" interface="NodeList"/>
+<firstChild obj="elemName" var="entRef" interface="Node"/>
+<compareDocumentPosition var="elementPosition" obj="elemName" other="entRef"/>
+<assertEquals actual="elementPosition" expected="20" id="nodecomparedocumentpositionIsContainedFollowing25" ignoreCase="false"/>
+<compareDocumentPosition var="entRefPosition" obj="entRef" other="elemName"/>
+<assertEquals actual="entRefPosition" expected="10" id="nodecomparedocumentpositionContainsPRECEDING25" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition26.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition26.xml
new file mode 100644
index 0000000..b349fa3
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition26.xml
@@ -0,0 +1,56 @@
+<?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="nodecomparedocumentposition26">
+<metadata>
+<title>nodecomparedocumentposition26</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check if the EntityReference node contains and precedes it's first
+ childElement, and that the childElement is contained and follows the EntityReference node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="varList" type="NodeList"/>
+<var name="varElem" type="Element"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entRefChild1" type="Element"/>
+<var name="entRefPosition" type="int"/>
+<var name="entRefChild1Position" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<if>
+ <implementationAttribute name="expandEntityReferences" value="false"/>
+ <getElementsByTagName var="varList" obj="doc" tagname='"var"' interface="Document"/>
+ <item var="varElem" obj="varList" index="2" interface="NodeList"/>
+ <assertNotNull actual="varElem" id="varElemNotNull"/>
+ <firstChild var="entRef" obj="varElem" interface="Node"/>
+ <assertNotNull actual="entRef" id="entRefNotNull"/>
+ <else>
+ <createEntityReference name='"ent4"' obj="doc" var="entRef"/>
+ </else>
+</if>
+<firstChild var="entRefChild1" obj="entRef" interface="Node"/>
+<assertNotNull actual="entRefChild1" id="entRefChild1NotNull"/>
+<compareDocumentPosition var="entRefPosition" obj="entRef" other="entRefChild1"/>
+<assertEquals actual="entRefPosition" expected="20" id="nodecomparedocumentpositionIsContainedFollowing26" ignoreCase="false"/>
+<compareDocumentPosition var="entRefChild1Position" obj="entRefChild1" other="entRef"/>
+<assertEquals actual="entRefChild1Position" expected="10" id="nodecomparedocumentpositionContainsPRECEDING26" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition27.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition27.xml
new file mode 100644
index 0000000..2da7475
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition27.xml
@@ -0,0 +1,56 @@
+<?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="nodecomparedocumentposition27">
+<metadata>
+<title>nodecomparedocumentposition27</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check if the EntityReference node contains and precedes it's last
+ childElement, and that this childElement is contained and follows the EntityReference node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="varList" type="NodeList"/>
+<var name="varElem" type="Element"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entRefChild1" type="ProcessingInstruction"/>
+<var name="entRefPosition" type="int"/>
+<var name="entRefChild1Position" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<if>
+ <implementationAttribute name="expandEntityReferences" value="false"/>
+ <getElementsByTagName var="varList" obj="doc" tagname='"var"' interface="Document"/>
+ <item var="varElem" obj="varList" index="2" interface="NodeList"/>
+ <assertNotNull actual="varElem" id="varElemNotNull"/>
+ <firstChild var="entRef" obj="varElem" interface="Node"/>
+ <assertNotNull actual="entRef" id="entRefNotNull"/>
+ <else>
+ <createEntityReference name='"ent4"' obj="doc" var="entRef"/>
+ </else>
+</if>
+<lastChild obj="entRef" var="entRefChild1" interface="Node"/>
+<assertNotNull actual="entRefChild1" id="entRefChild1NotNull"/>
+<compareDocumentPosition var="entRefPosition" obj="entRef" other="entRefChild1"/>
+<assertEquals actual="entRefPosition" expected="20" id="nodecomparedocumentpositionIsContainedFollowing27" ignoreCase="false"/>
+<compareDocumentPosition var="entRefChild1Position" obj="entRefChild1" other="entRef"/>
+<assertEquals actual="entRefChild1Position" expected="10" id="nodecomparedocumentpositionContainsPRECEDING" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition28.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition28.xml
new file mode 100644
index 0000000..e596ed1
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition28.xml
@@ -0,0 +1,60 @@
+<?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="nodecomparedocumentposition28">
+<metadata>
+<title>nodecomparedocumentposition28</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition check the document position of the EntityReference node ent4's
+ first child and last child. Invoke compareDocumentPositon on first child with last child as a parameter
+ should return FOLLOWING, and should return PRECEDING vice versa.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="varList" type="NodeList"/>
+<var name="varElem" type="Element"/>
+<var name="entRef" type="EntityReference"/>
+<var name="entRefChild1" type="Element"/>
+<var name="entRefChild2" type="ProcessingInstruction"/>
+<var name="entRefChild1Position" type="int"/>
+<var name="entRefChild2Position" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<if>
+ <implementationAttribute name="expandEntityReferences" value="false"/>
+ <getElementsByTagName var="varList" obj="doc" tagname='"var"' interface="Document"/>
+ <item var="varElem" obj="varList" index="2" interface="NodeList"/>
+ <assertNotNull actual="varElem" id="varElemNotNull"/>
+ <firstChild var="entRef" obj="varElem" interface="Node"/>
+ <assertNotNull actual="entRef" id="entRefNotNull"/>
+ <else>
+ <createEntityReference name='"ent4"' obj="doc" var="entRef"/>
+ </else>
+</if>
+<firstChild obj="entRef" var="entRefChild1" interface="Node"/>
+<assertNotNull actual="entRefChild1" id="entRefChild1NotNull"/>
+<lastChild obj="entRef" var="entRefChild2" interface="Node"/>
+<assertNotNull actual="entRefChild2" id="entRefChild2NotNull"/>
+<compareDocumentPosition var="entRefChild1Position" obj="entRefChild1" other="entRefChild2"/>
+<assertEquals actual="entRefChild1Position" expected="4" id="nodecomparedocumentpositionFollowing28" ignoreCase="false"/>
+<compareDocumentPosition var="entRefChild2Position" obj="entRefChild2" other="entRefChild1"/>
+<assertEquals actual="entRefChild2Position" expected="2" id="nodecomparedocumentpositionPRECEDING28" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition29.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition29.xml
new file mode 100644
index 0000000..28ed0c1
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition29.xml
@@ -0,0 +1,55 @@
+<?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="nodecomparedocumentposition29">
+<metadata>
+<title>nodecomparedocumentposition29</title>
+<creator>IBM</creator>
+<description>
+ Create two entity reference nodes. Using compareDocumentPosition to check if the child of the first Entity
+ Ref node precedes the child of the second Entity Ref node, and that the child of the second Entity Ref node
+ follows the child of the first Entity Ref node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-20</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="entRef1" type="EntityReference"/>
+<var name="entRef2" type="EntityReference"/>
+<var name="entRefChild1" type="Element"/>
+<var name="entRefChild2" type="ProcessingInstruction"/>
+<var name="entRefChild1Position" type="int"/>
+<var name="entRefChild2Position" type="int"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEntityReference name='"ent4"' obj="doc" var="entRef1"/>
+<createEntityReference name='"ent4"' obj="doc" var="entRef2"/>
+<documentElement var="docElem" obj="doc"/>
+<appendChild obj="docElem" var="appendedChild" newChild="entRef1"/>
+<appendChild obj="docElem" var="appendedChild" newChild="entRef2"/>
+<firstChild obj="entRef1" var="entRefChild1" interface="Node"/>
+<assertNotNull actual="entRefChild1" id="entRefChild1NotNull"/>
+<lastChild obj="entRef2" var="entRefChild2" interface="Node"/>
+<assertNotNull actual="entRefChild2" id="entRefChild2NotNull"/>
+<compareDocumentPosition var="entRefChild1Position" obj="entRefChild1" other="entRefChild2"/>
+<assertEquals actual="entRefChild1Position" expected="4" id="nodecomparedocumentpositionFollowing29" ignoreCase="false"/>
+<compareDocumentPosition var="entRefChild2Position" obj="entRefChild2" other="entRefChild1"/>
+<assertEquals actual="entRefChild2Position" expected="2" id="nodecomparedocumentpositionPRECEDING29" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition30.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition30.xml
new file mode 100644
index 0000000..205a035
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition30.xml
@@ -0,0 +1,44 @@
+<?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="nodecomparedocumentposition30">
+<metadata>
+<title>nodecomparedocumentposition30</title>
+<creator>IBM</creator>
+<description>
+ Using compareTreePosition check if comparedocumentposition invoked on the first name with
+ the first position node as a parameter returns FOLLOWING.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-03-03</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nameList" type="NodeList"/>
+<var name="positionList" type="NodeList"/>
+<var name="strong" type="Element"/>
+<var name="code" type="Element"/>
+<var name="namePosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="nameList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="strong" obj="nameList" index="0" interface="NodeList"/>
+<getElementsByTagName var="positionList" obj="doc" tagname='"code"' interface="Document"/>
+<item var="code" obj="positionList" index="0" interface="NodeList"/>
+<compareDocumentPosition var="namePosition" obj="code" other="strong"/>
+<assertEquals actual="namePosition" expected="2" id="nodecomparedocumentpositionFollowing30" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition31.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition31.xml
new file mode 100644
index 0000000..4df4149
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition31.xml
@@ -0,0 +1,51 @@
+<?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="nodecomparedocumentposition31">
+<metadata>
+<title>nodecomparedocumentposition31</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check if invoking the method on the first name node with
+ a new node appended to the second position node as a parameter is FOLLOWING, and is PRECEDING vice versa
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2002-06-10</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nameList" type="NodeList"/>
+<var name="positionList" type="NodeList"/>
+<var name="strong" type="Element"/>
+<var name="code" type="Element"/>
+<var name="newElem" type="Element"/>
+<var name="namePosition" type="int"/>
+<var name="elemPosition" type="int"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="nameList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="strong" obj="nameList" index="0" interface="NodeList"/>
+<getElementsByTagName var="positionList" obj="doc" tagname='"code"' interface="Document"/>
+<item var="code" obj="positionList" index="1" interface="NodeList"/>
+<createElementNS var="newElem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"br"'/>
+<appendChild obj="code" var="appendedChild" newChild="newElem"/>
+<compareDocumentPosition var="namePosition" obj="strong" other="newElem"/>
+<assertEquals actual="namePosition" expected="4" id="nodecomparedocumentpositionFollowing31" ignoreCase="false"/>
+<compareDocumentPosition var="elemPosition" obj="newElem" other="strong"/>
+<assertEquals actual="elemPosition" expected="2" id="nodecomparedocumentpositionPRECEDING31" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition32.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition32.xml
new file mode 100644
index 0000000..bfa25db
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition32.xml
@@ -0,0 +1,46 @@
+<?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="nodecomparedocumentposition32">
+<metadata>
+<title>nodecomparedocumentposition32</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check if the document position returned by comparing the first name with
+ a first position node of another document reference and adopted by the first as a parameter is FOLLOWING.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="nameList" type="NodeList"/>
+<var name="positionList" type="NodeList"/>
+<var name="strong" type="Element"/>
+<var name="code" type="Element"/>
+<var name="documentPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<assign var="doc2" value="doc"/>
+<getElementsByTagName var="nameList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="strong" obj="nameList" index="0" interface="NodeList"/>
+<getElementsByTagName var="positionList" obj="doc2" tagname='"code"' interface="Document"/>
+<item var="code" obj="positionList" index="0" interface="NodeList"/>
+<compareDocumentPosition var="documentPosition" obj="strong" other="code"/>
+<assertEquals actual="documentPosition" expected="4" id="nodecomparedocumentpositionFollowing32" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition33.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition33.xml
new file mode 100644
index 0000000..77b4ab3
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition33.xml
@@ -0,0 +1,63 @@
+<?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="nodecomparedocumentposition33">
+<metadata>
+<title>nodecomparedocumentposition33</title>
+<creator>IBM</creator>
+<description>
+ Create a new Element node, add a new atttribute node to it. Compare the position
+ of the Element and the Document. This should return disconnected, implementation specific, and that
+ the order of these two nodes is preserved.
+ Also compare the position of the Element node with respect to the Attr node and this should
+ be PRECEDING and contains, and the Attr node follows and is contained by the Element node
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="position1" type="int"/>
+<var name="position2" type="int"/>
+<var name="position3" type="int"/>
+<var name="position4" type="int"/>
+<var name="position5" type="int"/>
+<var name="replacedAttr" type="Attr"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"br"'/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<setAttributeNodeNS obj="elem" var="replacedAttr" newAttr="attr"/>
+
+<compareDocumentPosition var="position4" obj="elem" other="attr"/>
+<assertEquals actual="position4" expected="20" id="nodecomparedocumentposition3FollowingisContained33" ignoreCase="false"/>
+<compareDocumentPosition var="position5" obj="attr" other="elem"/>
+<assertEquals actual="position5" expected="10" id="nodecomparedocumentposition4ContainsPRECEDING33" ignoreCase="false"/>
+
+<compareDocumentPosition var="position1" obj="doc" other="elem"/>
+<!-- bitmask blocks out preceding and following bits -->
+<assertEquals bitmask="57" actual="position1" expected="33" id="isImplSpecificDisconnected1" ignoreCase="false"/>
+<compareDocumentPosition var="position2" obj="elem" other="doc"/>
+<assertNotEquals bitmask="2" actual="position2" expected="position1" id="notBothPreceding" ignoreCase="false"/>
+<assertNotEquals bitmask="4" actual="position2" expected="position1" id="notBothFollowing" ignoreCase="false"/>
+<assertEquals bitmask="57" actual="position2" expected="33" id="isImplSpecificDisconnected2" ignoreCase="false"/>
+<!-- returned value should be consistent between invocations -->
+<compareDocumentPosition var="position3" obj="doc" other="elem"/>
+<assertEquals actual="position3" expected="position1" id="isConsistent" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition34.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition34.xml
new file mode 100644
index 0000000..39db666
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition34.xml
@@ -0,0 +1,52 @@
+<?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="nodecomparedocumentposition34">
+<metadata>
+<title>nodecomparedocumentposition34</title>
+<creator>IBM</creator>
+<description>
+ Create a new Element node, add new Text, Element and Processing Instruction nodes to it.
+ Using compareDocumentPosition, compare the position of the Element with respect to the Text
+ and the Text with respect to the Processing Instruction.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemMain" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="elementToTxtPosition" type="int"/>
+<var name="txtToPiPosition" type="int"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="elemMain" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"p"'/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"br"'/>
+<createTextNode var="txt" obj="doc" data='"TEXT"'/>
+<createProcessingInstruction var="pi" obj="doc" data='"PID"' target='"PIT"'/>
+<appendChild obj="elemMain" var="appendedChild" newChild="txt"/>
+<appendChild obj="elemMain" var="appendedChild" newChild="elem"/>
+<appendChild obj="elemMain" var="appendedChild" newChild="pi"/>
+<compareDocumentPosition var="elementToTxtPosition" obj="txt" other="elem"/>
+<assertEquals actual="elementToTxtPosition" expected="4" id="nodecomparedocumentpositionFollowing34" ignoreCase="false"/>
+<compareDocumentPosition var="txtToPiPosition" obj="pi" other="txt"/>
+<assertEquals actual="txtToPiPosition" expected="2" id="nodecomparedocumentpositionPRECEDING34" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition35.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition35.xml
new file mode 100644
index 0000000..f9872ef
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition35.xml
@@ -0,0 +1,45 @@
+<?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="nodecomparedocumentposition35">
+<metadata>
+<title>nodecomparedocumentposition35</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check if the Element contains and precedes its default attribute
+ and that the attribute follows and iscontained by the Element
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elementPosition" type="int"/>
+<var name="attrPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="elem" name='"dir"'/>
+<compareDocumentPosition var="elementPosition" obj="elem" other="attr"/>
+<assertEquals actual="elementPosition" expected="20" id="nodecomparedocumentpositionIsContainedFollowing35" ignoreCase="false"/>
+<compareDocumentPosition var="attrPosition" obj="attr" other="elem"/>
+<assertEquals actual="attrPosition" expected="10" id="nodecomparedocumentpositionPRECEDINGContains35" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition36.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition36.xml
new file mode 100644
index 0000000..7a1b3f7
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition36.xml
@@ -0,0 +1,50 @@
+<?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="nodecomparedocumentposition36">
+<metadata>
+<title>nodecomparedocumentposition36</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check if the document position of an Attribute compared with
+ the element that follows its parent as a parameter is FOLLOWING, and is PRECEDING
+ vice versa.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="elemListFollows" type="NodeList"/>
+<var name="elemFollows" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="attrPosition" type="int"/>
+<var name="elemFollowsPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="elem" name='"dir"'/>
+<getElementsByTagName var="elemListFollows" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elemFollows" obj="elemListFollows" index="3" interface="NodeList"/>
+<compareDocumentPosition var="attrPosition" obj="attr" other="elemFollows"/>
+<assertEquals actual="attrPosition" expected="4" id="nodecomparedocumentpositionFollowing36" ignoreCase="false"/>
+<compareDocumentPosition var="elemFollowsPosition" obj="elemFollows" other="attr"/>
+<assertEquals actual="elemFollowsPosition" expected="2" id="nodecomparedocumentpositionPRECEEDING36" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition37.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition37.xml
new file mode 100644
index 0000000..9c0a33a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition37.xml
@@ -0,0 +1,49 @@
+<?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="nodecomparedocumentposition37">
+<metadata>
+<title>nodecomparedocumentposition37</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check if the document position of the first class attribute
+ of the element acronym when compared with the elements text content as a parameter is
+ is FOLLOWING, and is PRECEDING vice versa.
+</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-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="attr" type="Attr"/>
+<var name="attrPosition" type="int"/>
+<var name="txtPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="elem" name='"class"'/>
+<firstChild var="txt" obj="elem" interface="Node"/>
+<compareDocumentPosition var="attrPosition" obj="attr" other="txt"/>
+<assertEquals actual="attrPosition" expected="4" id="nodecomparetreepositionFollowing37" ignoreCase="false"/>
+<compareDocumentPosition var="txtPosition" obj="txt" other="attr"/>
+<assertEquals actual="txtPosition" expected="2" id="nodecomparetreepositionPRECEDING37" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition38.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition38.xml
new file mode 100644
index 0000000..84a9ee6
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition38.xml
@@ -0,0 +1,48 @@
+<?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="nodecomparedocumentposition38">
+<metadata>
+<title>nodecomparedocumentposition38</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check if the class's attribute contains and precedes it's content,
+ and the content node is contained and follows the attribute node.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="attr" type="Attr"/>
+<var name="attrPosition" type="int"/>
+<var name="attrChildPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="elem" name='"class"'/>
+<firstChild var="txt" obj="attr" interface="Node"/>
+<compareDocumentPosition var="attrPosition" obj="attr" other="txt"/>
+<assertEquals actual="attrPosition" expected="20" id="nodecomparedocumentpositionIsContainsFollowing38" ignoreCase="false"/>
+<compareDocumentPosition var="attrChildPosition" obj="txt" other="attr"/>
+<assertEquals actual="attrChildPosition" expected="10" id="nodecomparedocumentpositionContainsPRECEDING38" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition39.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition39.xml
new file mode 100644
index 0000000..ea05c5a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition39.xml
@@ -0,0 +1,51 @@
+<?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="nodecomparedocumentposition39">
+<metadata>
+<title>nodecomparedocumentposition39</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check if the document position of the class's attribute
+ when compared with the local1 attribute node is implementation_specific.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="attr1" type="Attr"/>
+<var name="attr2" type="Attr"/>
+<var name="attrPosition" type="int"/>
+<var name="swappedPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr1" obj="elem" name='"class"'/>
+<getAttributeNode var="attr2" obj="elem" name='"xsi:noNamespaceSchemaLocation"'/>
+<compareDocumentPosition var="attrPosition" obj="attr1" other="attr2"/>
+<assertEquals actual="attrPosition" expected="32" bitmask="32" id="isImplementationSpecific" ignoreCase="false"/>
+<assertEquals actual="attrPosition" expected="0" bitmask="25" id="otherBitsZero" ignoreCase="false"/>
+<assertNotEquals actual="attrPosition" expected="0" bitmask="6" id="eitherFollowingOrPreceding" ignoreCase="false"/>
+<compareDocumentPosition var="swappedPosition" obj="attr2" other="attr1"/>
+<assertNotEquals actual="attrPosition" expected="swappedPosition" bitmask="2" id="onlyOnePreceding" ignoreCase="false"/>
+<assertNotEquals actual="attrPosition" expected="swappedPosition" bitmask="4" id="onlyOneFollowing" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodecomparedocumentposition40.xml b/test/testcases/tests/level3/core/nodecomparedocumentposition40.xml
new file mode 100644
index 0000000..fcc48bb
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodecomparedocumentposition40.xml
@@ -0,0 +1,52 @@
+<?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="nodecomparedocumentposition40">
+<metadata>
+<title>nodecomparedocumentposition40</title>
+<creator>IBM</creator>
+<description>
+ Using compareDocumentPosition to check if the document position of the class's attribute
+ when compared with a new attribute node is implementation_specific
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-21</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-compareDocumentPosition"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="attr1" type="Attr"/>
+<var name="attr2" type="Attr"/>
+<var name="attrPosition" type="int"/>
+<var name="swappedPosition" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr1" obj="elem" name='"class"'/>
+<setAttributeNS obj="elem" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"' value='"FR-fr"'/>
+<getAttributeNode var="attr2" obj="elem" name='"xml:lang"'/>
+<compareDocumentPosition var="attrPosition" obj="attr1" other="attr2"/>
+<assertEquals actual="attrPosition" expected="32" bitmask="32" id="isImplementationSpecific" ignoreCase="false"/>
+<assertEquals actual="attrPosition" expected="0" bitmask="25" id="otherBitsZero" ignoreCase="false"/>
+<assertNotEquals actual="attrPosition" expected="0" bitmask="6" id="eitherFollowingOrPreceding" ignoreCase="false"/>
+<compareDocumentPosition var="swappedPosition" obj="attr2" other="attr1"/>
+<assertNotEquals actual="attrPosition" expected="swappedPosition" bitmask="2" id="onlyOnePreceding" ignoreCase="false"/>
+<assertNotEquals actual="attrPosition" expected="swappedPosition" bitmask="4" id="onlyOneFollowing" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri01.xml b/test/testcases/tests/level3/core/nodegetbaseuri01.xml
new file mode 100644
index 0000000..18eba09
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri01.xml
@@ -0,0 +1,40 @@
+<?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="nodegetbaseuri01">
+<metadata>
+<title>nodegetbaseuri01</title>
+<creator>IBM</creator>
+<description>
+Call Node.getBaseURI() on a test document. Should be not-null and same as Document.getDocumentURI().
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Document"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="baseURI" type="DOMString"/>
+<var name="documentURI" type="DOMString"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<baseURI var="baseURI" obj="doc" interface="Node"/>
+<assertURIEquals actual="baseURI" name='"barfoo"' isAbsolute="true" id="notNull"/>
+<documentURI var="documentURI" obj="doc"/>
+<assertEquals actual="baseURI" expected="documentURI" ignoreCase="false" id="sameAsDocumentURI"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri02.xml b/test/testcases/tests/level3/core/nodegetbaseuri02.xml
new file mode 100644
index 0000000..0131443
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri02.xml
@@ -0,0 +1,52 @@
+<?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="nodegetbaseuri02">
+<metadata>
+<title>nodegetbaseuri02</title>
+<creator>IBM</creator>
+<description>
+ Using getBaseURI check if the baseURI attribute of a new Document node is null
+ and if affected by changes in Document.documentURI.
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Document"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="baseURI" type="DOMString"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="docElem" type="Element"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<load var="doc" href="barfoo" 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"/>
+<baseURI var="baseURI" obj="newDoc" interface="Node"/>
+<assertNull actual="baseURI" id="baseURIIsNull"/>
+<documentURI obj="newDoc" value='"http://www.example.com/sample.xml"'/>
+<baseURI var="baseURI" obj="newDoc" interface="Node"/>
+<assertEquals expected='"http://www.example.com/sample.xml"' actual="baseURI" ignoreCase="true" id="baseURISameAsDocURI"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri03.xml b/test/testcases/tests/level3/core/nodegetbaseuri03.xml
new file mode 100644
index 0000000..a102973
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri03.xml
@@ -0,0 +1,39 @@
+<?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="nodegetbaseuri03">
+<metadata>
+<title>nodegetbaseuri03</title>
+<creator>IBM</creator>
+<description>
+Check that Node.baseURI is null for a DocumentType as defined in the Infoset Mapping (Appendix C).
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2DocumentType"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="baseURI" type="DOMString"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<baseURI var="baseURI" obj="docType" interface="Node"/>
+<assertNull actual="baseURI" id="nodegetbaseuri03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri04.xml b/test/testcases/tests/level3/core/nodegetbaseuri04.xml
new file mode 100644
index 0000000..b0dbbfc
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri04.xml
@@ -0,0 +1,42 @@
+<?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="nodegetbaseuri04">
+<metadata>
+<title>nodegetbaseuri04</title>
+<creator>IBM</creator>
+<description>
+Node.baseURI for a document element without an xml:base attribute should be same as Document.documentURI.
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Document"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="baseURI" type="DOMString"/>
+<var name="documentURI" type="DOMString"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<baseURI var="baseURI" obj="docElem" interface="Node"/>
+<assertURIEquals actual="baseURI" isAbsolute="true" name='"barfoo"' id="baseURI"/>
+<documentURI var="documentURI" obj="doc"/>
+<assertEquals actual="baseURI" expected="documentURI" ignoreCase="false" id="baseURIEqualsDocURI"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri05.xml b/test/testcases/tests/level3/core/nodegetbaseuri05.xml
new file mode 100644
index 0000000..5941bdf
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri05.xml
@@ -0,0 +1,39 @@
+<?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="nodegetbaseuri05">
+<metadata>
+<title>nodegetbaseuri05</title>
+<creator>IBM</creator>
+<description>
+ Using getBaseURI check if the baseURI attribute of this DocumentElement is http://www.w3.org/DOM/L3Test.
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Element"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="baseURI" type="DOMString"/>
+<load var="doc" href="barfoo_base" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<baseURI var="baseURI" obj="docElem" interface="Node"/>
+<assertEquals actual="baseURI" expected='"http://www.w3.org/DOM/L3Test"' id="nodegetbaseuri05" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri06.xml b/test/testcases/tests/level3/core/nodegetbaseuri06.xml
new file mode 100644
index 0000000..b3a8ce9
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri06.xml
@@ -0,0 +1,41 @@
+<?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="nodegetbaseuri06">
+<metadata>
+<title>nodegetbaseuri06</title>
+<creator>IBM</creator>
+<description>
+ TODO Clarification: Create a new Element in this document. Since its baseURI should be the baseURI of
+ the Document Entity which I assume is not null, using getBaseURI check if the baseURI
+ attribute of this Element node is not null.???
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Element"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newElement" type="Element"/>
+<var name="baseURI" type="DOMString"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<createElementNS var="newElement" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"br"'/>
+<baseURI var="baseURI" obj="doc" interface="Node"/>
+<assertNotNull actual="baseURI" id="nodegetbaseuri06"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri07.xml b/test/testcases/tests/level3/core/nodegetbaseuri07.xml
new file mode 100644
index 0000000..c5814e4
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri07.xml
@@ -0,0 +1,50 @@
+<?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="nodegetbaseuri07">
+<metadata>
+<title>nodegetbaseuri07</title>
+<creator>IBM</creator>
+<description>
+ Append a created element to a document and check that its baseURI
+ is inherited from its parent.
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Element"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newElement" type="Element"/>
+<var name="baseURI" type="DOMString"/>
+<var name="appended" type="Node"/>
+<var name="bodyList" type="NodeList"/>
+<var name="bodyElem" type="Element"/>
+<var name="htmlNS" type="DOMString" value='"http://www.w3.org/1999/xhtml"'/>
+<load var="doc" href="barfoo_base" willBeModified="true"/>
+<getElementsByTagName var="bodyList" obj="doc"
+ tagname='"body"' interface="Document"/>
+<item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+<createElementNS var="newElement" obj="doc" namespaceURI='htmlNS' qualifiedName='"meta"'/>
+<setAttribute obj="newElement" name='"content"' value='"text/xml"'/>
+<appendChild obj="bodyElem" var="appended" newChild="newElement"/>
+<baseURI var="baseURI" obj="newElement" interface="Node"/>
+<assertEquals actual="baseURI" expected='"http://www.w3.org/DOM/EmployeeID"' id="nodegetbaseuri07" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri09.xml b/test/testcases/tests/level3/core/nodegetbaseuri09.xml
new file mode 100644
index 0000000..4dc3d36
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri09.xml
@@ -0,0 +1,41 @@
+<?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="nodegetbaseuri09">
+<metadata>
+<title>nodegetbaseuri09</title>
+<creator>IBM</creator>
+<description>
+Get the baseURI value on an element with an explicit xml:base attribute.
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Element"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="bodyElem" type="Element"/>
+<var name="bodyList" type="NodeList"/>
+<var name="baseURI" type="DOMString"/>
+<load var="doc" href="barfoo_base" willBeModified="false"/>
+<getElementsByTagName var="bodyList" obj="doc" tagname='"body"' interface="Document"/>
+<item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+<baseURI var="baseURI" obj="bodyElem" interface="Node"/>
+<assertEquals actual="baseURI" expected='"http://www.w3.org/DOM/EmployeeID"' id="nodegetbaseuri09" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri10.xml b/test/testcases/tests/level3/core/nodegetbaseuri10.xml
new file mode 100644
index 0000000..b4f0344
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri10.xml
@@ -0,0 +1,45 @@
+<?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="nodegetbaseuri10">
+<metadata>
+<title>nodegetbaseuri10</title>
+<creator>IBM</creator>
+<description>
+ Append as a child of this documentElement a new Processing Instruction. Using getBaseURI
+ check if the baseURI attribute of the new Processing Instruction node is "'http://www.w3.org/DOM/L3Test".
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2ProcessingInstruction"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="newPI" type="ProcessingInstruction"/>
+<var name="baseURI" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="barfoo_base" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createProcessingInstruction var="newPI" obj="doc" target='"TARGET"' data='"DATA"'/>
+<appendChild obj="docElem" var="appendedChild" newChild="newPI"/>
+<baseURI var="baseURI" obj="newPI" interface="Node"/>
+<assertEquals actual="baseURI" expected='"http://www.w3.org/DOM/L3Test"' id="nodegetbaseuri10" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri11.xml b/test/testcases/tests/level3/core/nodegetbaseuri11.xml
new file mode 100644
index 0000000..4845eb6
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri11.xml
@@ -0,0 +1,53 @@
+<?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="nodegetbaseuri11">
+<metadata>
+<title>nodegetbaseuri11</title>
+<creator>IBM</creator>
+<description>
+ Import a new Processing Instruction of a new Document after the document element. Using getBaseURI
+ check if the baseURI attribute of the new Processing Instruction node is the same as Document.documentURI.
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2ProcessingInstruction"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newPI" type="ProcessingInstruction"/>
+<var name="imported" type="ProcessingInstruction"/>
+<var name="baseURI" type="DOMString"/>
+<var name="docURI" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<load var="doc" href="barfoo_base" willBeModified="true"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"html"' doctype="nullDocType"/>
+<createProcessingInstruction var="newPI" obj="newDoc" target='"TARGET"' data='"DATA"'/>
+<importNode var="imported" obj="doc" importedNode="newPI" deep="true"/>
+<appendChild obj="doc" var="appendedChild" newChild="imported"/>
+<baseURI var="baseURI" obj="imported" interface="Node"/>
+<assertURIEquals actual="baseURI" isAbsolute="true" name='"barfoo_base"' id="equalsBarfooBase"/>
+<documentURI var="docURI" obj="doc"/>
+<assertEquals actual="baseURI" expected="docURI" ignoreCase="false" id="equalsDocURI"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri12.xml b/test/testcases/tests/level3/core/nodegetbaseuri12.xml
new file mode 100644
index 0000000..fa5b2cb
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri12.xml
@@ -0,0 +1,45 @@
+<?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="nodegetbaseuri12">
+<metadata>
+<title>nodegetbaseuri12</title>
+<creator>IBM</creator>
+<description>
+ Using getBaseURI verify if the entity epsilon is absolute
+ and matches the URL of the document entity.
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Entity"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="baseURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"epsilon"'/>
+<baseURI var="baseURI" obj="entity" interface="Node"/>
+<assertURIEquals actual="baseURI" id="entityBase" isAbsolute="true" name='"hc_staff"'/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri13.xml b/test/testcases/tests/level3/core/nodegetbaseuri13.xml
new file mode 100644
index 0000000..029d6e5
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri13.xml
@@ -0,0 +1,48 @@
+<?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="nodegetbaseuri13">
+<metadata>
+<title>nodegetbaseuri13</title>
+<creator>IBM</creator>
+<description>
+ Using getBaseURI verify if the notation defined in an internal subset
+ is the base URI of the document.
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Notation"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="baseURI" type="DOMString"/>
+<var name="docURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<notations var="notationsMap" obj="docType"/>
+<getNamedItem var="notation" obj="notationsMap" name='"notation1"'/>
+<baseURI var="baseURI" obj="notation" interface="Node"/>
+<documentURI var="docURI" obj="doc"/>
+<assertEquals actual="baseURI" expected="docURI" ignoreCase="false" id="sameAsDocURI"/>
+<assertURIEquals actual="baseURI" id="entityBase" isAbsolute="true" name='"hc_staff"'/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri14.xml b/test/testcases/tests/level3/core/nodegetbaseuri14.xml
new file mode 100644
index 0000000..928f11e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri14.xml
@@ -0,0 +1,57 @@
+<?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="nodegetbaseuri14">
+<metadata>
+<title>nodegetbaseuri14</title>
+<creator>IBM</creator>
+<description>
+ Using getBaseURI verify if the imported notation notation2 is null.
+</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-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Notation"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="docElemNS" type="DOMString"/>
+<var name="docElemName" type="DOMString"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="notationImported" type="Notation"/>
+<var name="baseURI" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="docElemNS" obj="docElem" interface="Node"/>
+<localName var="docElemName" obj="docElem"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='docElemNS' qualifiedName='docElemName' doctype="nullDocType"/>
+<doctype var="docType" obj="doc"/>
+<notations var="notationsMap" obj="docType"/>
+<getNamedItem var="notation" obj="notationsMap" name='"notation2"'/>
+<importNode var="notationImported" obj="newDoc" importedNode="notation" deep="true"/>
+<baseURI var="baseURI" obj="notationImported" interface="Node"/>
+<assertNull actual="baseURI" id="nodegetbaseuri14"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri15.xml b/test/testcases/tests/level3/core/nodegetbaseuri15.xml
new file mode 100644
index 0000000..999ab50
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri15.xml
@@ -0,0 +1,45 @@
+<?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="nodegetbaseuri15">
+<metadata>
+<title>nodegetbaseuri15</title>
+<creator>Curt Arnold</creator>
+<description>
+Node.getBaseURI for an Attr is null.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2004-01-07</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Attr"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="baseURI" type="DOMString"/>
+<var name="attrNode" type="Attr"/>
+<var name="bodyList" type="NodeList"/>
+<var name="bodyElem" type="Element"/>
+<load var="doc" href="barfoo_base" willBeModified="true"/>
+<getElementsByTagName var="bodyList" obj="doc"
+ tagname='"body"' interface="Document"/>
+<item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+<getAttributeNode var="attrNode" obj="bodyElem" name='"id"'/>
+<baseURI var="baseURI" obj="attrNode" interface="Node"/>
+<assertNull actual="baseURI" id="baseURI"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri16.xml b/test/testcases/tests/level3/core/nodegetbaseuri16.xml
new file mode 100644
index 0000000..106fc6c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri16.xml
@@ -0,0 +1,47 @@
+<?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="nodegetbaseuri16">
+<metadata>
+<title>nodegetbaseuri16</title>
+<creator>Curt Arnold</creator>
+<description>
+Node.getBaseURI for an EntityReference to should be the baseURI where the entity declaration occurs.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2004-01-07</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2EntityReference"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="baseURI" type="DOMString"/>
+<var name="entRef" type="EntityReference"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<load var="doc" href="external_barfoo" willBeModified="false"/>
+<getElementsByTagName var="pList" obj="doc"
+ tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- the last child should be a entity reference to ent1 ref -->
+<lastChild var="entRef" obj="pElem" interface="Node"/>
+<baseURI var="baseURI" obj="entRef" interface="Node"/>
+<assertURIEquals actual="baseURI" isAbsolute="true" name='"external_barfoo"' id="baseURI"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri17.xml b/test/testcases/tests/level3/core/nodegetbaseuri17.xml
new file mode 100644
index 0000000..fff0b4e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri17.xml
@@ -0,0 +1,45 @@
+<?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="nodegetbaseuri17">
+<metadata>
+<title>nodegetbaseuri17</title>
+<creator>Curt Arnold</creator>
+<description>
+Node.getBaseURI for an text node is null.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2004-01-07</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Text"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="baseURI" type="DOMString"/>
+<var name="textNode" type="Text"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<load var="doc" href="barfoo_base" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc"
+ tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<firstChild var="textNode" obj="pElem" interface="Node"/>
+<baseURI var="baseURI" obj="textNode" interface="Node"/>
+<assertNull actual="baseURI" id="baseURI"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri18.xml b/test/testcases/tests/level3/core/nodegetbaseuri18.xml
new file mode 100644
index 0000000..97b7e45
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri18.xml
@@ -0,0 +1,45 @@
+<?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="nodegetbaseuri18">
+<metadata>
+<title>nodegetbaseuri18</title>
+<creator>Curt Arnold</creator>
+<description>
+Node.getBaseURI for an comment node is null.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2004-01-07</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2Comment"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="baseURI" type="DOMString"/>
+<var name="comment" type="Comment"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<load var="doc" href="barfoo_base" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc"
+ tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<nextSibling var="comment" obj="pElem" interface="Node"/>
+<baseURI var="baseURI" obj="comment" interface="Node"/>
+<assertNull actual="baseURI" id="baseURI"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri19.xml b/test/testcases/tests/level3/core/nodegetbaseuri19.xml
new file mode 100644
index 0000000..efb2dd9
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri19.xml
@@ -0,0 +1,60 @@
+<?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="nodegetbaseuri19">
+<metadata>
+<title>nodegetbaseuri19</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks baseURI for a text node is null.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2004-01-07</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2DocumentType"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2EntityReference"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="baseURI" type="DOMString"/>
+<var name="entBaseURI" type="DOMString"/>
+<var name="entRef" type="EntityReference"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="textNode" type="Text"/>
+<load var="doc" href="external_barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc"
+ tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<assertNotNull actual="pElem" id="pElemNotNull"/>
+<if>
+ <implementationAttribute name="expandEntityReferences" value="true"/>
+ <firstChild var="textNode" obj="pElem" interface="Node"/>
+ <assertNotNull actual="textNode" id="expansionNotNull"/>
+ <else>
+ <lastChild var="entRef" obj="pElem" interface="Node"/>
+ <assertNotNull actual="entRef" id="entRefNotNull"/>
+ <firstChild var="textNode" obj="entRef" interface="Node"/>
+ <assertNotNull actual="textNode" id="entRefTextNotNull"/>
+ </else>
+</if>
+<baseURI var="baseURI" obj="textNode" interface="Node"/>
+<assertNull actual="baseURI" id="baseURI"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetbaseuri20.xml b/test/testcases/tests/level3/core/nodegetbaseuri20.xml
new file mode 100644
index 0000000..8f05a95
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetbaseuri20.xml
@@ -0,0 +1,46 @@
+<?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="nodegetbaseuri20">
+<metadata>
+<title>nodegetbaseuri20</title>
+<creator>Curt Arnold</creator>
+<description>
+baseURI for an element from an entity reference should be the URI of the
+external entity if there is now xml:base attribute.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2004-01-07</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-baseURI"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=419"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/infoset-mapping#Infoset2EntityReference"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="baseURI" type="DOMString"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<load var="doc" href="external_barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc"
+ tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="2" interface="NodeList"/>
+<assertNotNull actual="pElem" id="pElemNotNull"/>
+<baseURI var="baseURI" obj="pElem" interface="Node"/>
+<assertURIEquals actual="baseURI" isAbsolute="true" name='"external_widget"' id="equalsExternalBarFoo"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/nodegetfeature01.xml b/test/testcases/tests/level3/core/nodegetfeature01.xml
new file mode 100644
index 0000000..8096b7c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature01.xml
@@ -0,0 +1,79 @@
+<?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="nodegetfeature01">
+<metadata>
+<title>nodegetfeature01</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on Document.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<assign var="node" value="doc"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="doc" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="doc" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="doc" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="doc" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="doc" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="doc" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="doc" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="doc" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="doc" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature02.xml b/test/testcases/tests/level3/core/nodegetfeature02.xml
new file mode 100644
index 0000000..1f1a0a4
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature02.xml
@@ -0,0 +1,79 @@
+<?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="nodegetfeature02">
+<metadata>
+<title>nodegetfeature02</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on DocumentFragment.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentFragment var="node" obj="doc"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature03.xml b/test/testcases/tests/level3/core/nodegetfeature03.xml
new file mode 100644
index 0000000..f5051bc
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature03.xml
@@ -0,0 +1,79 @@
+<?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="nodegetfeature03">
+<metadata>
+<title>nodegetfeature03</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on DocumentType.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<doctype var="node" obj="doc"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature04.xml b/test/testcases/tests/level3/core/nodegetfeature04.xml
new file mode 100644
index 0000000..4a42cb2
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature04.xml
@@ -0,0 +1,79 @@
+<?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="nodegetfeature04">
+<metadata>
+<title>nodegetfeature04</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on EntityReference.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createEntityReference var="node" obj="doc" name='"ent1"'/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature05.xml b/test/testcases/tests/level3/core/nodegetfeature05.xml
new file mode 100644
index 0000000..98de868
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature05.xml
@@ -0,0 +1,79 @@
+<?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="nodegetfeature05">
+<metadata>
+<title>nodegetfeature05</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on Element.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<documentElement var="node" obj="doc"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature06.xml b/test/testcases/tests/level3/core/nodegetfeature06.xml
new file mode 100644
index 0000000..77c7035
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature06.xml
@@ -0,0 +1,79 @@
+<?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="nodegetfeature06">
+<metadata>
+<title>nodegetfeature06</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on non-namespace attribute.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createAttribute var="node" obj="doc" name='"title"'/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature07.xml b/test/testcases/tests/level3/core/nodegetfeature07.xml
new file mode 100644
index 0000000..93d4854
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature07.xml
@@ -0,0 +1,81 @@
+<?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="nodegetfeature07">
+<metadata>
+<title>nodegetfeature07</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on namespaced attribute.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createAttributeNS var="node" obj="doc"
+ namespaceURI='"http://www.w3.org/XML/1998/namespace"'
+ qualifiedName='"xml:lang"'/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature08.xml b/test/testcases/tests/level3/core/nodegetfeature08.xml
new file mode 100644
index 0000000..bc3e77b
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature08.xml
@@ -0,0 +1,81 @@
+<?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="nodegetfeature08">
+<metadata>
+<title>nodegetfeature08</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on ProcessingInstruction.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<hasFeature feature='"XML"'/>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createProcessingInstruction var="node" obj="doc" target='"test-pi"' data='"foo"'/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature09.xml b/test/testcases/tests/level3/core/nodegetfeature09.xml
new file mode 100644
index 0000000..8230ea7
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature09.xml
@@ -0,0 +1,80 @@
+<?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="nodegetfeature09">
+<metadata>
+<title>nodegetfeature09</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on Comment.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createComment var="node" obj="doc" data='"test comment"'/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature10.xml b/test/testcases/tests/level3/core/nodegetfeature10.xml
new file mode 100644
index 0000000..68ddd41
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature10.xml
@@ -0,0 +1,83 @@
+<?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="nodegetfeature10">
+<metadata>
+<title>nodegetfeature10</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on Text.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nodeList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<getElementsByTagName var="nodeList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="nodeList" index="0" interface="NodeList"/>
+<firstChild var="node" obj="elem" interface="Node"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature11.xml b/test/testcases/tests/level3/core/nodegetfeature11.xml
new file mode 100644
index 0000000..23e503a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature11.xml
@@ -0,0 +1,79 @@
+<?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="nodegetfeature11">
+<metadata>
+<title>nodegetfeature11</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on CDATASection.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createCDATASection var="node" obj="doc" data='"some text"'/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature12.xml b/test/testcases/tests/level3/core/nodegetfeature12.xml
new file mode 100644
index 0000000..4baafbd
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature12.xml
@@ -0,0 +1,83 @@
+<?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="nodegetfeature12">
+<metadata>
+<title>nodegetfeature12</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on Entity.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="doctype" type="DocumentType"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<doctype var="doctype" obj="doc"/>
+<entities var="entities" obj="doctype"/>
+<getNamedItem var="node" obj="entities" name='"ent1"'/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetfeature13.xml b/test/testcases/tests/level3/core/nodegetfeature13.xml
new file mode 100644
index 0000000..33a7537
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetfeature13.xml
@@ -0,0 +1,83 @@
+<?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="nodegetfeature13">
+<metadata>
+<title>nodegetfeature13</title>
+<creator>Curt Arnold</creator>
+<description>
+Check implementation of Node.getFeature on Notation.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-getFeature"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nullVersion" type="DOMString" isNull="true"/>
+<var name="featureImpl" type="Node"/>
+<var name="isSupported" type="boolean"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="doctype" type="DocumentType"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<doctype var="doctype" obj="doc"/>
+<notations var="notations" obj="doctype"/>
+<getNamedItem var="node" obj="notations" name='"notation1"'/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Core"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="coreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="cOrEUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"+cOrE"' version="nullVersion"/>
+<assertSame actual="featureImpl" expected="node" id="PlusCoreUnspecifiedVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"org.w3c.domts.bogus.feature"' version="nullVersion"/>
+<assertNull actual="featureImpl" id="unrecognizedFeature"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"2.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core20"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"cOrE"' version='"3.0"'/>
+<assertSame actual="featureImpl" expected="node" id="Core30"/>
+<!-- ask for some well-known feature,
+ can't say that they will be supported but they should not throw an exception -->
+<isSupported var="isSupported" obj="node" feature='"XML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="SVGUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="HTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"Events"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"Events"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="EventsUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"LS-Async"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"LS-Async"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="LSAsyncUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"XPath"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"XPath"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertSame actual="featureImpl" expected="node" id="XPathUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+HTML"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"HTML"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusHTMLUnspecified"/></if>
+<isSupported var="isSupported" obj="node" feature='"+SVG"' version="nullVersion"/>
+<getFeature interface="Node" var="featureImpl" obj="node" feature='"SVG"' version='nullVersion'/>
+<if><isTrue value="isSupported"/><assertNotNull actual="featureImpl" id="PlusSVGUnspecified"/></if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent01.xml b/test/testcases/tests/level3/core/nodegettextcontent01.xml
new file mode 100644
index 0000000..30d4fc7
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent01.xml
@@ -0,0 +1,37 @@
+<?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="nodegettextcontent01">
+<metadata>
+<title>nodegettextcontent01</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using getTextContent on this Document node check if the value returned is Null .
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<textContent var="textContent" obj="doc"/>
+<assertNull actual="textContent" id="nodegettextcontent01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent02.xml b/test/testcases/tests/level3/core/nodegettextcontent02.xml
new file mode 100644
index 0000000..e689fd5
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent02.xml
@@ -0,0 +1,48 @@
+<?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="nodegettextcontent02">
+<metadata>
+<title>nodegettextcontent02</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using getTextContent on a new Document node check if the value returned is Null .
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="textContent" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="rootName" type="DOMString"/>
+<var name="rootNS" 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"/>
+<textContent var="textContent" obj="newDoc"/>
+<assertNull actual="textContent" id="nodegettextcontent02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent03.xml b/test/testcases/tests/level3/core/nodegettextcontent03.xml
new file mode 100644
index 0000000..43d87aa
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent03.xml
@@ -0,0 +1,40 @@
+<?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="nodegettextcontent03">
+<metadata>
+<title>nodegettextcontent03</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using getTextContent on this DocumentType node check if the value returned is Null .
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="newDoc" type="Document"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<textContent var="textContent" obj="docType"/>
+<assertNull actual="textContent" id="nodegettextcontent03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent04.xml b/test/testcases/tests/level3/core/nodegettextcontent04.xml
new file mode 100644
index 0000000..1ab67c2
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent04.xml
@@ -0,0 +1,47 @@
+<?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="nodegettextcontent04">
+<metadata>
+<title>nodegettextcontent04</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using getTextContent on a new DocumentType node check if the value returned is Null.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="textContent" type="DOMString"/>
+<var name="nullPubId" type="DOMString" isNull="true"/>
+<var name="nullSysId" type="DOMString" isNull="true"/>
+<var name="oldDocType" type="DocumentType"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="oldDocType" obj="doc"/>
+<name var="rootName" obj="oldDocType" interface="DocumentType"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="docType" obj="domImpl" qualifiedName="rootName" publicId="nullPubId" systemId="nullSysId"/>
+<textContent var="textContent" obj="docType"/>
+<assertNull actual="textContent" id="nodegettextcontent04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent05.xml b/test/testcases/tests/level3/core/nodegettextcontent05.xml
new file mode 100644
index 0000000..9034665
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent05.xml
@@ -0,0 +1,43 @@
+<?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="nodegettextcontent05">
+<metadata>
+<title>nodegettextcontent05</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using getTextContent on this DocumentType node check if the value returned is Null .
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="notation1" type="Notation"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<notations var="notationsMap" obj="docType"/>
+<getNamedItem var="notation1" obj="notationsMap" name='"notation1"'/>
+<textContent var="textContent" obj="docType"/>
+<assertNull actual="textContent" id="nodegettextcontent05"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent06.xml b/test/testcases/tests/level3/core/nodegettextcontent06.xml
new file mode 100644
index 0000000..44852bd
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent06.xml
@@ -0,0 +1,44 @@
+<?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="nodegettextcontent06">
+<metadata>
+<title>nodegettextcontent06</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke the method getTextContent on a default Attr node and check if the value returned
+ is the attributes Value.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="elem" name='"dir"'/>
+<textContent var="textContent" obj="attr"/>
+<assertEquals actual="textContent" expected='"rtl"' id="nodegettextcontent06" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent07.xml b/test/testcases/tests/level3/core/nodegettextcontent07.xml
new file mode 100644
index 0000000..c70f5b5
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent07.xml
@@ -0,0 +1,43 @@
+<?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="nodegettextcontent07">
+<metadata>
+<title>nodegettextcontent07</title>
+<creator>IBM</creator>
+<description>
+ Invoke the method getTextContent on a new Attr node and check if the value returned
+ is the attributes Value.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<setAttributeNS obj="elem" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"' value='"en-US"'/>
+<getAttributeNodeNS var="attr" obj="elem" namespaceURI='"http://www.w3.org/XML/1998/namespace"' localName='"lang"'/>
+<textContent var="textContent" obj="attr"/>
+<assertEquals actual="textContent" expected='"en-US"' id="nodegettextcontent07" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent08.xml b/test/testcases/tests/level3/core/nodegettextcontent08.xml
new file mode 100644
index 0000000..cf2fcd4
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent08.xml
@@ -0,0 +1,45 @@
+<?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="nodegettextcontent08">
+<metadata>
+<title>nodegettextcontent08</title>
+<creator>IBM</creator>
+<description>
+ Invoke the method getTextContent on a new Attr node and check if the value returned
+ is the attributes Value.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="att" type="Attr"/>
+<var name="attr" type="Attr"/>
+<var name="replacedAttr" type="Attr"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"p"'/>
+<createAttributeNS var="att" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<setAttributeNodeNS obj="elem" var="replacedAttr" newAttr="att"/>
+<getAttributeNodeNS var="attr" obj="elem" namespaceURI='"http://www.w3.org/XML/1998/namespace"' localName='"lang"'/>
+<textContent var="textContent" obj="attr"/>
+<assertEquals actual="textContent" expected='""' id="nodegettextcontent08" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent09.xml b/test/testcases/tests/level3/core/nodegettextcontent09.xml
new file mode 100644
index 0000000..6eb9ca8
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent09.xml
@@ -0,0 +1,43 @@
+<?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="nodegettextcontent09">
+<metadata>
+<title>nodegettextcontent09</title>
+<creator>IBM</creator>
+<description>
+ Invoke the method getTextContent on a new Text node and check if the value returned
+ is the text content.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="textContent" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"p"'/>
+<createTextNode var="txt" obj="doc" data='"Replacement Text"' />
+<appendChild obj="elem" var="appendedChild" newChild="txt"/>
+<textContent var="textContent" obj="txt"/>
+<assertEquals actual="textContent" expected='"Replacement Text"' id="nodegettextcontent09" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent10.xml b/test/testcases/tests/level3/core/nodegettextcontent10.xml
new file mode 100644
index 0000000..a789ed4
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent10.xml
@@ -0,0 +1,44 @@
+<?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="nodegettextcontent10">
+<metadata>
+<title>nodegettextcontent10</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke the method getTextContent on an existing Text node and check if the value returned
+ is the elements Text content.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<firstChild var="txt" obj="elem" interface="Node"/>
+<textContent var="textContent" obj="txt"/>
+<assertEquals actual="textContent" expected='"EMP0001"' id="nodegettextcontent10" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent11.xml b/test/testcases/tests/level3/core/nodegettextcontent11.xml
new file mode 100644
index 0000000..52b7265
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent11.xml
@@ -0,0 +1,44 @@
+<?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="nodegettextcontent11">
+<metadata>
+<title>nodegettextcontent11</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke the method getTextContent on an existing CDATASection node and check if the value returned
+ is the CDATASections content.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="cdata" type="CDATASection"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="1" interface="NodeList"/>
+<lastChild var="cdata" obj="elem" interface="Node"/>
+<textContent var="textContent" obj="cdata"/>
+<assertEquals actual="textContent" expected='"This is an adjacent CDATASection with a reference to a tab &amp;tab;"' id="nodegettextcontent11" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent12.xml b/test/testcases/tests/level3/core/nodegettextcontent12.xml
new file mode 100644
index 0000000..8a46f9a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent12.xml
@@ -0,0 +1,43 @@
+<?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="nodegettextcontent12">
+<metadata>
+<title>nodegettextcontent12</title>
+<creator>IBM</creator>
+<description>
+ Invoke the method getTextContent on a new Comment node and check if the value returned
+ is the Comments data.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="comment" type="Comment"/>
+<var name="textContent" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"body"'/>
+<createComment var="comment" obj="doc" data='"Comment"' />
+<appendChild obj="elem" var="appendedChild" newChild="comment"/>
+<textContent var="textContent" obj="comment"/>
+<assertEquals actual="textContent" expected='"Comment"' id="nodegettextcontent12" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent13.xml b/test/testcases/tests/level3/core/nodegettextcontent13.xml
new file mode 100644
index 0000000..a9d3f4e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent13.xml
@@ -0,0 +1,42 @@
+<?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="nodegettextcontent13">
+<metadata>
+<title>nodegettextcontent13</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke the method getTextContent on an existing Element node with Text and CDATA
+ content and check if the value returned is a single concatenated String with its content.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="1" interface="NodeList"/>
+<textContent var="textContent" obj="elem"/>
+<assertEquals actual="textContent" expected='"Martha Raynolds\nThis is a CDATASection with EntityReference number 2 &amp;ent2;\nThis is an adjacent CDATASection with a reference to a tab &amp;tab;"' id="nodegettextcontent13" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent14.xml b/test/testcases/tests/level3/core/nodegettextcontent14.xml
new file mode 100644
index 0000000..e33e374
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent14.xml
@@ -0,0 +1,41 @@
+<?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="nodegettextcontent14">
+<metadata>
+<title>nodegettextcontent14</title>
+<creator>IBM</creator>
+<description>
+ Invoke the method getTextContent on an existing Element node with Child Element, Text
+ EntityReferences and Attributes and check if the value returned is a single
+ concatenated String with its content.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="2" interface="NodeList"/>
+<textContent var="textContent" obj="elem"/>
+<assertEquals actual="textContent" expected='"\n EMP0003\n Roger\n Jones\n Department Manager\n 100,000\n Element data\n PO Box 27 Irving, texas 98553\n "' id="nodegettextcontent13" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent15.xml b/test/testcases/tests/level3/core/nodegettextcontent15.xml
new file mode 100644
index 0000000..cfe6d3f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent15.xml
@@ -0,0 +1,60 @@
+<?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="nodegettextcontent15">
+<metadata>
+<title>nodegettextcontent15</title>
+<creator>IBM</creator>
+<description>
+ The method getTextContent returns the text content of this node and its descendants.
+
+ Invoke the method getTextContent on a new Element node with new Text, EntityReferences
+ CDATASection, PI and Comment nodes and check if the value returned is a single
+ concatenated String with its content.
+</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-textContent"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="comment" type="Comment"/>
+<var name="entRef" type="EntityReference"/>
+<var name="cdata" type="CDATASection"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="textContent" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom3:elem"'/>
+<createTextNode var="txt" obj="doc" data='"Text "' />
+<createComment var="comment" obj="doc" data='"Comment "' />
+<createEntityReference var="entRef" obj="doc" name='"beta"' />
+<createProcessingInstruction var="pi" obj="doc" target='"PIT"' data='"PIData "'/>
+<createCDATASection var="cdata" obj="doc" data='"CData"' />
+<appendChild obj="elem" var="appendedChild" newChild="txt"/>
+<appendChild obj="elem" var="appendedChild" newChild="comment"/>
+<appendChild obj="elem" var="appendedChild" newChild="entRef"/>
+<appendChild obj="elem" var="appendedChild" newChild="pi"/>
+<appendChild obj="elem" var="appendedChild" newChild="cdata"/>
+<textContent var="textContent" obj="elem"/>
+<normalizeDocument obj="doc" />
+<assertEquals actual="textContent" expected='"Text &#946;CData"' id="nodegettextcontent15" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent16.xml b/test/testcases/tests/level3/core/nodegettextcontent16.xml
new file mode 100644
index 0000000..5ce996e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent16.xml
@@ -0,0 +1,64 @@
+<?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="nodegettextcontent16">
+<metadata>
+<title>nodegettextcontent16</title>
+<creator>IBM</creator>
+<description>
+ The method getTextContent returns the text content of this node and its descendants.
+
+ Invoke the method getTextContent on a new DocumentFragment node with new Text, EntityReferences
+ CDATASection, PI and Comment nodes and check if the value returned is a single
+ concatenated String with its content.
+</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-textContent"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="elem" type="Element"/>
+<var name="elemChild" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="comment" type="Comment"/>
+<var name="entRef" type="EntityReference"/>
+<var name="cdata" type="CDATASection"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="textContent" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom3:elem"'/>
+<createTextNode var="txt" obj="doc" data='"Text "' />
+<createComment var="comment" obj="doc" data='"Comment "' />
+<createEntityReference var="entRef" obj="doc" name='"beta"' />
+<createProcessingInstruction var="pi" obj="doc" target='"PIT"' data='"PIData "'/>
+<createCDATASection var="cdata" obj="doc" data='"CData"' />
+<appendChild obj="elem" var="appendedChild" newChild="txt"/>
+<appendChild obj="elem" var="appendedChild" newChild="comment"/>
+<appendChild obj="elem" var="appendedChild" newChild="entRef"/>
+<appendChild obj="elem" var="appendedChild" newChild="pi"/>
+<appendChild obj="elem" var="appendedChild" newChild="cdata"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="elem"/>
+<normalizeDocument obj="doc" />
+<textContent var="textContent" obj="docFrag"/>
+<assertEquals actual="textContent" expected='"Text &#946;CData"' id="nodegettextcontent16" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent17.xml b/test/testcases/tests/level3/core/nodegettextcontent17.xml
new file mode 100644
index 0000000..c3a15e5
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent17.xml
@@ -0,0 +1,42 @@
+<?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="nodegettextcontent17">
+<metadata>
+<title>nodegettextcontent17</title>
+<creator>IBM</creator>
+<description>
+ Invoke the method getTextContent on a new EntityReference node and check if the
+ value returned is the EntityReference's content.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="entRef" type="EntityReference"/>
+<var name="textContent" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="elem" obj="doc"/>
+<createEntityReference var="entRef" obj="doc" name='"beta"' />
+<appendChild obj="elem" var="appendedChild" newChild="entRef"/>
+<textContent var="textContent" obj="entRef"/>
+<assertEquals actual="textContent" expected='"&#946;"' id="nodegettextcontent17" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent18.xml b/test/testcases/tests/level3/core/nodegettextcontent18.xml
new file mode 100644
index 0000000..d8bec3b
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent18.xml
@@ -0,0 +1,42 @@
+<?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="nodegettextcontent18">
+<metadata>
+<title>nodegettextcontent18</title>
+<creator>IBM</creator>
+<description>
+ Invoke the method getTextContent on an Entity node and check if the value returned
+ is its replacement text.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entity" type="Entity"/>
+<var name="entitymap" type="NamedNodeMap"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitymap" obj="docType"/>
+<getNamedItem var="entity" obj="entitymap" name='"delta"'/>
+<textContent var="textContent" obj="entity"/>
+<assertEquals actual="textContent" expected='"&#948;"' id="nodegettextcontent18" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegettextcontent19.xml b/test/testcases/tests/level3/core/nodegettextcontent19.xml
new file mode 100644
index 0000000..80a44be
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegettextcontent19.xml
@@ -0,0 +1,42 @@
+<?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="nodegettextcontent19">
+<metadata>
+<title>nodegettextcontent19</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that element content whitespace is not added to textContent. Determination
+of element content whitespace is only assured if validating.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-textContent"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=538"/>
+</metadata>
+<implementationAttribute name="ignoringElementContentWhitespace" value="false"/>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"body"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<textContent var="textContent" obj="elem"/>
+<assertEquals actual="textContent" expected='"bar"' id="textContent" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetuserdata01.xml b/test/testcases/tests/level3/core/nodegetuserdata01.xml
new file mode 100644
index 0000000..bb65a41
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetuserdata01.xml
@@ -0,0 +1,38 @@
+<?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="nodegetuserdata01">
+<metadata>
+<title>nodegetuserdata01</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using getUserData with a junk value for the key attempt to retreive the UserData object
+ of this Document node without setting it and verify if null is returned.
+</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-getUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="userData" type="DOMUserData"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getUserData var="userData" obj="doc" key='"key1"'/>
+<assertNull actual="userData" id="nodegetuserdata01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetuserdata02.xml b/test/testcases/tests/level3/core/nodegetuserdata02.xml
new file mode 100644
index 0000000..d497034
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetuserdata02.xml
@@ -0,0 +1,38 @@
+<?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="nodegetuserdata02">
+<metadata>
+<title>nodegetuserdata02</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using getUserData with a junk value for the key attempt to retreive the UserData object
+ of this Document node without setting it and verify if null is returned.
+</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-getUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="userData" type="DOMUserData"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getUserData var="userData" obj="doc" key='"key1"'/>
+<assertNull actual="userData" id="nodegetuserdata02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetuserdata03.xml b/test/testcases/tests/level3/core/nodegetuserdata03.xml
new file mode 100644
index 0000000..25e600e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetuserdata03.xml
@@ -0,0 +1,47 @@
+<?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="nodegetuserdata03">
+<metadata>
+<title>nodegetuserdata03</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke setUserData on this Document to set this Documents UserData to a new
+ Element node and using getUserData and isEqualNode check if the returned
+ UserData object is the same as the object that was set.
+</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-getUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="userData" type="DOMUserData"/>
+<var name="retUserData" type="DOMUserData"/>
+<var name="success" type="boolean"/>
+<var name="elem" type="Element"/>
+<var name="returnedUserData" type="DOMUserData"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"body"' />
+<setUserData obj="doc" var="returnedUserData" key='"something"' data="elem" handler="nullHandler"/>
+<getUserData var="retUserData" obj="doc" key='"something"'/>
+<isEqualNode var="success" obj="retUserData" arg="elem"/>
+<assertTrue actual="success" id="nodegetuserdata03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetuserdata04.xml b/test/testcases/tests/level3/core/nodegetuserdata04.xml
new file mode 100644
index 0000000..50f4c8f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetuserdata04.xml
@@ -0,0 +1,47 @@
+<?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="nodegetuserdata04">
+<metadata>
+<title>nodegetuserdata04</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke setUserData on this DocumentType to set this its UserData to a this
+ Document node and using getUserData and isEqualNode check if the returned
+ UserData object is the same as the object that was set.
+</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-getUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="userData" type="DOMUserData"/>
+<var name="retUserData" type="DOMUserData"/>
+<var name="success" type="boolean"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<var name="prevUserData" type="DOMUserData"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<setUserData obj="docType" var="prevUserData" key='"KeyDoc"' data="doc" handler="nullHandler"/>
+<getUserData var="retUserData" obj="docType" key='"KeyDoc"'/>
+<isEqualNode var="success" obj="retUserData" arg="doc"/>
+<assertTrue actual="success" id="nodegetuserdata04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetuserdata05.xml b/test/testcases/tests/level3/core/nodegetuserdata05.xml
new file mode 100644
index 0000000..6230983
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetuserdata05.xml
@@ -0,0 +1,49 @@
+<?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="nodegetuserdata05">
+<metadata>
+<title>nodegetuserdata05</title>
+<creator>IBM</creator>
+<description>
+ Invoke setUserData on this Entity node to set this its UserData to a new
+ Attr node and using getUserData with an invalid Key check if the returned
+ UserData object is Null.
+</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-getUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="attr" type="Attr"/>
+<var name="userData" type="DOMUserData"/>
+<var name="retUserData" type="DOMUserData"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<var name="prevUserData" type="DOMUserData"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entities" obj="docType"/>
+<getNamedItem var="entity" obj="entities" name='"delta"'/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"lang"'/>
+<setUserData obj="entity" var="prevUserData" key='"key"' data="attr" handler="nullHandler"/>
+<getUserData var="retUserData" obj="entity" key='"Key"'/>
+<assertNull actual="retUserData" id="nodegetuserdata05"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetuserdata06.xml b/test/testcases/tests/level3/core/nodegetuserdata06.xml
new file mode 100644
index 0000000..46d7acd
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetuserdata06.xml
@@ -0,0 +1,40 @@
+<?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="nodegetuserdata06">
+<metadata>
+<title>nodegetuserdata06</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke getUserData on a new Text node with an ampty Key check if the returned
+ UserData object is Null.
+</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-getUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="txt" type="Text"/>
+<var name="retUserData" type="DOMUserData"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createTextNode var="txt" obj="doc" data='"TEXT"'/>
+<getUserData var="retUserData" obj="txt" key='""'/>
+<assertNull actual="retUserData" id="nodegetuserdata06"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodegetuserdata07.xml b/test/testcases/tests/level3/core/nodegetuserdata07.xml
new file mode 100644
index 0000000..008631a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodegetuserdata07.xml
@@ -0,0 +1,47 @@
+<?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="nodegetuserdata07">
+<metadata>
+<title>nodegetuserdata07</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke setUserData on a new PI node to set this its UserData to itself
+ and using getUserData with an valid Key and isEqualsNode check if the
+ returned UserData object is the same as that was set.
+</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-getUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="userData" type="DOMUserData"/>
+<var name="retUserData" type="DOMUserData"/>
+<var name="success" type="boolean"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<var name="prevUserData" type="DOMUserData"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createProcessingInstruction var="pi" obj="doc" data='"PIDATA"' target='"PITARGET"'/>
+<setUserData obj="pi" var="prevUserData" key='"key"' data="pi" handler="nullHandler"/>
+<getUserData var="retUserData" obj="pi" key='"key"'/>
+<isEqualNode var="success" obj="retUserData" arg="pi"/>
+<assertTrue actual="success" id="nodegetuserdata07"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore01.xml b/test/testcases/tests/level3/core/nodeinsertbefore01.xml
new file mode 100644
index 0000000..1796609
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore01.xml
@@ -0,0 +1,54 @@
+<?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="nodeinsertbefore01">
+<metadata>
+<title>nodeinsertbefore01</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using insertBefore on this Document node attempt to insert a new Comment node before
+ this DocumentElement node and verify the name of the inserted Comment node. Now
+ attempt to insert a new Processing Instruction node before the new Comment and
+ verify the target of the inserted ProcessingInstruction.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="newComment" type="Comment"/>
+<var name="insertedComment" type="Comment"/>
+<var name="data" type="DOMString"/>
+<var name="newPI" type="ProcessingInstruction"/>
+<var name="insertedPI" type="ProcessingInstruction"/>
+<var name="target" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createComment var="newComment" obj="doc" data='"Comment"' />
+<createProcessingInstruction var="newPI" obj="doc" target='"PITarget"' data='"PIData"' />
+<insertBefore var="insertedComment" obj="doc" newChild="newComment" refChild="docElem"/>
+<data var="data" obj="insertedComment" interface="CharacterData"/>
+<assertEquals actual="data" expected='"Comment"' id="nodeinsertbefore01_1" ignoreCase="false"/>
+<insertBefore var="insertedPI" obj="doc" newChild="newPI" refChild="newComment"/>
+<target var="target" obj="insertedPI" interface="ProcessingInstruction"/>
+<assertEquals actual="target" expected='"PITarget"' id="nodeinsertbefore01_2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore02.xml b/test/testcases/tests/level3/core/nodeinsertbefore02.xml
new file mode 100644
index 0000000..bfbefa7
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore02.xml
@@ -0,0 +1,63 @@
+<?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="nodeinsertbefore02">
+<metadata>
+<title>nodeinsertbefore02</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on a new Document node attempt to insert a new Comment node before
+ this DocumentType node and verify the name of the inserted Comment node. Now
+ attempt to insert a new Processing Instruction node before the new Comment and
+ verify the target of the inserted ProcessingInstruction.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDocType" type="DocumentType"/>
+<var name="newComment" type="Comment"/>
+<var name="insertedComment" type="Comment"/>
+<var name="data" type="DOMString"/>
+<var name="newPI" type="ProcessingInstruction"/>
+<var name="insertedPI" type="ProcessingInstruction"/>
+<var name="target" type="DOMString"/>
+<var name="nullPubId" type="DOMString" isNull="true"/>
+<var name="nullSysId" type="DOMString" isNull="true"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="docElem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootName" obj="docElem"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="newDocType" obj="domImpl" qualifiedName="rootName" publicId="nullPubId" systemId="nullSysId"/>
+<createDocument var="newDoc" obj="domImpl" qualifiedName="rootName" namespaceURI="rootNS" doctype="newDocType" />
+<createComment var="newComment" obj="newDoc" data='"Comment"' />
+<createProcessingInstruction var="newPI" obj="newDoc" target='"PITarget"' data='"PIData"' />
+<insertBefore var="insertedComment" obj="newDoc" newChild="newComment" refChild="newDocType"/>
+<data var="data" obj="insertedComment" interface="CharacterData"/>
+<assertEquals actual="data" expected='"Comment"' id="nodeinsertbefore02_1" ignoreCase="false"/>
+<insertBefore var="insertedPI" obj="newDoc" newChild="newPI" refChild="newComment"/>
+<target var="target" obj="insertedPI" interface="ProcessingInstruction"/>
+<assertEquals actual="target" expected='"PITarget"' id="nodeinsertbefore02_2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore03.xml b/test/testcases/tests/level3/core/nodeinsertbefore03.xml
new file mode 100644
index 0000000..2c130a6
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore03.xml
@@ -0,0 +1,43 @@
+<?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="nodeinsertbefore03">
+<metadata>
+<title>nodeinsertbefore03</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on this Document node attempt to insert a new Attr node before
+ this DocumentType node and verify if a HIERARCHY_REQUEST_ERR is raised.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="newAttr" type="Attr"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<createAttributeNS var="newAttr" obj="doc" qualifiedName='"xml:lang"' namespaceURI='"http://www.w3.org/XML/1998/namespace"'/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<insertBefore obj="doc" var="inserted" newChild="newAttr" refChild="docType"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore04.xml b/test/testcases/tests/level3/core/nodeinsertbefore04.xml
new file mode 100644
index 0000000..a69dc85
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore04.xml
@@ -0,0 +1,41 @@
+<?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="nodeinsertbefore04">
+<metadata>
+<title>nodeinsertbefore04</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on this Document node attempt to insert this Document node before
+ this DocumentType node and verify if a HIERARCHY_REQUEST_ERR is raised.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<insertBefore obj="doc" var="inserted" newChild="doc" refChild="docType"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore05.xml b/test/testcases/tests/level3/core/nodeinsertbefore05.xml
new file mode 100644
index 0000000..479e533
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore05.xml
@@ -0,0 +1,53 @@
+<?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="nodeinsertbefore05">
+<metadata>
+<title>nodeinsertbefore05</title>
+<creator>IBM</creator>
+<description>
+ Attempt to insert a second DocumentType node in a document using Node.insertBefore,
+ should raise either DOMException with either a HIERARCHY_REQUEST_ERR
+ or NOT_SUPPORTED_ERR code.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDocType" type="DocumentType"/>
+<var name="inserted" type="Node"/>
+<var name="nullPubId" type="DOMString" isNull="true"/>
+<var name="nullSysId" type="DOMString" isNull="true"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<name var="rootName" obj="docType" interface="DocumentType"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="newDocType" obj="domImpl" qualifiedName="rootName" publicId="nullPubId" systemId="nullSysId"/>
+<try>
+ <insertBefore obj="doc" var="inserted" newChild="newDocType" refChild="docType"/>
+ <fail id="throw_DOMException"/>
+ <catch>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="NOT_SUPPORTED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore06.xml b/test/testcases/tests/level3/core/nodeinsertbefore06.xml
new file mode 100644
index 0000000..18158a2
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore06.xml
@@ -0,0 +1,51 @@
+<?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="nodeinsertbefore06">
+<metadata>
+<title>nodeinsertbefore06</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on this Document node attempt to insert an Element node before
+ the existing element node and verify if a HIERARCHY_REQUEST_ERR or NOT_SUPPORTED_ERR is raised.
+</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#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=415"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="newElem" type="Element"/>
+<var name="inserted" type="Node"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootTagname" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootTagname" obj="docElem"/>
+<createElementNS var="newElem" obj="doc" qualifiedName='rootTagname' namespaceURI='rootNS'/>
+<try>
+ <insertBefore obj="doc" var="inserted" newChild="newElem" refChild="docElem"/>
+ <fail id="throw_DOMException"/>
+ <catch>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="NOT_SUPPORTED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore07.xml b/test/testcases/tests/level3/core/nodeinsertbefore07.xml
new file mode 100644
index 0000000..344ae25
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore07.xml
@@ -0,0 +1,49 @@
+<?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="nodeinsertbefore07">
+<metadata>
+<title>nodeinsertbefore07</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using insertBefore on this Document node attempt to insert a Comment node created by
+ another Document before this DocumentElement node and verify if a WRONG_DOCUMENT_ERR
+ is raised.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docAlt" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="newComment" type="Comment"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<load var="docAlt" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createComment var="newComment" obj="docAlt" data='"Comment"' />
+<assertDOMException id="WRONG_DOCUMENT_ERR_nodeinsertbefore07">
+<WRONG_DOCUMENT_ERR>
+<insertBefore obj="doc" var="inserted" newChild="newComment" refChild="docElem"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore08.xml b/test/testcases/tests/level3/core/nodeinsertbefore08.xml
new file mode 100644
index 0000000..3d1c1e6
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore08.xml
@@ -0,0 +1,49 @@
+<?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="nodeinsertbefore08">
+<metadata>
+<title>nodeinsertbefore08</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using insertBefore on this Document node attempt to insert a Comment node created by
+ this Document before another Document's DocumentElement node and verify if a
+ NOT_FOUND_ERR is raised.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docAlt" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="newComment" type="Comment"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<load var="docAlt" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="docAlt"/>
+<createComment var="newComment" obj="doc" data='"Comment"' />
+<assertDOMException id="NOT_FOUND_ERR_nodeinsertbefore08">
+<NOT_FOUND_ERR>
+<insertBefore obj="doc" var="inserted" newChild="newComment" refChild="docElem"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore09.xml b/test/testcases/tests/level3/core/nodeinsertbefore09.xml
new file mode 100644
index 0000000..4be4e8e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore09.xml
@@ -0,0 +1,56 @@
+<?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="nodeinsertbefore09">
+<metadata>
+<title>nodeinsertbefore09</title>
+<creator>IBM</creator>
+<description>
+ The method insertBefore inserts the node newChild before the existing child node refChild.
+ If refChild is null, insert newChild at the end of the list of children.
+ If newChild is a DocumentFragment object, all of its children are inserted, in the same
+ order, before refChild.
+
+ Using insertBefore on this Document node attempt to insert a new DocumentFragment node
+ before a Comment node and verify the contents of the Comment node that is a child
+ of the DocumentFragment.
+</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#ID-952280727"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="newComment" type="Comment"/>
+<var name="insertComment" type="Comment"/>
+<var name="comment" type="Comment"/>
+<var name="inserted" type="DocumentFragment"/>
+<var name="data" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createComment var="newComment" obj="doc" data='"Comment"' />
+<appendChild obj="doc" var="appendedChild" newChild="newComment"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createComment var="insertComment" obj="doc" data='"insertComment"' />
+<appendChild obj="docFrag" var="appendedChild" newChild="insertComment"/>
+<insertBefore var="inserted" obj="doc" newChild="docFrag" refChild="newComment"/>
+<previousSibling var="comment" obj="newComment" interface="Node"/>
+<data var="data" obj="comment" interface="CharacterData"/>
+<assertEquals actual="data" expected='"insertComment"' id="nodeinsertbefore09" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore10.xml b/test/testcases/tests/level3/core/nodeinsertbefore10.xml
new file mode 100644
index 0000000..d264cb2
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore10.xml
@@ -0,0 +1,57 @@
+<?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="nodeinsertbefore10">
+<metadata>
+<title>nodeinsertbefore10</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on this Document node attempt to insert a new Element node before
+ another Element node and verify a DOMException with a
+ HIERARCHY_REQUEST_ERR, NOT_FOUND_ERR or NOT_SUPPORTED_ERR is raised.
+</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#ID-952280727"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=415"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="newElem" type="Element"/>
+<var name="inserted" type="Node"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootTagname" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootTagname" obj="docElem"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="1" interface="NodeList"/>
+<createElementNS var="newElem" obj="doc" qualifiedName='rootTagname' namespaceURI='rootNS'/>
+<try>
+ <insertBefore obj="doc" var="inserted" newChild="newElem" refChild="elem"/>
+ <fail id="throw_DOMException"/>
+ <catch>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="NOT_FOUND_ERR"/>
+ <DOMException code="NOT_SUPPORTED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore11.xml b/test/testcases/tests/level3/core/nodeinsertbefore11.xml
new file mode 100644
index 0000000..1fc7c0a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore11.xml
@@ -0,0 +1,77 @@
+<?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="nodeinsertbefore11">
+<metadata>
+<title>nodeinsertbefore11</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using insertBefore on a DocumentFragment node attempt to insert a child nodes before
+ other permissible nodes and verify the contents/name of each inserted node.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="elem" type="Element"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="comment" type="Comment"/>
+<var name="txt" type="Text"/>
+<var name="cdata" type="CDATASection"/>
+<var name="eRef" type="EntityReference"/>
+<var name="inserted" type="Node"/>
+<var name="insertedVal" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createElementNS var="elem" obj="doc" qualifiedName='"body"' namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<createProcessingInstruction var="pi" obj="doc" target='"PITarget"' data='"PIData"' />
+<createComment var="comment" obj="doc" data='"Comment"' />
+<createTextNode var="txt" obj="doc" data='"Text"' />
+<createCDATASection var="cdata" obj="doc" data='"CDATA"' />
+<createEntityReference var="eRef" obj="doc" name='"alpha"' />
+<appendChild obj="docFrag" var="appendedChild" newChild="elem"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="pi"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="comment"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="txt"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="cdata"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="eRef"/>
+<!--
+<insertBefore var="inserted" obj="docFrag" newChild="pi" refChild="elem" />
+<target var="insertedVal" obj="inserted" interface="ProcessingInstruction"/>
+<assertEquals actual="insertedVal" expected='"PITarget"' id="nodeinsertbefore11"/>
+-->
+<insertBefore var="inserted" obj="docFrag" newChild="comment" refChild="pi"/>
+<data var="insertedVal" obj="inserted" interface="CharacterData"/>
+<assertEquals actual="insertedVal" expected='"Comment"' id="nodeinsertbefore11_Comment" ignoreCase="false"/>
+<insertBefore var="inserted" obj="docFrag" newChild="txt" refChild="comment"/>
+<data var="insertedVal" obj="inserted" interface="CharacterData"/>
+<assertEquals actual="insertedVal" expected='"Text"' id="nodeinsertbefore11_Text" ignoreCase="false"/>
+<insertBefore var="inserted" obj="docFrag" newChild="cdata" refChild="txt"/>
+<data var="insertedVal" obj="inserted" interface="CharacterData"/>
+<assertEquals actual="insertedVal" expected='"CDATA"' id="nodeinsertbefore11_CDATA" ignoreCase="false"/>
+<insertBefore var="inserted" obj="docFrag" newChild="eRef" refChild="cdata"/>
+<nodeName var="insertedVal" obj="inserted" />
+<assertEquals actual="insertedVal" expected='"alpha"' id="nodeinsertbefore11_Ent1" ignoreCase="false"/>
+
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore12.xml b/test/testcases/tests/level3/core/nodeinsertbefore12.xml
new file mode 100644
index 0000000..f63f945
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore12.xml
@@ -0,0 +1,53 @@
+<?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="nodeinsertbefore12">
+<metadata>
+<title>nodeinsertbefore12</title>
+<creator>IBM</creator>
+<description>
+ The method insertBefore inserts the node newChild before the existing child node refChild.
+ If refChild is null, insert newChild at the end of the list of children.
+
+ Using insertBefore on a DocumentFragment node attempt to insert a new DocumentFragment node
+ before this DocumentFragment's Element node and verify the last child is still the only child
+ appended to docFrag.
+</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#ID-952280727"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="docFragNew" type="DocumentFragment"/>
+<var name="elem" type="Element"/>
+<var name="inserted" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<var name="last" type="Node"/>
+<var name="name" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createDocumentFragment var="docFragNew" obj="doc"/>
+<createElementNS var="elem" obj="doc" qualifiedName='"dom3:elem"' namespaceURI='"http://www.w3.org/DOM/Test"'/>
+<appendChild obj="docFrag" var="appendedChild" newChild="elem"/>
+<insertBefore obj="docFrag" var="inserted" newChild="docFragNew" refChild="elem"/>
+<lastChild obj="docFrag" var="last" interface="Node"/>
+<nodeName obj="last" var="name" interface="Node"/>
+<assertEquals actual="name" expected='"dom3:elem"' id="nodeinsertbefore12" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore13.xml b/test/testcases/tests/level3/core/nodeinsertbefore13.xml
new file mode 100644
index 0000000..e40a138
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore13.xml
@@ -0,0 +1,59 @@
+<?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="nodeinsertbefore13">
+<metadata>
+<title>nodeinsertbefore13</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using insertBefore on a DocumentFragment node attempt to insert a new Element node
+ created by another Document, before this DocumentFragment's Element node and
+ verify if a WRONG_DOCUMENT_ERR is raised.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docAlt" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="elemAlt" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="appendedChild" type="Node"/>
+<var name="inserted" type="Node"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootTagname" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootTagname" obj="docElem"/>
+<load var="docAlt" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createElementNS var="elem" obj="doc" qualifiedName='rootTagname' namespaceURI='rootNS'/>
+<createElementNS var="elemAlt" obj="docAlt" qualifiedName='rootTagname' namespaceURI='rootNS'/>
+<appendChild obj="docFrag" var="appendedChild" newChild="elem"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<insertBefore obj="docFrag" var="inserted" newChild="elemAlt" refChild="elem"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore14.xml b/test/testcases/tests/level3/core/nodeinsertbefore14.xml
new file mode 100644
index 0000000..a9b1c1e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore14.xml
@@ -0,0 +1,49 @@
+<?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="nodeinsertbefore14">
+<metadata>
+<title>nodeinsertbefore14</title>
+<creator>IBM</creator>
+<description>
+ The method insertBefore inserts the node newChild before the existing child node refChild.
+ If refChild is null, insert newChild at the end of the list of children.
+ A NO_MODIFICATION_ALLOWED_ERR is raised if the node is read-only.
+
+ Using insertBefore on this Document node attempt to insert a new Attr node before
+ this DocumentType node and verfiy if a NO_MODIFICATION_ALLOWED_ERR is raised.
+ (This can also raise a HIERARCHY_REQUEST_ERR and NOT_FOUND_ERR)
+</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#ID-952280727"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="newAttr" type="Attr"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<createAttributeNS var="newAttr" obj="doc" qualifiedName='"dom3:attr"' namespaceURI='"http://www.w3.org/DOM/Test"'/>
+<assertDOMException id="NO_MODIFICATION_ALLOWED_ERR_nodeinsertbefore14">
+<NO_MODIFICATION_ALLOWED_ERR>
+<insertBefore obj="docType" var="inserted" newChild="newAttr" refChild="docType"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore15.xml b/test/testcases/tests/level3/core/nodeinsertbefore15.xml
new file mode 100644
index 0000000..71aceb4
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore15.xml
@@ -0,0 +1,76 @@
+<?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="nodeinsertbefore15">
+<metadata>
+<title>nodeinsertbefore15</title>
+<creator>IBM</creator>
+<description>
+ A NO_MODIFICATION_ALLOWED_ERR is raised if the node is read-only.
+
+ Using insertBefore on a new EntityReference node attempt to insert Element, Text,
+ Comment, ProcessingInstruction and CDATASection nodes before an element child
+ and verify if a NO_MODIFICATION_ALLOWED_ERR is thrown.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="EntityReference"/>
+<var name="elemChild" type="Node"/>
+<var name="txt" type="Text"/>
+<var name="elem" type="Element"/>
+<var name="comment" type="Comment"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="cdata" type="CDATASection"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEntityReference var="entRef" obj="doc" name='"delta"'/>
+<firstChild obj="entRef" var="elemChild" interface="Node"/>
+<createCDATASection var="cdata" obj="doc" data='"CDATASection"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_1">
+<NO_MODIFICATION_ALLOWED_ERR>
+<insertBefore obj="entRef" var="inserted" refChild="elemChild" newChild="cdata"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<createProcessingInstruction var="pi" obj="doc" target='"target"' data='"data"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_2">
+<NO_MODIFICATION_ALLOWED_ERR>
+<insertBefore obj="entRef" var="inserted" refChild="elemChild" newChild="pi"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<createComment var="comment" obj="doc" data='"Comment"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_3">
+<NO_MODIFICATION_ALLOWED_ERR>
+<insertBefore obj="entRef" var="inserted" refChild="elemChild" newChild="comment"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<createTextNode var="txt" obj="doc" data='"Text"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_4">
+<NO_MODIFICATION_ALLOWED_ERR>
+<insertBefore obj="entRef" var="inserted" refChild="elemChild" newChild="txt"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"body"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_5">
+<NO_MODIFICATION_ALLOWED_ERR>
+<insertBefore obj="entRef" var="inserted" refChild="elemChild" newChild="elem"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore16.xml b/test/testcases/tests/level3/core/nodeinsertbefore16.xml
new file mode 100644
index 0000000..f3876dd
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore16.xml
@@ -0,0 +1,53 @@
+<?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="nodeinsertbefore16">
+<metadata>
+<title>nodeinsertbefore16</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on an Element node attempt to insert a new Element, node before its
+ first element child and verify the name of the new first child node.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="newElem" type="Element"/>
+<var name="refElem" type="Element"/>
+<var name="firstChild" type="Node"/>
+<var name="insertedElem" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="nodeName" type="DOMString"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="element" obj="childList" index="0" interface="NodeList"/>
+<firstChild var="firstChild" obj="element" interface="Node"/>
+<nextSibling var="refElem" obj="firstChild" interface="Node"/>
+<createElementNS var="newElem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:br"'/>
+<insertBefore obj="element" var="inserted" refChild="refElem" newChild="newElem"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="element" obj="childList" index="0" interface="NodeList"/>
+<firstChild var="firstChild" obj="element" interface="Node"/>
+<nextSibling var="insertedElem" obj="firstChild" interface="Node"/>
+<nodeName var="nodeName" obj="insertedElem"/>
+<assertEquals actual="nodeName" expected='"xhtml:br"' id="nodeinsertbefore16" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore17.xml b/test/testcases/tests/level3/core/nodeinsertbefore17.xml
new file mode 100644
index 0000000..51fb499
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore17.xml
@@ -0,0 +1,56 @@
+<?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="nodeinsertbefore17">
+<metadata>
+<title>nodeinsertbefore17</title>
+<creator>IBM</creator>
+<description>
+ The method insertBefore inserts the node newChild before the existing child node refChild.
+ If refChild is null, insert newChild at the end of the list of children.
+
+ Using insertBefore on an Element node attempt to insert a text node before its
+ first element child and verify the name of the new first child node.
+</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#ID-952280727"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<implementationAttribute name="coalescing" value="true"/>
+<implementationAttribute name="ignoringElementContentWhitespace" value="true"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="newText" type="Text"/>
+<var name="refNode" type="Node"/>
+<var name="firstChild" type="Node"/>
+<var name="insertedText" type="Text"/>
+<var name="childList" type="NodeList"/>
+<var name="nodeName" type="DOMString"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagNameNS var="childList" obj="doc" namespaceURI='"*"' localName='"p"' interface="Document"/>
+<item var="element" obj="childList" index="1" interface="NodeList"/>
+<firstChild var="refNode" obj="element" interface="Node"/>
+<createTextNode var="newText" obj="doc" data='"newText"' interface="Document"/>
+<insertBefore obj="element" var="inserted" refChild="refNode" newChild="newText"/>
+<firstChild var="insertedText" obj="element" interface="Node"/>
+<nodeName var="nodeName" obj="insertedText"/>
+<assertEquals actual="nodeName" expected='"#text"' id="nodeinsertbefore17" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore18.xml b/test/testcases/tests/level3/core/nodeinsertbefore18.xml
new file mode 100644
index 0000000..a936b5d
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore18.xml
@@ -0,0 +1,61 @@
+<?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="nodeinsertbefore18">
+<metadata>
+<title>nodeinsertbefore18</title>
+<creator>IBM</creator>
+<description>
+ The method insertBefore inserts the node newChild before the existing child node refChild.
+ If refChild is null, insert newChild at the end of the list of children.
+
+ Using insertBefore on an Element node attempt to insert new Comment/PI and CDATA nodes
+ before each other and verify the names of the newly inserted nodes.
+</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#ID-952280727"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="newElem" type="Element"/>
+<var name="newComment" type="Comment"/>
+<var name="newPI" type="ProcessingInstruction"/>
+<var name="newCDATA" type="CDATASection"/>
+<var name="insertedNode" type="Comment"/>
+<var name="data" type="DOMString"/>
+<var name="target" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElement var="element" obj="doc" tagName='"element"'/>
+<createElementNS var="newElem" obj="doc" namespaceURI='"http://www.w3.org/DOM"' qualifiedName='"dom3:elem"'/>
+<createComment var="newComment" obj="doc" data='"Comment"'/>
+<createCDATASection var="newCDATA" obj="doc" data='"CDATASection"'/>
+<createProcessingInstruction var="newPI" obj="doc" target='"target"' data='"data"'/>
+<appendChild obj="element" var="appendedChild" newChild="newElem"/>
+<appendChild obj="element" var="appendedChild" newChild="newComment"/>
+<appendChild obj="element" var="appendedChild" newChild="newPI"/>
+<appendChild obj="element" var="appendedChild" newChild="newCDATA"/>
+<insertBefore obj="element" var="inserted" refChild="newElem" newChild="newComment"/>
+<firstChild var="insertedNode" obj="element" interface="Node"/>
+<data var="data" obj="insertedNode" interface="CharacterData"/>
+<assertEquals actual="data" expected='"Comment"' id="nodeinsertbefore18" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore19.xml b/test/testcases/tests/level3/core/nodeinsertbefore19.xml
new file mode 100644
index 0000000..d53717d
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore19.xml
@@ -0,0 +1,47 @@
+<?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="nodeinsertbefore19">
+<metadata>
+<title>nodeinsertbefore19</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on an Element node attempt to insert an EntityReference node, before
+ another new EntityReference node and verify the name of the new first child node.
+</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#ID-952280727"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="refNode" type="Node"/>
+<var name="newNode" type="EntityReference"/>
+<var name="inserted" type="EntityReference"/>
+<var name="childList" type="NodeList"/>
+<var name="nodeName" type="DOMString"/>
+<var name="element" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"var"' interface="Document"/>
+<item var="element" obj="childList" index="2" interface="NodeList"/>
+<firstChild var="refNode" obj="element" interface="Node"/>
+<createEntityReference var="newNode" obj="doc" name='"alpha"'/>
+<insertBefore obj="element" var="inserted" refChild="refNode" newChild="newNode"/>
+<nodeName var="nodeName" obj="inserted"/>
+<assertEquals actual="nodeName" expected='"alpha"' id="nodeinsertbefore19" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore20.xml b/test/testcases/tests/level3/core/nodeinsertbefore20.xml
new file mode 100644
index 0000000..1b541dc
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore20.xml
@@ -0,0 +1,47 @@
+<?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="nodeinsertbefore20">
+<metadata>
+<title>nodeinsertbefore20</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on an Element node attempt to insert a new Attr node, before
+ an EntityReference child and verify if a HIERARCHY_REQUEST_ERR is raised.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="refNode" type="Node"/>
+<var name="newNode" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"var"' interface="Document"/>
+<item var="element" obj="childList" index="2" interface="NodeList"/>
+<firstChild var="refNode" obj="element" interface="Node"/>
+<createAttributeNS var="newNode" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<insertBefore obj="element" var="inserted" refChild="refNode" newChild="newNode"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore21.xml b/test/testcases/tests/level3/core/nodeinsertbefore21.xml
new file mode 100644
index 0000000..df9eec7
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore21.xml
@@ -0,0 +1,47 @@
+<?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="nodeinsertbefore21">
+<metadata>
+<title>nodeinsertbefore21</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on an Element node attempt to insert the parent Element node, before
+ an EntityReference or Text child and verify if a HIERARCHY_REQUEST_ERR is raised.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="refNode" type="Node"/>
+<var name="newNode" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"var"' interface="Document"/>
+<item var="element" obj="childList" index="2" interface="NodeList"/>
+<firstChild var="refNode" obj="element" interface="Node"/>
+<parentNode var="newNode" obj="element" interface="Node"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<insertBefore obj="element" var="inserted" refChild="refNode" newChild="newNode"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore22.xml b/test/testcases/tests/level3/core/nodeinsertbefore22.xml
new file mode 100644
index 0000000..5fc603b
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore22.xml
@@ -0,0 +1,49 @@
+<?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="nodeinsertbefore22">
+<metadata>
+<title>nodeinsertbefore22</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on an Element node attempt to insert the ancestor of an Element node
+ before its child and verify if a HIERARCHY_REQUEST_ERR is raised.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="refNode" type="Element"/>
+<var name="ancestor" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="appendedChild" type="Node"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:body"'/>
+<createElementNS var="refNode" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:a"'/>
+<createElementNS var="ancestor" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:p"'/>
+<appendChild obj="element" var="appendedChild" newChild="refNode"/>
+<appendChild obj="ancestor" var="appendedChild" newChild="element"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<insertBefore obj="element" var="inserted" refChild="refNode" newChild="ancestor"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore23.xml b/test/testcases/tests/level3/core/nodeinsertbefore23.xml
new file mode 100644
index 0000000..b99c4e4
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore23.xml
@@ -0,0 +1,50 @@
+<?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="nodeinsertbefore23">
+<metadata>
+<title>nodeinsertbefore23</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on an Element node attempt to insert a Text node created by a different
+ Document before an Element child and verify if a WRONG_DOCUMENT_ERR is raised.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="element" type="Element"/>
+<var name="refNode" type="Element"/>
+<var name="newNode" type="Text"/>
+<var name="childList" type="NodeList"/>
+<var name="appendedChild" type="Node"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<load var="doc2" href="hc_staff" willBeModified="true"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:body"'/>
+<createElementNS var="refNode" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:p"'/>
+<createTextNode var="newNode" obj="doc2" data='"TextNode"' />
+<appendChild obj="element" var="appendedChild" newChild="refNode"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<insertBefore obj="element" var="inserted" refChild="refNode" newChild="newNode"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore24.xml b/test/testcases/tests/level3/core/nodeinsertbefore24.xml
new file mode 100644
index 0000000..1ea0b69
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore24.xml
@@ -0,0 +1,46 @@
+<?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="nodeinsertbefore24">
+<metadata>
+<title>nodeinsertbefore24</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on an Element node attempt to insert a Comment node before
+ a CDATASection node that is not a child and verify if a NOT_FOUND_ERR is raised.
+</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#ID-952280727"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="refNode" type="CDATASection"/>
+<var name="newNode" type="Comment"/>
+<var name="childList" type="NodeList"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElementNS var="element" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:p"'/>
+<createCDATASection var="refNode" obj="doc" data='"CDATASection"' />
+<createComment var="newNode" obj="doc" data='"Comment"' />
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<insertBefore obj="element" var="inserted" refChild="refNode" newChild="newNode"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeinsertbefore25.xml b/test/testcases/tests/level3/core/nodeinsertbefore25.xml
new file mode 100644
index 0000000..7d266c2
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeinsertbefore25.xml
@@ -0,0 +1,55 @@
+<?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="nodeinsertbefore25">
+<metadata>
+<title>nodeinsertbefore25</title>
+<creator>IBM</creator>
+<description>
+ Using insertBefore on a child Element of an EntityReference node attempt to insert
+ a new Element node, before a Text node child of an Entity Node's replacement
+ text and verify if a NO_MODIFICATION_ALLOWED_ERR is raised.
+</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#ID-952280727"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="eRef" type="EntityReference"/>
+<var name="span" type="Element"/>
+<var name="spanText" type="Text"/>
+<var name="newNode" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="inserted" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"var"' interface="Document"/>
+<item var="element" obj="childList" index="2" interface="NodeList"/>
+<firstChild var="eRef" obj="element" interface="Node"/>
+<firstChild var="span" obj="eRef" interface="Node"/>
+<assertNotNull actual="span" id="spanNotNull"/>
+<firstChild var="spanText" obj="span" interface="Node"/>
+<assertNotNull actual="spanText" id="spanTextNotNull"/>
+<createElementNS var="newNode" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"span"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<insertBefore obj="span" var="inserted" refChild="spanText" newChild="newNode"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace01.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace01.xml
new file mode 100644
index 0000000..bdd125d
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace01.xml
@@ -0,0 +1,41 @@
+<?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="nodeisdefaultnamespace01">
+<metadata>
+<title>nodeisdefaultnamespace01</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on this Document node with the
+ namespace of the document element check if the value returned is true.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="isDefault" type="boolean"/>
+<var name="docElem" type="Element"/>
+<var name="docElemNS" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="docElemNS" obj="docElem" interface="Node"/>
+<isDefaultNamespace var="isDefault" obj="doc" namespaceURI="docElemNS"/>
+<assertTrue actual="isDefault" id="nodeisdefaultnamespace01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace02.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace02.xml
new file mode 100644
index 0000000..87920de
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace02.xml
@@ -0,0 +1,52 @@
+<?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="nodeisdefaultnamespace02">
+<metadata>
+<title>nodeisdefaultnamespace02</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on on a new Document node with the value of the namespaceURI
+ parameter equal to the namespaceURI of the newly created Document and check if the
+ value returned is false.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="isDefault" type="boolean"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="nullNSURI" type="DOMString" 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"/>
+<localName var="rootName" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<isDefaultNamespace var="isDefault" obj="newDoc" namespaceURI="rootNS"/>
+<assertTrue actual="isDefault" id="nodeisdefaultnamespace02_true"/>
+<isDefaultNamespace var="isDefault" obj="newDoc" namespaceURI="nullNSURI"/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace02_false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace03.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace03.xml
new file mode 100644
index 0000000..917e41c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace03.xml
@@ -0,0 +1,43 @@
+<?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="nodeisdefaultnamespace03">
+<metadata>
+<title>nodeisdefaultnamespace03</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using isDefaultNamespace on this DocumentType node with the value of the namespaceURI parameter
+ as null check if the value returned is false.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="isDefault" type="boolean"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<isDefaultNamespace var="isDefault" obj="docType" namespaceURI="nullNSURI"/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace04.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace04.xml
new file mode 100644
index 0000000..ca6510c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace04.xml
@@ -0,0 +1,53 @@
+<?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="nodeisdefaultnamespace04">
+<metadata>
+<title>nodeisdefaultnamespace04</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using isDefaultNamespace on a Notation and Entity node with the value of the namespaceURI parameter
+ as null check if the value returned is false.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entity" type="Entity"/>
+<var name="notation" type="Notation"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="isDefault" type="boolean"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<notations var="notationsMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"alpha"'/>
+<getNamedItem var="notation" obj="notationsMap" name='"notation1"'/>
+<isDefaultNamespace var="isDefault" obj="entity" namespaceURI="nullNSURI"/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace04_1"/>
+<isDefaultNamespace var="isDefault" obj="notation" namespaceURI="nullNSURI"/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace04_2"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace05.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace05.xml
new file mode 100644
index 0000000..6de428f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace05.xml
@@ -0,0 +1,54 @@
+<?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="nodeisdefaultnamespace05">
+<metadata>
+<title>nodeisdefaultnamespace05</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on a DocumentElement of a new Document node with the value of the
+ namespaceURI parameter equal to the namespaceURI of the newly created Document and check if the
+ value returned is false.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="isDefault" type="boolean"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="nullNSURI" type="DOMString" 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"/>
+<localName var="rootName" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<documentElement var="elem" obj="newDoc"/>
+<isDefaultNamespace var="isDefault" obj="elem" namespaceURI="rootNS"/>
+<assertTrue actual="isDefault" id="nodeisdefaultnamespace05_1"/>
+<isDefaultNamespace var="isDefault" obj="elem" namespaceURI="nullNSURI"/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace05_2"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace06.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace06.xml
new file mode 100644
index 0000000..6e7e07b
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace06.xml
@@ -0,0 +1,44 @@
+<?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="nodeisdefaultnamespace06">
+<metadata>
+<title>nodeisdefaultnamespace06</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on an Element node with no prefix, which has a namespace
+ attribute declaration with and without a namespace prefix and check if isDefaultNamespace
+ returns true with the namespaceURI that does not have a prefix as its parameter.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="isDefault" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<isDefaultNamespace var="isDefault" obj="elem" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertTrue actual="isDefault" id="nodeisdefaultnamespace06_1"/>
+<isDefaultNamespace var="isDefault" obj="elem" namespaceURI='"http://www.usa.com"'/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace06_2"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace07.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace07.xml
new file mode 100644
index 0000000..fcfe438
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace07.xml
@@ -0,0 +1,44 @@
+<?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="nodeisdefaultnamespace07">
+<metadata>
+<title>nodeisdefaultnamespace07</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on the child of an Element node with no prefix, which has a
+ namespace attribute declaration with and without a namespace prefix and check if isDefaultNamespace
+ returns true with the namespaceURI that does not have a prefix as its parameter.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="isDefault" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<isDefaultNamespace var="isDefault" obj="elem" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertTrue actual="isDefault" id="nodeisdefaultnamespace07_1"/>
+<isDefaultNamespace var="isDefault" obj="elem" namespaceURI='"http://www.usa.com"'/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace07_2"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace08.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace08.xml
new file mode 100644
index 0000000..8c7329c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace08.xml
@@ -0,0 +1,45 @@
+<?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="nodeisdefaultnamespace08">
+<metadata>
+<title>nodeisdefaultnamespace08</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using isDefaultNamespace on an Element node with a prefix, which has a namespace
+ attribute declaration with a namespace prefix and check if isDefaultNamespace
+ returns false with this namespaceURI as its parameter.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="isDefault" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<isDefaultNamespace var="isDefault" obj="elem" namespaceURI='"http://www.altavista.com"'/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace08"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace09.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace09.xml
new file mode 100644
index 0000000..d02444c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace09.xml
@@ -0,0 +1,47 @@
+<?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="nodeisdefaultnamespace09">
+<metadata>
+<title>nodeisdefaultnamespace09</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on a new Child of a new Element node with a namespace URI
+ and prefix and using the parents namespace URI as an argument, verify if the
+ value returned is false.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="parent" type="Element"/>
+<var name="child" type="Element"/>
+<var name="isDefault" type="boolean"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:body"'/>
+<!-- shouldn't be mixing L1 and L2 calls -->
+<createElement var="child" obj="doc" tagName='"xhtml:p"'/>
+<appendChild obj="parent" var="appendedChild" newChild="child"/>
+<isDefaultNamespace var="isDefault" obj="parent" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace09_1"/>
+<isDefaultNamespace var="isDefault" obj="child" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace09_2"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace10.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace10.xml
new file mode 100644
index 0000000..a26790a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace10.xml
@@ -0,0 +1,46 @@
+<?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="nodeisdefaultnamespace10">
+<metadata>
+<title>nodeisdefaultnamespace10</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on a new Child of a new Element node with a namespace URI
+ and prefix and using the childs namespace URI as an argument, verify if the
+ value returned is true.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="parent" type="Element"/>
+<var name="child" type="Element"/>
+<var name="isDefault" type="boolean"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:body"'/>
+<createElementNS var="child" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"p"'/>
+<appendChild obj="parent" var="appendedChild" newChild="child"/>
+<isDefaultNamespace var="isDefault" obj="child" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertTrue actual="isDefault" id="nodeisdefaultnamespace10_1"/>
+<isDefaultNamespace var="isDefault" obj="parent" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace10_2"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace11.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace11.xml
new file mode 100644
index 0000000..36546b1
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace11.xml
@@ -0,0 +1,53 @@
+<?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="nodeisdefaultnamespace11">
+<metadata>
+<title>nodeisdefaultnamespace11</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on an imported new Element node with a namespace URI and prefix
+ in a new Document and using the parent's namespace URI as an argument, verify if the
+ value returned is true.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="importedNode" type="Element"/>
+<var name="isDefault" 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"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"p"'/>
+<importNode var="importedNode" obj="newDoc" importedNode="elem" deep="true"/>
+<isDefaultNamespace var="isDefault" obj="importedNode" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertTrue actual="isDefault" id="nodeisdefaultnamespace11"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace13.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace13.xml
new file mode 100644
index 0000000..a7b16ee
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace13.xml
@@ -0,0 +1,49 @@
+<?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="nodeisdefaultnamespace13">
+<metadata>
+<title>nodeisdefaultnamespace13</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on a Element's new Text node, which has a namespace attribute
+ declaration without a namespace prefix in its parent Element node and verify if the
+ value returned is true.
+</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-isDefaultNamespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="bodyElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="isDefault" type="boolean"/>
+<var name="appendedChild" type="Node"/>
+<var name="bodyList" type="NodeList"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="bodyList" obj="doc" tagname='"body"' interface="Document"/>
+<item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"p"'/>
+<createTextNode var="txt" obj="doc" data='"Text"'/>
+<appendChild obj="elem" var="appendedChild" newChild="txt"/>
+<appendChild obj="bodyElem" var="appendedChild" newChild="elem"/>
+<isDefaultNamespace var="isDefault" obj="txt" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertTrue actual="isDefault" id="nodeisdefaultnamespace13"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace14.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace14.xml
new file mode 100644
index 0000000..54c2a2e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace14.xml
@@ -0,0 +1,48 @@
+<?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="nodeisdefaultnamespace14">
+<metadata>
+<title>nodeisdefaultnamespace14</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on a Element's new CDATASection node, which has a namespace attribute
+ declaration without a namespace prefix in its parent Element node and verify if the
+ value returned is true.
+</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-isDefaultNamespace"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="cdata" type="CDATASection"/>
+<var name="isDefault" type="boolean"/>
+<var name="appendedChild" type="Node"/>
+<var name="bodyList" type="NodeList"/>
+<var name="bodyElem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="bodyList" obj="doc" tagname='"body"' interface="Document"/>
+<item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"p"'/>
+<createCDATASection var="cdata" obj="doc" data='"CDATASection"'/>
+<appendChild obj="elem" var="appendedChild" newChild="cdata"/>
+<appendChild obj="bodyElem" var="appendedChild" newChild="elem"/>
+<isDefaultNamespace var="isDefault" obj="cdata" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertTrue actual="isDefault" id="nodeisdefaultnamespace14"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace15.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace15.xml
new file mode 100644
index 0000000..fe66287
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace15.xml
@@ -0,0 +1,50 @@
+<?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="nodeisdefaultnamespace15">
+<metadata>
+<title>nodeisdefaultnamespace15</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on a Element's new cloned Comment node, which has a namespace attribute
+ declaration without a namespace prefix in its parent Element node and verify if the
+ value returned is true.
+</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-isDefaultNamespace"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="bodyElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="comment" type="Comment"/>
+<var name="clonedComment" type="Comment"/>
+<var name="isDefault" type="boolean"/>
+<var name="appendedChild" type="Node"/>
+<var name="bodyList" type="NodeList"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="bodyList" obj="doc" tagname='"body"' interface="Document"/>
+<item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"p"'/>
+<createComment var="comment" obj="doc" data='"Text"'/>
+<cloneNode var="clonedComment" obj="comment" deep="true"/>
+<appendChild obj="elem" var="appendedChild" newChild="clonedComment"/>
+<appendChild obj="bodyElem" var="appendedChild" newChild="elem"/>
+<isDefaultNamespace var="isDefault" obj="clonedComment" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertTrue actual="isDefault" id="nodeisdefaultnamespace15"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisdefaultnamespace16.xml b/test/testcases/tests/level3/core/nodeisdefaultnamespace16.xml
new file mode 100644
index 0000000..572c98c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisdefaultnamespace16.xml
@@ -0,0 +1,39 @@
+<?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="nodeisdefaultnamespace16">
+<metadata>
+<title>nodeisdefaultnamespace16</title>
+<creator>IBM</creator>
+<description>
+ Using isDefaultNamespace on a new Attribute node with with a namespace URI
+ and no prefix and verify if the value returned is false since default namespaces
+ do not apply directly to attributes.
+</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-isDefaultNamespace"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attr" type="Attr"/>
+<var name="isDefault" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"lang"'/>
+<isDefaultNamespace var="isDefault" obj="attr" namespaceURI='"http://www.w3.org/XML/1998/namespace"'/>
+<assertFalse actual="isDefault" id="nodeisdefaultnamespace16"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode01.xml b/test/testcases/tests/level3/core/nodeisequalnode01.xml
new file mode 100644
index 0000000..082c14a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode01.xml
@@ -0,0 +1,40 @@
+<?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="nodeisequalnode01">
+<metadata>
+<title>nodeisequalnode01</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 Document nodes created by parsing the same xml document
+ are 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"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc1" href="hc_staff" willBeModified="false"/>
+<load var="doc2" href="hc_staff" willBeModified="false"/>
+<isEqualNode var="isEqual" obj="doc1" arg="doc2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode02.xml b/test/testcases/tests/level3/core/nodeisequalnode02.xml
new file mode 100644
index 0000000..8f82766
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode02.xml
@@ -0,0 +1,49 @@
+<?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="nodeisequalnode02">
+<metadata>
+<title>nodeisequalnode02</title>
+<creator>IBM</creator>
+<description>
+ Using isEqualNode check if 2 newly created Document nodes having the same namespaceURI
+ and qualifiedName are 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<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="doc1" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<createDocument var="doc2" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<isEqualNode var="isEqual" obj="doc1" arg="doc2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode03.xml b/test/testcases/tests/level3/core/nodeisequalnode03.xml
new file mode 100644
index 0000000..5d06566
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode03.xml
@@ -0,0 +1,47 @@
+<?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="nodeisequalnode03">
+<metadata>
+<title>nodeisequalnode03</title>
+<creator>IBM</creator>
+<description>
+ Using isEqualNode check if 2 Document nodes created by parsing
+ documents only differing in declared encoding return false for isEqualNode on
+ the document and true on the document element.
+</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=528"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="docElem1" type="Element"/>
+<var name="docElem2" type="Element"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc1" href="barfoo_utf8" willBeModified="false"/>
+<load var="doc2" href="barfoo_utf16" willBeModified="false"/>
+<isEqualNode var="isEqual" obj="doc1" arg="doc2"/>
+<!-- encoding is not significant in equality -->
+<assertTrue actual="isEqual" id="docAreNotEquals"/>
+<documentElement var="docElem1" obj="doc1"/>
+<documentElement var="docElem2" obj="doc2"/>
+<isEqualNode var="isEqual" obj="docElem1" arg="docElem2"/>
+<assertTrue actual="isEqual" id="docElemsAreEquals"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode04.xml b/test/testcases/tests/level3/core/nodeisequalnode04.xml
new file mode 100644
index 0000000..611bf3e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode04.xml
@@ -0,0 +1,40 @@
+<?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="nodeisequalnode04">
+<metadata>
+<title>nodeisequalnode04</title>
+<creator>IBM</creator>
+<description>
+ Create a new Element node in this Document. return its ownerDocument and check if the
+ the ownerDocument is equal to this Document using isEqualNode.
+</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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="ownerDoc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:p"'/>
+<ownerDocument var="ownerDoc" obj="elem"/>
+<isEqualNode var="isEqual" obj="doc" arg="ownerDoc"/>
+<assertTrue actual="isEqual" id="nodeisequalnode04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode05.xml b/test/testcases/tests/level3/core/nodeisequalnode05.xml
new file mode 100644
index 0000000..8771b30
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode05.xml
@@ -0,0 +1,38 @@
+<?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="nodeisequalnode05">
+<metadata>
+<title>nodeisequalnode05</title>
+<creator>IBM</creator>
+<description>
+ Using isEqualNode check if 2 Document nodes created by parsing different xml document
+ are 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"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc1" href="barfoo_standalone_yes" willBeModified="false"/>
+<load var="doc2" href="barfoo" willBeModified="false"/>
+<isEqualNode var="isEqual" obj="doc1" arg="doc2"/>
+<assertFalse actual="isEqual" id="nodeisequalnode05"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode06.xml b/test/testcases/tests/level3/core/nodeisequalnode06.xml
new file mode 100644
index 0000000..b2ba637
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode06.xml
@@ -0,0 +1,42 @@
+<?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="nodeisequalnode06">
+<metadata>
+<title>nodeisequalnode06</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 Element nodes having the same nodeName and namespaceURI attribute
+ are 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem1" type="Element"/>
+<var name="elem2" type="Element"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="elem1" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:html"'/>
+<createElementNS var="elem2" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:html"'/>
+<isEqualNode var="isEqual" obj="elem1" arg="elem2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode06"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode07.xml b/test/testcases/tests/level3/core/nodeisequalnode07.xml
new file mode 100644
index 0000000..3fca62e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode07.xml
@@ -0,0 +1,42 @@
+<?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="nodeisequalnode07">
+<metadata>
+<title>nodeisequalnode07</title>
+<creator>IBM</creator>
+<description>
+ Using isEqualNode check if 2 Element nodes having the same nodeName and namespaceURI attribute
+ created by two different Document objects obtained by parsing the same xml document are 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"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="elem1" type="Element"/>
+<var name="elem2" type="Element"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc1" href="hc_staff" willBeModified="false"/>
+<load var="doc2" href="hc_staff" willBeModified="false"/>
+<createElementNS var="elem1" obj="doc1" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:html"'/>
+<createElementNS var="elem2" obj="doc2" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:html"'/>
+<isEqualNode var="isEqual" obj="elem1" arg="elem2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode07"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode08.xml b/test/testcases/tests/level3/core/nodeisequalnode08.xml
new file mode 100644
index 0000000..005ab01
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode08.xml
@@ -0,0 +1,51 @@
+<?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="nodeisequalnode08">
+<metadata>
+<title>nodeisequalnode08</title>
+<creator>IBM</creator>
+<description>
+
+
+ Retreive an element node of this Document having nodeName as employeeId and
+ namespaceURI as http://www.nist.gov. Create a new Element node having the same attributes
+ in this Document and using isEqualNode check if 2 Element nodes are 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"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="ignoringElementContentWhitespace" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem1" type="Element"/>
+<var name="elem2" type="Element"/>
+<var name="employeeList" type="NodeList"/>
+<var name="text" type="Text"/>
+<var name="isEqual" type="boolean"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="employeeList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem1" obj="employeeList" index="0" interface="NodeList"/>
+<createElementNS var="elem2" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"em"'/>
+<createTextNode var="text" obj="doc" data='"EMP0001"'/>
+<appendChild obj="elem2" var="appendedChild" newChild="text"/>
+<isEqualNode var="isEqual" obj="elem1" arg="elem2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode08"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode09.xml b/test/testcases/tests/level3/core/nodeisequalnode09.xml
new file mode 100644
index 0000000..3e23ca2
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode09.xml
@@ -0,0 +1,59 @@
+<?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="nodeisequalnode09">
+<metadata>
+<title>nodeisequalnode09</title>
+<creator>IBM</creator>
+<description>
+Get the first "em" node, construct an equivalent in a new document and see if isEqualNode
+returns true.
+</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"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="ignoringElementContentWhitespace" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="elem1" type="Element"/>
+<var name="elem2" type="Element"/>
+<var name="employeeList" type="NodeList"/>
+<var name="text" type="Text"/>
+<var name="isEqual" type="boolean"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="appendedChild" type="Node"/>
+<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"/>
+<localName var="rootName" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='rootNS' qualifiedName='rootName' doctype="nullDocType"/>
+<getElementsByTagName var="employeeList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem1" obj="employeeList" index="0" interface="NodeList"/>
+<createElementNS var="elem2" obj="newDoc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"em"'/>
+<createTextNode var="text" obj="newDoc" data='"EMP0001"'/>
+<appendChild obj="elem2" var="appendedChild" newChild="text"/>
+<isEqualNode var="isEqual" obj="elem1" arg="elem2"/>
+<assertTrue actual="isEqual" id="nodesAreEqual"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode10.xml b/test/testcases/tests/level3/core/nodeisequalnode10.xml
new file mode 100644
index 0000000..4c9200a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode10.xml
@@ -0,0 +1,42 @@
+<?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="nodeisequalnode10">
+<metadata>
+<title>nodeisequalnode10</title>
+<creator>IBM</creator>
+<description>
+ Retreive 2 different "em" nodes of this Document Use isEqualNode
+ check if nodes are not 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem1" type="Element"/>
+<var name="elem2" type="Element"/>
+<var name="employeeList" type="NodeList"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="employeeList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem1" obj="employeeList" index="0" interface="NodeList"/>
+<item var="elem2" obj="employeeList" index="1" interface="NodeList"/>
+<isEqualNode var="isEqual" obj="elem1" arg="elem2"/>
+<assertFalse actual="isEqual" id="nodeisequalnode10"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode11.xml b/test/testcases/tests/level3/core/nodeisequalnode11.xml
new file mode 100644
index 0000000..d7bff0f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode11.xml
@@ -0,0 +1,76 @@
+<?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>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode12.xml b/test/testcases/tests/level3/core/nodeisequalnode12.xml
new file mode 100644
index 0000000..2f7a671
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode12.xml
@@ -0,0 +1,42 @@
+<?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="nodeisequalnode12">
+<metadata>
+<title>nodeisequalnode12</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqual verify if the 2 documentElement nodes of different documents created
+ by parsing the same xml document are 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem1" type="Element"/>
+<var name="elem2" type="Element"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentElement var="elem1" obj="doc"/>
+<documentElement var="elem2" obj="doc"/>
+<isEqualNode var="isEqual" obj="elem1" arg="elem2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode12"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode13.xml b/test/testcases/tests/level3/core/nodeisequalnode13.xml
new file mode 100644
index 0000000..f7dd2fe
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode13.xml
@@ -0,0 +1,59 @@
+<?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="nodeisequalnode13">
+<metadata>
+<title>nodeisequalnode13</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. Now import it once more with deep=true and using isEqual
+ verify if they are now 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="employeeList" type="NodeList"/>
+<var name="elem1" type="Element"/>
+<var name="elem2" type="Element"/>
+<var name="elem3" 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"/>
+<cloneNode var="elem2" obj="elem1" deep="false"/>
+<isEqualNode var="isEqual" obj="elem1" arg="elem2"/>
+<assertFalse actual="isEqual" id="nodeisequalnodeFalse13"/>
+<cloneNode var="elem3" obj="elem1" deep="true"/>
+<isEqualNode var="isEqual" obj="elem1" arg="elem3"/>
+<assertTrue actual="isEqual" id="nodeisequalnodeTrue13"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode14.xml b/test/testcases/tests/level3/core/nodeisequalnode14.xml
new file mode 100644
index 0000000..3e7615f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode14.xml
@@ -0,0 +1,44 @@
+<?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="nodeisequalnode14">
+<metadata>
+<title>nodeisequalnode14</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 Attr nodes having the same nodeName and a null namespaceURI
+ attribute, one created using createAttribute and the other createAttributeNS, are not equal.
+ Note the localName for an Attr created with DOM Level 1 methods is null.
+</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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attr1" type="Attr"/>
+<var name="attr2" type="Attr"/>
+<var name="isEqual" type="boolean"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createAttribute var="attr1" obj="doc" name='"root"'/>
+<createAttributeNS var="attr2" obj="doc" namespaceURI="nullNSURI" qualifiedName='"root"'/>
+<isEqualNode var="isEqual" obj="attr1" arg="attr2"/>
+<assertFalse actual="isEqual" id="nodeisequalnode14"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode15.xml b/test/testcases/tests/level3/core/nodeisequalnode15.xml
new file mode 100644
index 0000000..3f6787c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode15.xml
@@ -0,0 +1,52 @@
+<?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="nodeisequalnode15">
+<metadata>
+<title>nodeisequalnode15</title>
+<creator>IBM</creator>
+<description>
+ Using isEqualNode check if 2 Attr nodes having the same nodeName and a null namespaceURI
+ attribute, one created using createAttributeNS and the other retreived from this document
+ are 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attr1" type="Attr"/>
+<var name="attr2" type="Attr"/>
+<var name="addrElement" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="isEqual" type="boolean"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"acronym"' var="elementList"/>
+<item interface="NodeList" obj="elementList" var="addrElement" index="3" />
+<getAttributeNodeNS obj="addrElement" var="attr1" namespaceURI='nullNS' localName='"title"'/>
+<if><implementationAttribute name="namespaceAware" value="true"/>
+ <createAttributeNS var="attr2" obj="doc" namespaceURI='nullNS' qualifiedName='"title"'/>
+ <else>
+ <createAttribute var="attr2" obj="doc" name='"title"'/>
+ </else>
+</if>
+<value obj="attr2" value='"Yes"'/>
+<isEqualNode var="isEqual" obj="attr1" arg="attr2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode15"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode16.xml b/test/testcases/tests/level3/core/nodeisequalnode16.xml
new file mode 100644
index 0000000..067195f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode16.xml
@@ -0,0 +1,47 @@
+<?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="nodeisequalnode16">
+<metadata>
+<title>nodeisequalnode16</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if a default attribute node and a cloned default attribute
+ node are 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attr1" type="Attr"/>
+<var name="attr2" type="Attr"/>
+<var name="addrElement" type="Element"/>
+<var name="elementList" type="NodeList"/>
+<var name="isEqual" type="boolean"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elementList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="addrElement" obj="elementList" index="3" interface="NodeList"/>
+<getAttributeNodeNS obj="addrElement" var="attr1" namespaceURI="nullNSURI" localName='"dir"'/>
+<cloneNode var="attr2" obj="attr1" deep="true"/>
+<isEqualNode var="isEqual" obj="attr1" arg="attr2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode16"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode17.xml b/test/testcases/tests/level3/core/nodeisequalnode17.xml
new file mode 100644
index 0000000..c4826cd
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode17.xml
@@ -0,0 +1,52 @@
+<?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="nodeisequalnode17">
+<metadata>
+<title>nodeisequalnode17</title>
+<creator>IBM</creator>
+<description>
+ Using isEqualNode check if a new Attr node created in this Document is equal to
+ the imported node returned when it is imported into a new Document.
+</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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="attr1" type="Attr"/>
+<var name="attr2" type="Attr"/>
+<var name="isEqual" type="boolean"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="nullNSURI" type="DOMString" 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"/>
+<createAttributeNS var="attr1" obj="doc" namespaceURI="nullNSURI" qualifiedName='"root"'/>
+<importNode var="attr2" obj="newDoc" importedNode="attr1" deep="true"/>
+<isEqualNode var="isEqual" obj="attr1" arg="attr2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode17"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode18.xml b/test/testcases/tests/level3/core/nodeisequalnode18.xml
new file mode 100644
index 0000000..aa1866f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode18.xml
@@ -0,0 +1,54 @@
+<?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="nodeisequalnode18">
+<metadata>
+<title>nodeisequalnode18</title>
+<creator>IBM</creator>
+<description>
+ Using isEqualNode check if a new Attr node created in this Document is equal to
+ the attr node adopted by a new document.
+</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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="attr1" type="Attr"/>
+<var name="attr2" type="Attr"/>
+<var name="isEqual" type="boolean"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="nullNSURI" type="DOMString" 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"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<createAttributeNS var="attr1" obj="doc" namespaceURI="nullNSURI" qualifiedName='"title"'/>
+<adoptNode var="attr2" obj="newDoc" source="attr1" />
+<if><notNull obj="attr2"/>
+<isEqualNode var="isEqual" obj="attr1" arg="attr2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode18"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode19.xml b/test/testcases/tests/level3/core/nodeisequalnode19.xml
new file mode 100644
index 0000000..77f714c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode19.xml
@@ -0,0 +1,43 @@
+<?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="nodeisequalnode19">
+<metadata>
+<title>nodeisequalnode19</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 Attr nodes having the same nodeName but different namespaceURIs
+ are not 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attr1" type="Attr"/>
+<var name="attr2" type="Attr"/>
+<var name="isEqual" type="boolean"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createAttributeNS var="attr1" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"lang"'/>
+<createAttributeNS var="attr2" obj="doc" namespaceURI="nullNSURI" qualifiedName='"lang"'/>
+<isEqualNode var="isEqual" obj="attr1" arg="attr2"/>
+<assertFalse actual="isEqual" id="nodeisequalnode19"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode20.xml b/test/testcases/tests/level3/core/nodeisequalnode20.xml
new file mode 100644
index 0000000..6ede462
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode20.xml
@@ -0,0 +1,40 @@
+<?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="nodeisequalnode20">
+<metadata>
+<title>nodeisequalnode20</title>
+<creator>IBM</creator>
+<description>
+ Using isEqualNode check if an Element and an Attr nodes having the same nodeName
+ and namsepaceURI are not 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="attr1" type="Attr"/>
+<var name="elem1" type="Element"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="elem1" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:html"'/>
+<createAttributeNS var="attr1" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:html"'/>
+<isEqualNode var="isEqual" obj="attr1" arg="elem1"/>
+<assertFalse actual="isEqual" id="nodeisequalnode20"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode21.xml b/test/testcases/tests/level3/core/nodeisequalnode21.xml
new file mode 100644
index 0000000..7c31e30
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode21.xml
@@ -0,0 +1,44 @@
+<?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="nodeisequalnode21">
+<metadata>
+<title>nodeisequalnode21</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 DocumentType nodes returned by parsing the same xml document
+ are 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"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="docType1" type="DocumentType"/>
+<var name="docType2" type="DocumentType"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc1" href="hc_staff" willBeModified="false"/>
+<load var="doc2" href="hc_staff" willBeModified="false"/>
+<doctype var="docType1" obj="doc1"/>
+<doctype var="docType2" obj="doc2"/>
+<isEqualNode var="isEqual" obj="docType1" arg="docType2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode21"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode22.xml b/test/testcases/tests/level3/core/nodeisequalnode22.xml
new file mode 100644
index 0000000..96bfd99
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode22.xml
@@ -0,0 +1,54 @@
+<?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="nodeisequalnode22">
+<metadata>
+<title>nodeisequalnode22</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 new DocumentType having null public and system ids
+ are 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"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="domImpl1" type="DOMImplementation"/>
+<var name="domImpl2" type="DOMImplementation"/>
+<var name="docType1" type="DocumentType"/>
+<var name="docType2" type="DocumentType"/>
+<var name="isEqual" type="boolean"/>
+<var name="nullPubId" type="DOMString" isNull="true"/>
+<var name="nullSysId" type="DOMString" isNull="true"/>
+<var name="oldDocType" type="DocumentType"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc1" href="barfoo" willBeModified="false"/>
+<doctype var="oldDocType" obj="doc1"/>
+<name var="rootName" obj="oldDocType" interface="DocumentType"/>
+<load var="doc2" href="barfoo" willBeModified="false"/>
+<implementation var="domImpl1" obj="doc1"/>
+<implementation var="domImpl2" obj="doc2"/>
+<createDocumentType var="docType1" obj="domImpl1" qualifiedName="rootName" publicId="nullPubId" systemId="nullSysId"/>
+<createDocumentType var="docType2" obj="domImpl2" qualifiedName="rootName" publicId="nullPubId" systemId="nullSysId"/>
+<isEqualNode var="isEqual" obj="docType1" arg="docType2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode22"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode25.xml b/test/testcases/tests/level3/core/nodeisequalnode25.xml
new file mode 100644
index 0000000..a9fab69
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode25.xml
@@ -0,0 +1,52 @@
+<?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="nodeisequalnode25">
+<metadata>
+<title>nodeisequalnode25</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 EntityNode having the same name of two DocumentType nodes
+ returned by parsing the same xml document are 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"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="docType1" type="DocumentType"/>
+<var name="docType2" type="DocumentType"/>
+<var name="entitiesMap1" type="NamedNodeMap"/>
+<var name="entitiesMap2" type="NamedNodeMap"/>
+<var name="alpha" type="Entity"/>
+<var name="beta" type="Entity"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc1" href="hc_staff" willBeModified="false"/>
+<load var="doc2" href="hc_staff" willBeModified="false"/>
+<doctype var="docType1" obj="doc1"/>
+<doctype var="docType2" obj="doc2"/>
+<entities var="entitiesMap1" obj="docType1"/>
+<entities var="entitiesMap2" obj="docType2"/>
+<getNamedItem var="alpha" obj="entitiesMap1" name='"delta"'/>
+<getNamedItem var="beta" obj="entitiesMap2" name='"delta"'/>
+<isEqualNode var="isEqual" obj="alpha" arg="beta"/>
+<assertTrue actual="isEqual" id="nodeisequalnode25"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode26.xml b/test/testcases/tests/level3/core/nodeisequalnode26.xml
new file mode 100644
index 0000000..5d8febf
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode26.xml
@@ -0,0 +1,52 @@
+<?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="nodeisequalnode26">
+<metadata>
+<title>nodeisequalnode26</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 NotationNode having the same name of two DocumnotationType nodes
+ returned by parsing the same xml documnotation are 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"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="docType1" type="DocumentType"/>
+<var name="docType2" type="DocumentType"/>
+<var name="notationsMap1" type="NamedNodeMap"/>
+<var name="notationsMap2" type="NamedNodeMap"/>
+<var name="notation1" type="Notation"/>
+<var name="notation2" type="Notation"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc1" href="hc_staff" willBeModified="false"/>
+<load var="doc2" href="hc_staff" willBeModified="false"/>
+<doctype var="docType1" obj="doc1"/>
+<doctype var="docType2" obj="doc2"/>
+<notations var="notationsMap1" obj="docType1"/>
+<notations var="notationsMap2" obj="docType2"/>
+<getNamedItem var="notation1" obj="notationsMap1" name='"notation1"'/>
+<getNamedItem var="notation2" obj="notationsMap2" name='"notation1"'/>
+<isEqualNode var="isEqual" obj="notation1" arg="notation2"/>
+<assertTrue actual="isEqual" id="nodeisequalnode26"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode27.xml b/test/testcases/tests/level3/core/nodeisequalnode27.xml
new file mode 100644
index 0000000..1844ad8
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode27.xml
@@ -0,0 +1,48 @@
+<?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="nodeisequalnode27">
+<metadata>
+<title>nodeisequalnode27</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 EntityNode having the same name of two DocumentType nodes
+ returned by parsing the same xml document are 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="alpha" type="Entity"/>
+<var name="notation1" type="Notation"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<notations var="notationsMap" obj="docType"/>
+<getNamedItem var="alpha" obj="entitiesMap" name='"alpha"'/>
+<getNamedItem var="notation1" obj="notationsMap" name='"notation1"'/>
+<isEqualNode var="isEqual" obj="notation1" arg="alpha"/>
+<assertFalse actual="isEqual" id="nodeisequalnode27"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode28.xml b/test/testcases/tests/level3/core/nodeisequalnode28.xml
new file mode 100644
index 0000000..886395c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode28.xml
@@ -0,0 +1,46 @@
+<?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="nodeisequalnode28">
+<metadata>
+<title>nodeisequalnode28</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 new Text nodes having null text are equal and two others
+ having different data are not 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="text1" type="Text"/>
+<var name="text2" type="Text"/>
+<var name="text3" type="Text"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createTextNode var="text1" obj="doc" data='""'/>
+<createTextNode var="text2" obj="doc" data='""'/>
+<createTextNode var="text3" obj="doc" data='"#Text"'/>
+<isEqualNode var="isEqual" obj="text1" arg="text2"/>
+<assertTrue actual="isEqual" id="nodeisequalnodeTrue28"/>
+<isEqualNode var="isEqual" obj="text1" arg="text3"/>
+<assertFalse actual="isEqual" id="nodeisequalnodeFalse28"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode29.xml b/test/testcases/tests/level3/core/nodeisequalnode29.xml
new file mode 100644
index 0000000..57056cc
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode29.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="comment/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="nodeisequalnode29">
+<metadata>
+<title>nodeisequalnode29</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 new Comment nodes having the same data are equal and two others
+ having different data are not 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="comment1" type="Comment"/>
+<var name="comment2" type="Comment"/>
+<var name="comment3" type="Comment"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createComment var="comment1" obj="doc" data='"comment"'/>
+<createComment var="comment2" obj="doc" data='"comment"'/>
+<createComment var="comment3" obj="doc" data='"#Comment"'/>
+<isEqualNode var="isEqual" obj="comment1" arg="comment2"/>
+<assertTrue actual="isEqual" id="nodeisequalnodeTrue29"/>
+<isEqualNode var="isEqual" obj="comment1" arg="comment3"/>
+<assertFalse actual="isEqual" id="nodeisequalnodeFalse29"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode31.xml b/test/testcases/tests/level3/core/nodeisequalnode31.xml
new file mode 100644
index 0000000..fc77ce5
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode31.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="cdata/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="nodeisequalnode31">
+<metadata>
+<title>nodeisequalnode31</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 new CDATASection nodes having the same data are equal and two others
+ having different data are not 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="cdata1" type="CDATASection"/>
+<var name="cdata2" type="CDATASection"/>
+<var name="cdata3" type="CDATASection"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createCDATASection var="cdata1" obj="doc" data='"cdata"'/>
+<createCDATASection var="cdata2" obj="doc" data='"cdata"'/>
+<createCDATASection var="cdata3" obj="doc" data='"#CDATASection"'/>
+<isEqualNode var="isEqual" obj="cdata1" arg="cdata2"/>
+<assertTrue actual="isEqual" id="nodeisequalnodeTrue29"/>
+<isEqualNode var="isEqual" obj="cdata1" arg="cdata3"/>
+<assertFalse actual="isEqual" id="nodeisequalnodeFalse29"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeisequalnode32.xml b/test/testcases/tests/level3/core/nodeisequalnode32.xml
new file mode 100644
index 0000000..31f9d22
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeisequalnode32.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="pi/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="nodeisequalnode32">
+<metadata>
+<title>nodeisequalnode32</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isEqualNode check if 2 new ProcessingInstruction nodes having the same data are equal and two others
+ having different data are not 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"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="pi1" type="ProcessingInstruction"/>
+<var name="pi2" type="ProcessingInstruction"/>
+<var name="pi3" type="ProcessingInstruction"/>
+<var name="isEqual" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createProcessingInstruction var="pi1" obj="doc" data='"pi"' target='"Target1"'/>
+<createProcessingInstruction var="pi2" obj="doc" data='"pi"' target='"Target1"'/>
+<createProcessingInstruction var="pi3" obj="doc" data='"#ProcessingInstruction"' target='"Target1"'/>
+<isEqualNode var="isEqual" obj="pi1" arg="pi2"/>
+<assertTrue actual="isEqual" id="nodeisequalnodeTrue29"/>
+<isEqualNode var="isEqual" obj="pi1" arg="pi3"/>
+<assertFalse actual="isEqual" id="nodeisequalnodeFalse29"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeissamenode01.xml b/test/testcases/tests/level3/core/nodeissamenode01.xml
new file mode 100644
index 0000000..2dcd51f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeissamenode01.xml
@@ -0,0 +1,40 @@
+<?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="nodeissamenode01">
+<metadata>
+<title>nodeissamenode01</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isSameNode to check if 2 Document nodes that are equal but do not reference the
+ same object are not the same
+</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-isSameNode"/>
+</metadata>
+<var name="doc1" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="isSame" type="boolean"/>
+<load var="doc1" href="hc_staff" willBeModified="false"/>
+<load var="doc2" href="hc_staff" willBeModified="false"/>
+<isSameNode var="isSame" obj="doc1" other="doc2"/>
+<assertFalse actual="isSame" id="nodeissamenode01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeissamenode02.xml b/test/testcases/tests/level3/core/nodeissamenode02.xml
new file mode 100644
index 0000000..87b4cfe
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeissamenode02.xml
@@ -0,0 +1,42 @@
+<?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="nodeissamenode02">
+<metadata>
+<title>nodeissamenode02</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isSameNode check if 2 DocumentType nodes that reference the same object are
+ the same.
+</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-isSameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType1" type="DocumentType"/>
+<var name="docType2" type="DocumentType"/>
+<var name="isSame" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType1" obj="doc"/>
+<doctype var="docType2" obj="doc"/>
+<isSameNode var="isSame" obj="docType1" other="docType2"/>
+<assertTrue actual="isSame" id="nodeissamenode02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeissamenode03.xml b/test/testcases/tests/level3/core/nodeissamenode03.xml
new file mode 100644
index 0000000..fc8e9e7
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeissamenode03.xml
@@ -0,0 +1,42 @@
+<?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="nodeissamenode03">
+<metadata>
+<title>nodeissamenode03</title>
+<creator>IBM</creator>
+<description>
+ Using isSameNode check if 2 Element nodes that reference the same object are
+ the same.
+</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-isSameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element1" type="Element"/>
+<var name="element2" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="isSame" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="element1" obj="childList" index="0" interface="NodeList"/>
+<item var="element2" obj="childList" index="0" interface="NodeList"/>
+<isSameNode var="isSame" obj="element2" other="element1"/>
+<assertTrue actual="isSame" id="nodeissamenode03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeissamenode04.xml b/test/testcases/tests/level3/core/nodeissamenode04.xml
new file mode 100644
index 0000000..a9f3814
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeissamenode04.xml
@@ -0,0 +1,40 @@
+<?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="nodeissamenode04">
+<metadata>
+<title>nodeissamenode04</title>
+<creator>IBM</creator>
+<description>
+ Using isSameNode check if 2 Element nodes that are equal but do not reference the
+ same object are not the same.
+</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-isSameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element1" type="Element"/>
+<var name="element2" type="Element"/>
+<var name="isSame" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="element1" obj="doc" qualifiedName='"xhtml:br"' namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<createElementNS var="element2" obj="doc" qualifiedName='"xhtml:br"' namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<isSameNode var="isSame" obj="element2" other="element1"/>
+<assertFalse actual="isSame" id="nodeissamenode04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeissamenode05.xml b/test/testcases/tests/level3/core/nodeissamenode05.xml
new file mode 100644
index 0000000..b017c36
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeissamenode05.xml
@@ -0,0 +1,42 @@
+<?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="nodeissamenode05">
+<metadata>
+<title>nodeissamenode05</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isSameNode check if 2 Document Element nodes that reference the same object are
+ the same.
+</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-isSameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element1" type="Element"/>
+<var name="element2" type="Element"/>
+<var name="isSame" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentElement var="element1" obj="doc"/>
+<documentElement var="element2" obj="doc"/>
+<isSameNode var="isSame" obj="element2" other="element1"/>
+<assertTrue actual="isSame" id="nodeissamenode05"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeissamenode06.xml b/test/testcases/tests/level3/core/nodeissamenode06.xml
new file mode 100644
index 0000000..75eca7f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeissamenode06.xml
@@ -0,0 +1,46 @@
+<?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="nodeissamenode06">
+<metadata>
+<title>nodeissamenode06</title>
+<creator>IBM</creator>
+<description>
+ Using isSameNode check if 2 Document Element nodes that reference the same object are
+ the same.
+</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-isSameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="element" type="Element"/>
+<var name="element1" type="Element"/>
+<var name="attr1" type="Attr"/>
+<var name="attr2" type="Attr"/>
+<var name="childList" type="NodeList"/>
+<var name="isSame" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="element" obj="childList" index="2" interface="NodeList"/>
+<item var="element1" obj="childList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr1" obj="element" name='"class"'/>
+<getAttributeNode var="attr2" obj="element1" name='"class"'/>
+<isSameNode var="isSame" obj="attr1" other="attr2"/>
+<assertTrue actual="isSame" id="nodeissamenode06"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeissamenode07.xml b/test/testcases/tests/level3/core/nodeissamenode07.xml
new file mode 100644
index 0000000..5182ef8
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeissamenode07.xml
@@ -0,0 +1,46 @@
+<?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="nodeissamenode07">
+<metadata>
+<title>nodeissamenode07</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isSameNode check if 2 Entity nodes that reference the same object are
+ the same.
+</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-isSameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity1" type="Entity"/>
+<var name="entity2" type="Entity"/>
+<var name="isSame" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity1" obj="entitiesMap" name='"delta"'/>
+<getNamedItem var="entity2" obj="entitiesMap" name='"delta"'/>
+<isSameNode var="isSame" obj="entity1" other="entity2"/>
+<assertTrue actual="isSame" id="nodeissamenode07"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeissamenode08.xml b/test/testcases/tests/level3/core/nodeissamenode08.xml
new file mode 100644
index 0000000..3beb40a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeissamenode08.xml
@@ -0,0 +1,46 @@
+<?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="nodeissamenode08">
+<metadata>
+<title>nodeissamenode08</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isSameNode check if 2 Notation nodes that reference the same object are
+ the same.
+</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-isSameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="notation1" type="Notation"/>
+<var name="notation2" type="Notation"/>
+<var name="isSame" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<notations var="entitiesMap" obj="docType"/>
+<getNamedItem var="notation1" obj="entitiesMap" name='"notation1"'/>
+<getNamedItem var="notation2" obj="entitiesMap" name='"notation1"'/>
+<isSameNode var="isSame" obj="notation1" other="notation2"/>
+<assertTrue actual="isSame" id="nodeissamenode08"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeissamenode09.xml b/test/testcases/tests/level3/core/nodeissamenode09.xml
new file mode 100644
index 0000000..93747c5
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeissamenode09.xml
@@ -0,0 +1,43 @@
+<?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="nodeissamenode09">
+<metadata>
+<title>nodeissamenode09</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using isSameNode check if an Entity and its docType nodes are not the same.
+</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-isSameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="isSame" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"alpha"'/>
+<isSameNode var="isSame" obj="docType" other="entity"/>
+<assertFalse actual="isSame" id="nodeissamenode09"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodeissamenode10.xml b/test/testcases/tests/level3/core/nodeissamenode10.xml
new file mode 100644
index 0000000..bf01101
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodeissamenode10.xml
@@ -0,0 +1,48 @@
+<?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="nodeissamenode10">
+<metadata>
+<title>nodeissamenode10</title>
+<creator>IBM</creator>
+<description>
+ Using isSameNode check if an new Document and a new Element node are not the same.
+</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-isSameNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="element" type="Element"/>
+<var name="isSame" 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"/>
+<createElementNS var="element" obj="newDoc" namespaceURI="rootNS" qualifiedName="rootName"/>
+<isSameNode var="isSame" obj="newDoc" other="element"/>
+<assertFalse actual="isSame" id="nodeissamenode10"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri01.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri01.xml
new file mode 100644
index 0000000..cf79ae2
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri01.xml
@@ -0,0 +1,37 @@
+<?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="nodelookupnamespaceuri01">
+<metadata>
+<title>nodelookupnamespaceuri01</title>
+<creator>IBM</creator>
+<description>
+Return value from lookupNamespaceURI(null) on a Document node with no default namespace should be null.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="nullPrefix" type="DOMString" isNull="true"/>
+<load var="doc" href="barfoo_nodefaultns" willBeModified="false"/>
+<lookupNamespaceURI var="namespaceURI" obj="doc" prefix="nullPrefix" interface="Node"/>
+<assertNull actual="namespaceURI" id="nodelookupnamespaceuri01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri02.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri02.xml
new file mode 100644
index 0000000..572ab5b
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri02.xml
@@ -0,0 +1,50 @@
+<?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="nodelookupnamespaceuri02">
+<metadata>
+<title>nodelookupnamespaceuri02</title>
+<creator>IBM</creator>
+<description>
+ Using lookupNamespaceURI on a new Document node with a namespaceURI and prefix
+ and check if the value returned is the same namespaceURI.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="qname" 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"/>
+<plus var="qname" op1='"dom3:"' op2="rootName"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="qname" doctype="nullDocType"/>
+<lookupNamespaceURI var="namespaceURI" obj="newDoc" prefix='"dom3"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected="rootNS" id="nodelookupnamespaceuri02" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri03.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri03.xml
new file mode 100644
index 0000000..e2a99ca
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri03.xml
@@ -0,0 +1,42 @@
+<?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="nodelookupnamespaceuri03">
+<metadata>
+<title>nodelookupnamespaceuri03</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using lookupNamespaceURI on this DocumentType node check if the value returned is Null .
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="nullPrefix" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<lookupNamespaceURI var="namespaceURI" obj="docType" prefix="nullPrefix" interface="Node"/>
+<assertNull actual="namespaceURI" id="nodelookupnamespaceuri03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri04.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri04.xml
new file mode 100644
index 0000000..c7e20e7
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri04.xml
@@ -0,0 +1,49 @@
+<?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="nodelookupnamespaceuri04">
+<metadata>
+<title>nodelookupnamespaceuri04</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using lookupNamespaceURI on an Entity and Notation node and check if the value returned is Null .
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entity" type="Entity"/>
+<var name="notation" type="Notation"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<notations var="notationsMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"alpha"'/>
+<getNamedItem var="notation" obj="notationsMap" name='"notation1"'/>
+<lookupNamespaceURI var="namespaceURI" obj="entity" prefix='""' interface="Node"/>
+<assertNull actual="namespaceURI" id="nodelookupnamespaceuri04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri05.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri05.xml
new file mode 100644
index 0000000..cd4eaac
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri05.xml
@@ -0,0 +1,52 @@
+<?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="nodelookupnamespaceuri05">
+<metadata>
+<title>nodelookupnamespaceuri05</title>
+<creator>IBM</creator>
+<description>
+ Using lookupNamespaceURI on the DocumentElement node of a new document with a
+ namespaceURI and prefix and check if the namespaceURI value returned is valid.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="qname" 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"/>
+<plus var="qname" op1='"dom3:"' op2="rootName"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="qname" doctype="nullDocType"/>
+<documentElement var="elem" obj="newDoc"/>
+<lookupNamespaceURI var="namespaceURI" obj="elem" prefix='"dom3"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected="rootNS" id="nodelookupnamespaceuri05" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri06.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri06.xml
new file mode 100644
index 0000000..65c4d28
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri06.xml
@@ -0,0 +1,42 @@
+<?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="nodelookupnamespaceuri06">
+<metadata>
+<title>nodelookupnamespaceuri06</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on an Element node with no prefix, which has a namespace
+ attribute declaration with a namespace prefix and check if the value of the namespaceURI
+ returned by using its prefix as a parameter is valid.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="2" interface="NodeList"/>
+<lookupNamespaceURI var="namespaceURI" obj="elem" prefix='"dmstc"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected='"http://www.netzero.com"' id="nodelookupnamespaceuri06" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri07.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri07.xml
new file mode 100644
index 0000000..1032782
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri07.xml
@@ -0,0 +1,42 @@
+<?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="nodelookupnamespaceuri07">
+<metadata>
+<title>nodelookupnamespaceuri07</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on an Element node with no prefix, which has a namespace
+ attribute declaration with a namespace prefix in its parent Element node and check if
+ the value of the namespaceURI returned by using its prefix as a parameter is valid.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="2" interface="NodeList"/>
+<lookupNamespaceURI var="namespaceURI" obj="elem" prefix='"dmstc"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected='"http://www.netzero.com"' id="nodelookupnamespaceuri07" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri08.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri08.xml
new file mode 100644
index 0000000..2d04786
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri08.xml
@@ -0,0 +1,46 @@
+<?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="nodelookupnamespaceuri08">
+<metadata>
+<title>nodelookupnamespaceuri08</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on an Element node with no prefix, which has 2 namespace
+ attribute declarations with and without namespace prefixes and check if the value of the prefix
+ returned by using a valid prefix and an empty prefix as a parameter is a valid
+ namespaceURI or null.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="namespaceURIEmpty" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<lookupNamespaceURI var="namespaceURI" obj="elem" prefix='"dmstc"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected='"http://www.usa.com"' id="nodelookupnamespaceuri08" ignoreCase="false"/>
+<lookupNamespaceURI var="namespaceURIEmpty" obj="elem" prefix='""' interface="Node"/>
+<assertNull actual="namespaceURIEmpty" id="nodelookupnamespaceprefixEmpty08"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri09.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri09.xml
new file mode 100644
index 0000000..04d8670
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri09.xml
@@ -0,0 +1,45 @@
+<?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="nodelookupnamespaceuri09">
+<metadata>
+<title>nodelookupnamespaceuri09</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on an Element node with no prefix, whose parent has no prefix and
+ 2 namespace attribute declarations with and without namespace prefixes and check if the value of
+ the namespaceURI returned by using each prefix as a parameter is valid.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="namespaceURIEmpty" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<lookupNamespaceURI var="namespaceURI" obj="elem" prefix='"dmstc"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected='"http://www.usa.com"' id="nodelookupnamespaceuri09" ignoreCase="false"/>
+<lookupNamespaceURI var="namespaceURIEmpty" obj="elem" prefix='""' interface="Node"/>
+<assertNull actual="namespaceURIEmpty" id="nodelookupnamespaceprefixEmpty09"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri10.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri10.xml
new file mode 100644
index 0000000..263aa7d
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri10.xml
@@ -0,0 +1,44 @@
+<?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="nodelookupnamespaceuri10">
+<metadata>
+<title>nodelookupnamespaceuri10</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on a new Child of a new Element node with a namespace URI
+ and prefix and using the parents prefix as an argument, verify if the namespaceURI
+ returned is a valid namespaceURI for the parent.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="parent" type="Element"/>
+<var name="child" type="Element"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:body"'/>
+<createElement var="child" obj="doc" tagName='"p"'/>
+<appendChild obj="parent" var="appendedChild" newChild="child"/>
+<lookupNamespaceURI var="namespaceURI" obj="child" prefix='"xhtml"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected='"http://www.w3.org/1999/xhtml"' id="nodelookupnamespaceuri10" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri11.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri11.xml
new file mode 100644
index 0000000..0b7721c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri11.xml
@@ -0,0 +1,53 @@
+<?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="nodelookupnamespaceuri11">
+<metadata>
+<title>nodelookupnamespaceuri11</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on an imported new Element node with a namespace URI and prefix
+ in a new Document and using the parents prefix as an argument, verify if the namespaceURI
+ returned is a valid namespaceURI of the parent.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="importedNode" type="Element"/>
+<var name="namespaceURI" type="DOMString"/>
+<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"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<importNode var="importedNode" obj="newDoc" importedNode="elem" deep="true"/>
+<lookupNamespaceURI var="namespaceURI" obj="importedNode" prefix='"dom3"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected='"http://www.w3.org/1999/xhtml"' id="nodelookupnamespaceuri11" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri13.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri13.xml
new file mode 100644
index 0000000..1ecd2bf
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri13.xml
@@ -0,0 +1,47 @@
+<?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="nodelookupnamespaceuri13">
+<metadata>
+<title>nodelookupnamespaceuri13</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on a Element's new Text node, which has a namespace attribute declaration
+ with a namespace prefix in its parent Element node and check if the value of the namespaceURI
+ returned by using its prefix as a parameter is valid.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createTextNode var="txt" obj="doc" data='"Text"'/>
+<appendChild obj="elem" var="appendedChild" newChild="txt"/>
+<appendChild obj="docElem" var="appendedChild" newChild="elem"/>
+<lookupNamespaceURI var="namespaceURI" obj="txt" prefix='"dom3"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected='"http://www.w3.org/1999/xhtml"' id="nodelookupnamespaceuri13" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri14.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri14.xml
new file mode 100644
index 0000000..0deed71
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri14.xml
@@ -0,0 +1,47 @@
+<?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="nodelookupnamespaceuri14">
+<metadata>
+<title>nodelookupnamespaceuri14</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on a Element's new Text node, which has a namespace attribute declaration
+ with a namespace prefix in its parent Element node and check if the value of the namespaceURI
+ returned by using its prefix as a parameter is valid.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="cdata" type="CDATASection"/>
+<var name="lookupNamespaceURI" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createCDATASection var="cdata" obj="doc" data='"Text"'/>
+<appendChild var="appendedChild" obj="elem" newChild="cdata"/>
+<appendChild var="appendedChild" obj="docElem" newChild="elem"/>
+<lookupNamespaceURI var="lookupNamespaceURI" obj="cdata" prefix='"dom3"' interface="Node"/>
+<assertEquals actual="lookupNamespaceURI" expected='"http://www.w3.org/1999/xhtml"' id="nodelookupnamespaceuri14" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri15.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri15.xml
new file mode 100644
index 0000000..f969382
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri15.xml
@@ -0,0 +1,49 @@
+<?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="nodelookupnamespaceuri15">
+<metadata>
+<title>nodelookupnamespaceuri15</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on a Element's new Comment node, which has a namespace attribute declaration
+ with a namespace prefix in its parent Element node and check if the value of the namespaceURI
+ returned by using its prefix as a parameter is valid.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="comment" type="Comment"/>
+<var name="clonedComment" type="Comment"/>
+<var name="namespaceURI" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createComment var="comment" obj="doc" data='"Text"'/>
+<cloneNode var="clonedComment" obj="comment" deep="true"/>
+<appendChild obj="elem" var="appendedChild" newChild="clonedComment"/>
+<appendChild obj="docElem" var="appendedChild" newChild="elem"/>
+<lookupNamespaceURI var="namespaceURI" obj="clonedComment" prefix='"dom3"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected='"http://www.w3.org/1999/xhtml"' id="nodelookupnamespaceuri15" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri16.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri16.xml
new file mode 100644
index 0000000..4ed8075
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri16.xml
@@ -0,0 +1,43 @@
+<?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="nodelookupnamespaceuri16">
+<metadata>
+<title>nodelookupnamespaceuri16</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on a new Attribute node with with a namespace URI
+ and prefix and verify if the namespaceURI returned is null.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="attNode" type="Attr"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<setAttributeNodeNS obj="elem" var="attNode" newAttr="attr"/>
+<lookupNamespaceURI var="namespaceURI" obj="attr" prefix='"xml"' interface="Node"/>
+<assertNull actual="namespaceURI" id="nodelookupnamespaceuri16"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri17.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri17.xml
new file mode 100644
index 0000000..20620f1
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri17.xml
@@ -0,0 +1,46 @@
+<?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="nodelookupnamespaceuri17">
+<metadata>
+<title>nodelookupnamespaceuri17</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on the title attribute node of the acronym node with
+ a namespaceURI and a node prefix and check if the value of the namespaceURI returned by
+ using its prefix as a parameter is valid.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="2" interface="NodeList"/>
+<attributes var="attributesMap" obj="elem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"xsi:noNamespaceSchemaLocation"'/>
+<lookupNamespaceURI var="namespaceURI" obj="attr" prefix='"dmstc"' interface="Node" />
+<assertEquals actual="namespaceURI" expected='"http://www.netzero.com"' id="nodelookupnamespaceuri17" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri18.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri18.xml
new file mode 100644
index 0000000..9bb3dff
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri18.xml
@@ -0,0 +1,46 @@
+<?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="nodelookupnamespaceuri18">
+<metadata>
+<title>nodelookupnamespaceuri18</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on the default attribute node of the p node with
+ a namespaceURI and a node prefix and check if the value of the namespaceURI returned by
+ using its prefix as a parameter is valid.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<attributes var="attributesMap" obj="elem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"dir"'/>
+<lookupNamespaceURI var="namespaceURI" obj="attr" prefix='"nm"' interface="Node" />
+<assertEquals actual="namespaceURI" expected='"http://www.altavista.com"' id="nodelookupnamespaceuri18" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri19.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri19.xml
new file mode 100644
index 0000000..2af768e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri19.xml
@@ -0,0 +1,46 @@
+<?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="nodelookupnamespaceuri19">
+<metadata>
+<title>nodelookupnamespaceuri19</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupNamespaceURI on the an attribute node without a namespace prefix of
+ an Element node that has a namespaceURI and prefix, and check if the value of the namespaceURI
+ returned by using the Elements prefix as a parameter is valid.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<attributes var="attributesMap" obj="elem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+<lookupNamespaceURI var="namespaceURI" obj="attr" prefix='"xsi"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected='"http://www.w3.org/2001/XMLSchema-instance"' id="nodelookupnamespaceuri19" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupnamespaceuri20.xml b/test/testcases/tests/level3/core/nodelookupnamespaceuri20.xml
new file mode 100644
index 0000000..8b2ac81
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupnamespaceuri20.xml
@@ -0,0 +1,49 @@
+<?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="nodelookupnamespaceuri20">
+<metadata>
+<title>nodelookupnamespaceuri20</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Invoke lookupNamespaceURI on the an attribute node without a namespace prefix of
+ an Element node that has a namespaceURI and prefix, and check if the value of the namespaceURI
+ returned by using the Elements prefix as a parameter is valid.
+</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-lookupNamespaceURI"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="namespaceURI" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<attributes var="attributesMap" obj="elem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"xmlns:nm"'/>
+<lookupNamespaceURI var="namespaceURI" obj="attr" prefix='"nm"' interface="Node"/>
+<assertEquals actual="namespaceURI" expected='"http://www.altavista.com"' id="nodelookupnamespaceuri20" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix01.xml b/test/testcases/tests/level3/core/nodelookupprefix01.xml
new file mode 100644
index 0000000..8310163
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix01.xml
@@ -0,0 +1,40 @@
+<?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="nodelookupprefix01">
+<metadata>
+<title>nodelookupprefix01</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using lookupPrefix on this Document node check if the value returned is Null .
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="prefix" type="DOMString"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<lookupPrefix var="prefix" obj="doc" namespaceURI="nullNSURI"/>
+<assertNull actual="prefix" id="nodelookupprefix01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix02.xml b/test/testcases/tests/level3/core/nodelookupprefix02.xml
new file mode 100644
index 0000000..47d695f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix02.xml
@@ -0,0 +1,50 @@
+<?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="nodelookupprefix02">
+<metadata>
+<title>nodelookupprefix02</title>
+<creator>IBM</creator>
+<description>
+ Using lookupPrefix on a new Document node with a namespaceURI and prefix
+ and check if the value returned is the same prefix.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="prefix" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="qname" 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"/>
+<plus var="qname" op1='"dom3:"' op2="rootName"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="qname" doctype="nullDocType"/>
+<lookupPrefix var="prefix" obj="newDoc" namespaceURI="rootNS"/>
+<assertEquals actual="prefix" expected='"dom3"' id="nodelookupprefix02" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix03.xml b/test/testcases/tests/level3/core/nodelookupprefix03.xml
new file mode 100644
index 0000000..610485f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix03.xml
@@ -0,0 +1,42 @@
+<?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="nodelookupprefix03">
+<metadata>
+<title>nodelookupprefix03</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using lookupPrefix on this DocumentType node check if the value returned is Null .
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="prefix" type="DOMString"/>
+<var name="nullNSURI" type="DOMString" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<lookupPrefix var="prefix" obj="docType" namespaceURI="nullNSURI"/>
+<assertNull actual="prefix" id="nodelookupprefix03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix04.xml b/test/testcases/tests/level3/core/nodelookupprefix04.xml
new file mode 100644
index 0000000..c5a5c89
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix04.xml
@@ -0,0 +1,51 @@
+<?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="nodelookupprefix04">
+<metadata>
+<title>nodelookupprefix04</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using lookupPrefix on an Entity and Notation node and check if the value returned is Null .
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entity" type="Entity"/>
+<var name="notation" type="Notation"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<notations var="notationsMap" obj="docType"/>
+<getNamedItem var="entity" obj="entitiesMap" name='"alpha"'/>
+<getNamedItem var="notation" obj="notationsMap" name='"notation1"'/>
+<lookupPrefix var="prefix" obj="entity" namespaceURI='""' interface="Node"/>
+<assertNull actual="prefix" id="nodelookupprefixEntity04"/>
+<lookupPrefix var="prefix" obj="notation" namespaceURI='""' interface="Node"/>
+<assertNull actual="prefix" id="nodelookupprefixNotation04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix05.xml b/test/testcases/tests/level3/core/nodelookupprefix05.xml
new file mode 100644
index 0000000..3de6966
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix05.xml
@@ -0,0 +1,52 @@
+<?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="nodelookupprefix05">
+<metadata>
+<title>nodelookupprefix05</title>
+<creator>IBM</creator>
+<description>
+ Using lookupPrefix on the DocumentElement node of a new document with a
+ namespaceURI and prefix and check if the prefix value returned is valid.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="prefix" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="qname" 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"/>
+<plus var="qname" op1='"dom3:"' op2="rootName"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="qname" doctype="nullDocType"/>
+<documentElement var="elem" obj="newDoc"/>
+<lookupPrefix var="prefix" obj="elem" namespaceURI="rootNS"/>
+<assertEquals actual="prefix" expected='"dom3"' id="nodelookupprefix05" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix06.xml b/test/testcases/tests/level3/core/nodelookupprefix06.xml
new file mode 100644
index 0000000..e03cef8
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix06.xml
@@ -0,0 +1,42 @@
+<?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="nodelookupprefix06">
+<metadata>
+<title>nodelookupprefix06</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on an Element node with no prefix, which has a namespace
+ attribute declaration with a namespace prefix and check if the value of the prefix
+ returned by using its namespaceURI as a parameter is valid.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="2" interface="NodeList"/>
+<lookupPrefix var="prefix" obj="elem" namespaceURI='"http://www.netzero.com"'/>
+<assertEquals actual="prefix" expected='"dmstc"' id="nodelookupprefix06" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix07.xml b/test/testcases/tests/level3/core/nodelookupprefix07.xml
new file mode 100644
index 0000000..1e56803
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix07.xml
@@ -0,0 +1,42 @@
+<?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="nodelookupprefix07">
+<metadata>
+<title>nodelookupprefix07</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on an Element node with no prefix, which has a namespace
+ attribute declaration with a namespace prefix in its parent Element node and check if the value of the prefix
+ returned by using its namespaceURI as a parameter is valid.
+</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-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="2" interface="NodeList"/>
+<lookupPrefix var="prefix" obj="elem" namespaceURI='"http://www.netzero.com"'/>
+<assertEquals actual="prefix" expected='"dmstc"' id="nodelookupprefix07" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix08.xml b/test/testcases/tests/level3/core/nodelookupprefix08.xml
new file mode 100644
index 0000000..cabca28
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix08.xml
@@ -0,0 +1,45 @@
+<?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="nodelookupprefix08">
+<metadata>
+<title>nodelookupprefix08</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on an Element node with no prefix, which has 2 namespace
+ attribute declarations with and without namespace prefixes and check if the value of the prefix
+ returned by using each namespaceURI as a parameter is valid.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="prefix" type="DOMString"/>
+<var name="prefixEmpty" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<lookupPrefix var="prefix" obj="elem" namespaceURI='"http://www.usa.com"'/>
+<assertEquals actual="prefix" expected='"dmstc"' id="nodelookupprefix08" ignoreCase="false"/>
+<lookupPrefix var="prefixEmpty" obj="elem" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertNull actual="prefixEmpty" id="nodelookupnamespaceprefixEmpty08"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix09.xml b/test/testcases/tests/level3/core/nodelookupprefix09.xml
new file mode 100644
index 0000000..50bc6af
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix09.xml
@@ -0,0 +1,48 @@
+<?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="nodelookupprefix09">
+<metadata>
+<title>nodelookupprefix09</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Invoke lookupPrefix on an Element node with no prefix, whose parent has no prefix and
+ 2 namespace attribute declarations with and without namespace prefixes and check if the value of
+ the prefix returned by using each namespaceURI as a parameter is valid.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="prefix" type="DOMString"/>
+<var name="prefixEmpty" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<lookupPrefix var="prefix" obj="elem" namespaceURI='"http://www.usa.com"'/>
+<assertEquals actual="prefix" expected='"dmstc"' id="nodelookupprefix09" ignoreCase="false"/>
+<lookupPrefix var="prefixEmpty" obj="elem" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertNull actual="prefixEmpty" id="nodelookupprefixEmpty09"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix10.xml b/test/testcases/tests/level3/core/nodelookupprefix10.xml
new file mode 100644
index 0000000..72c7381
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix10.xml
@@ -0,0 +1,44 @@
+<?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="nodelookupprefix10">
+<metadata>
+<title>nodelookupprefix10</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on a new Child of a new Element node with a namespace URI
+ and prefix and using the parents namespace URI as an argument, verify if the prefix
+ returned is a valid prefix of the parent.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="parent" type="Element"/>
+<var name="child" type="Element"/>
+<var name="prefix" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createElement var="child" obj="doc" tagName='"br"'/>
+<appendChild obj="parent" var="appendedChild" newChild="child"/>
+<lookupPrefix var="prefix" obj="child" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertEquals actual="prefix" expected='"dom3"' id="nodelookupprefix10" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix11.xml b/test/testcases/tests/level3/core/nodelookupprefix11.xml
new file mode 100644
index 0000000..4a228ce
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix11.xml
@@ -0,0 +1,55 @@
+<?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="nodelookupprefix11">
+<metadata>
+<title>nodelookupprefix11</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on an imported new Element node with a namespace URI
+ and prefix in a new Document and using the parents namespace URI as an argument, verify if the prefix
+ returned is a valid prefix of the parent.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="importedNode" type="Element"/>
+<var name="prefix" type="DOMString"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="qname" 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"/>
+<plus var="qname" op1='"dom3doc:"' op2="rootName"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI="rootNS" qualifiedName="qname" doctype="nullDocType"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:br"'/>
+<importNode var="importedNode" obj="newDoc" importedNode="elem" deep="true"/>
+<lookupPrefix var="prefix" obj="importedNode" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertEquals actual="prefix" expected='"dom3"' id="nodelookupprefix11" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix12.xml b/test/testcases/tests/level3/core/nodelookupprefix12.xml
new file mode 100644
index 0000000..edc9e99
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix12.xml
@@ -0,0 +1,44 @@
+<?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="nodelookupprefix12">
+<metadata>
+<title>nodelookupprefix12</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on an renamed new Element node with a namespace URI
+ and prefix in a new Document and using the parents namespace URI as an argument, verify if the prefix
+ returned is a valid prefix of the parent.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="elem" type="Element"/>
+<var name="renamedNode" type="Element"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<renameNode var="renamedNode" obj="doc" n="elem" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"ren:br"'/>
+<lookupPrefix var="prefix" obj="renamedNode" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertEquals actual="prefix" expected='"ren"' id="nodelookupprefix12" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix13.xml b/test/testcases/tests/level3/core/nodelookupprefix13.xml
new file mode 100644
index 0000000..f3ded0c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix13.xml
@@ -0,0 +1,49 @@
+<?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="nodelookupprefix13">
+<metadata>
+<title>nodelookupprefix13</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on a Element's new Text node, which has a namespace attribute declaration
+ with a namespace prefix in its parent Element node and check if the value of the prefix
+ returned by using its namespaceURI as a parameter is valid.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="bodyElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="prefix" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="bodyList" type="NodeList"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="bodyList" obj="doc" tagname='"body"' interface="Document"/>
+<item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createTextNode var="txt" obj="doc" data='"Text"'/>
+<appendChild obj="elem" var="appendedChild" newChild="txt"/>
+<appendChild obj="bodyElem" var="appendedChild" newChild="elem"/>
+<lookupPrefix var="prefix" obj="txt" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertEquals actual="prefix" expected='"dom3"' id="nodelookupprefix13" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix14.xml b/test/testcases/tests/level3/core/nodelookupprefix14.xml
new file mode 100644
index 0000000..12fd72b
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix14.xml
@@ -0,0 +1,49 @@
+<?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="nodelookupprefix14">
+<metadata>
+<title>nodelookupprefix14</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on a Element's new CDATA node, which has a namespace attribute declaration
+ with a namespace prefix in its parent Element node and check if the value of the prefix
+ returned by using its namespaceURI as a parameter is valid.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="bodyElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="cdata" type="CDATASection"/>
+<var name="prefix" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="bodyList" type="NodeList"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="bodyList" obj="doc" tagname='"body"' interface="Document"/>
+<item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createCDATASection var="cdata" obj="doc" data='"Text"'/>
+<appendChild obj="elem" var="appendedChild" newChild="cdata"/>
+<appendChild obj="bodyElem" var="appendedChild" newChild="elem"/>
+<lookupPrefix var="prefix" obj="cdata" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertEquals actual="prefix" expected='"dom3"' id="nodelookupprefix14" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix15.xml b/test/testcases/tests/level3/core/nodelookupprefix15.xml
new file mode 100644
index 0000000..d2bfe1c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix15.xml
@@ -0,0 +1,51 @@
+<?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="nodelookupprefix15">
+<metadata>
+<title>nodelookupprefix15</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on a Element's new Comment node, which has a namespace attribute declaration
+ with a namespace prefix in its parent Element node and check if the value of the prefix
+ returned by using its namespaceURI as a parameter is valid.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="bodyElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="comment" type="Comment"/>
+<var name="clonedComment" type="Comment"/>
+<var name="prefix" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="bodyList" type="NodeList"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="bodyList" obj="doc" tagname='"body"' interface="Document"/>
+<item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createComment var="comment" obj="doc" data='"Text"'/>
+<cloneNode var="clonedComment" obj="comment" deep="true"/>
+<appendChild obj="elem" var="appendedChild" newChild="clonedComment"/>
+<appendChild obj="bodyElem" var="appendedChild" newChild="elem"/>
+<lookupPrefix var="prefix" obj="clonedComment" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertEquals actual="prefix" expected='"dom3"' id="nodelookupprefix15" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix16.xml b/test/testcases/tests/level3/core/nodelookupprefix16.xml
new file mode 100644
index 0000000..7dbae02
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix16.xml
@@ -0,0 +1,42 @@
+<?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="nodelookupprefix16">
+<metadata>
+<title>nodelookupprefix16</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on a new Attribute node with with a namespace URI
+ and prefix and verify if the prefix returned is null.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="prefix" type="DOMString"/>
+<var name="attNode" type="Attr"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<setAttributeNodeNS obj="elem" var="attNode" newAttr="attr"/>
+<lookupPrefix var="prefix" obj="attr" namespaceURI='"http://www.w3.org/XML/1998/namespace"'/>
+<assertNull actual="prefix" id="nodelookupprefix16"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix17.xml b/test/testcases/tests/level3/core/nodelookupprefix17.xml
new file mode 100644
index 0000000..a8b7847
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix17.xml
@@ -0,0 +1,46 @@
+<?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="nodelookupprefix17">
+<metadata>
+<title>nodelookupprefix17</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on the title attribute node of the acronym node with
+ a namespaceURI and a node prefix and check if the value of the prefix returned by
+ using its namespaceURI as a parameter is valid.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="2" interface="NodeList"/>
+<attributes var="attributesMap" obj="elem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"xsi:noNamespaceSchemaLocation"'/>
+<lookupPrefix var="prefix" obj="attr" namespaceURI='"http://www.netzero.com"'/>
+<assertEquals actual="prefix" expected='"dmstc"' id="nodelookupprefix17" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix18.xml b/test/testcases/tests/level3/core/nodelookupprefix18.xml
new file mode 100644
index 0000000..b0a99e8
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix18.xml
@@ -0,0 +1,48 @@
+<?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="nodelookupprefix18">
+<metadata>
+<title>nodelookupprefix18</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on the default attribute node of the p node with
+ a namespaceURI and a node prefix and check if the value of the prefix returned by
+ using its namespaceURI as a parameter is valid.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<attributes var="attributesMap" obj="elem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"dir"'/>
+<lookupPrefix var="prefix" obj="attr" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertNull actual="prefix" id="xhtmlPrefixIsNull"/>
+<lookupPrefix var="prefix" obj="attr" namespaceURI='"http://www.altavista.com"'/>
+<assertEquals actual="prefix" expected='"nm"' id="nodelookupprefixB18" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix19.xml b/test/testcases/tests/level3/core/nodelookupprefix19.xml
new file mode 100644
index 0000000..4ebec7d
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix19.xml
@@ -0,0 +1,46 @@
+<?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="nodelookupprefix19">
+<metadata>
+<title>nodelookupprefix19</title>
+<creator>IBM</creator>
+<description>
+ Invoke lookupPrefix on the an attribute node without a namespace prefix of
+ an Element node that has a namespaceURI and prefix, and check if the value of the prefix
+ returned by using the Elements namespaceURI as a parameter is valid.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="barfoo_nodefaultns" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"html:p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<attributes var="attributesMap" obj="elem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"class"'/>
+<lookupPrefix var="prefix" obj="attr" namespaceURI='"http://www.w3.org/1999/xhtml"'/>
+<assertEquals actual="prefix" expected='"html"' id="nodelookupprefix19" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodelookupprefix20.xml b/test/testcases/tests/level3/core/nodelookupprefix20.xml
new file mode 100644
index 0000000..28bec79
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodelookupprefix20.xml
@@ -0,0 +1,49 @@
+<?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="nodelookupprefix20">
+<metadata>
+<title>nodelookupprefix20</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Invoke lookupPrefix on the an attribute node without a namespace prefix of
+ an Element node that has a namespaceURI and prefix, and check if the value of the prefix
+ returned by using the Elements namespaceURI as a parameter is valid.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-lookupNamespacePrefix"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="attributesMap" type="NamedNodeMap"/>
+<var name="attr" type="Attr"/>
+<var name="prefix" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<attributes var="attributesMap" obj="elem"/>
+<getNamedItem var="attr" obj="attributesMap" name='"xmlns:nm"'/>
+<lookupPrefix var="prefix" obj="attr" namespaceURI='"http://www.altavista.com"'/>
+<assertEquals actual="prefix" expected='"nm"' id="nodelookupprefix20" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild01.xml b/test/testcases/tests/level3/core/noderemovechild01.xml
new file mode 100644
index 0000000..1f6c1ef
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild01.xml
@@ -0,0 +1,42 @@
+<?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="noderemovechild01">
+<metadata>
+<title>noderemovechild01</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using removeChild on this Document node attempt to remove this Document node and
+ verify if a NOT_FOUND_ERR error is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="removed" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<assertDOMException id="NOT_FOUND_ERR_noderemovechild01">
+<NOT_FOUND_ERR>
+<removeChild obj="doc" var="removed" oldChild="doc" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild02.xml b/test/testcases/tests/level3/core/noderemovechild02.xml
new file mode 100644
index 0000000..3043b08
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild02.xml
@@ -0,0 +1,56 @@
+<?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="noderemovechild02">
+<metadata>
+<title>noderemovechild02</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on this Document node attempt to remove a new Document node and
+ vice versa and verify if a NOT_FOUND_ERR error is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="removed" type="Node"/>
+<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="true"/>
+<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"/>
+<assertDOMException id="throw_NOT_FOUND_ERR_1">
+<NOT_FOUND_ERR>
+<removeChild obj="doc" var="removed" oldChild="newDoc" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NOT_FOUND_ERR_2">
+<NOT_FOUND_ERR>
+<removeChild obj="newDoc" var="removed" oldChild="doc" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild03.xml b/test/testcases/tests/level3/core/noderemovechild03.xml
new file mode 100644
index 0000000..a146720
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild03.xml
@@ -0,0 +1,46 @@
+<?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="noderemovechild03">
+<metadata>
+<title>noderemovechild03</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on this DocumentElement node attempt to remove this Document node and
+ verify if the DocumentElement is null. Now try the reverse and a NOT_FOUND_ERR should be
+ thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="removedChild" type="Element"/>
+<var name="removed" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<removeChild obj="doc" var="removed" oldChild="docElem" />
+<documentElement var="removedChild" obj="doc"/>
+<assertNull actual="removedChild" id="noderemovechild03"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeChild obj="docElem" var="removed" oldChild="doc" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild04.xml b/test/testcases/tests/level3/core/noderemovechild04.xml
new file mode 100644
index 0000000..95ad267
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild04.xml
@@ -0,0 +1,49 @@
+<?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="noderemovechild04">
+<metadata>
+<title>noderemovechild04</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using removeChild on this Document node attempt to remove DocumentType node and
+ verify if the DocumentType node is null. Now try the reverse and a NOT_FOUND_ERR should be
+ thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="removedDocType" type="DocumentType"/>
+<var name="removed" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<removeChild obj="doc" var="removed" oldChild="docType" />
+<doctype var="removedDocType" obj="doc"/>
+<assertNull actual="removedDocType" id="noderemovechild04"/>
+<assertDOMException id="NOT_FOUND_ERR_noderemovechild04">
+<NOT_FOUND_ERR>
+<removeChild obj="docType" var="removed" oldChild="doc" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild05.xml b/test/testcases/tests/level3/core/noderemovechild05.xml
new file mode 100644
index 0000000..46fe651
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild05.xml
@@ -0,0 +1,62 @@
+<?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="noderemovechild05">
+<metadata>
+<title>noderemovechild05</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on this Document node attempt to remove a new DocumentType node and
+ verify if the DocumentType node is null. Attempting to remove the DocumentType
+ a second type should result in a NOT_FOUND_ERR.
+</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#ID-1734834066"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=417"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType"/>
+<var name="removedDocType" type="DocumentType"/>
+<var name="nullPubId" type="DOMString" isNull="true"/>
+<var name="nullSysId" type="DOMString" isNull="true"/>
+<var name="appendedChild" type="Node"/>
+<var name="removedChild" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<!-- An implemention may not support removing doctype -->
+<try>
+ <removeChild obj="doc" var="removedChild" oldChild="docType" />
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<assertNotNull actual="removedChild" id="removedChildNotNull"/>
+
+<doctype var="removedDocType" obj="doc"/>
+<assertNull actual="removedDocType" id="noderemovechild05"/>
+
+<assertDOMException id="NOT_FOUND_ERR_noderemovechild05">
+<NOT_FOUND_ERR>
+<removeChild obj="docType" var="removedChild" oldChild="doc" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild07.xml b/test/testcases/tests/level3/core/noderemovechild07.xml
new file mode 100644
index 0000000..a9dfec5
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild07.xml
@@ -0,0 +1,55 @@
+<?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="noderemovechild07">
+<metadata>
+<title>noderemovechild07</title>
+<creator>IBM</creator>
+<description>
+Attempts to remove a notation from a Document node. Since notations are children of
+DocumentType, not Document the operation should fail with a NOT_FOUND_ERR. Attempting
+to remove Document from a Notation should also fail either with a NOT_FOUND_ERR
+or a NO_MODIFICATION_ALLOWED_ERR.
+</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#ID-1734834066"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=418"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="removedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<notations var="notations" obj="docType"/>
+<getNamedItem var="notation" obj="notations" name='"notation1"'/>
+<assertDOMException id="NOT_FOUND_ERR_noderemovechild07_1">
+<NOT_FOUND_ERR>
+<removeChild obj="doc" var="removedChild" oldChild="notation" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+<try>
+ <removeChild obj="notation" var="removedChild" oldChild="doc" />
+ <catch>
+ <DOMException code="NOT_FOUND_ERR"/>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild08.xml b/test/testcases/tests/level3/core/noderemovechild08.xml
new file mode 100644
index 0000000..132b2ea
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild08.xml
@@ -0,0 +1,45 @@
+<?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="noderemovechild08">
+<metadata>
+<title>noderemovechild08</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using removeChild on this Document node attempt to remove a new Comment node and
+ verify the data of the removed comment node..
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="comment" type="Comment"/>
+<var name="removedCmt" type="Comment"/>
+<var name="data" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createComment var="comment" obj="doc" data='"Comment"'/>
+<appendChild obj="doc" var="appendedChild" newChild="comment"/>
+<removeChild var="removedCmt" obj="doc" oldChild="comment" />
+<data var="data" obj="removedCmt" interface="CharacterData"/>
+<assertEquals actual="data" expected='"Comment"' id="noderemovechild08" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild09.xml b/test/testcases/tests/level3/core/noderemovechild09.xml
new file mode 100644
index 0000000..c7f5cfa
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild09.xml
@@ -0,0 +1,45 @@
+<?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="noderemovechild09">
+<metadata>
+<title>noderemovechild09</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using removeChild on this Document node attempt to remove a new ProcessingInstruction node and
+ verify the target of the removed ProcessingInstruction node.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="removedPi" type="ProcessingInstruction"/>
+<var name="target" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createProcessingInstruction var="pi" obj="doc" data='"PID"' target='"PIT"'/>
+<appendChild obj="doc" var="appendedChild" newChild="pi"/>
+<removeChild var="removedPi" obj="doc" oldChild="pi" />
+<target var="target" obj="removedPi" interface="ProcessingInstruction"/>
+<assertEquals actual="target" expected='"PIT"' id="noderemovechild09" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild10.xml b/test/testcases/tests/level3/core/noderemovechild10.xml
new file mode 100644
index 0000000..c4d420f
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild10.xml
@@ -0,0 +1,45 @@
+<?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="noderemovechild10">
+<metadata>
+<title>noderemovechild10</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on a new DocumentFragment node attempt to remove a new Element node and
+ verify the name of the removed Element node.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="elem" type="Element"/>
+<var name="removedElem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="removedChild" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:br"'/>
+<appendChild obj="docFrag" var="appendedChild" newChild="elem"/>
+<removeChild var="removedElem" obj="docFrag" oldChild="elem" />
+<nodeName var="elemName" obj="removedElem"/>
+<assertEquals actual="elemName" expected='"dom3:br"' id="noderemovechild10" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild11.xml b/test/testcases/tests/level3/core/noderemovechild11.xml
new file mode 100644
index 0000000..e96a75d
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild11.xml
@@ -0,0 +1,47 @@
+<?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="noderemovechild11">
+<metadata>
+<title>noderemovechild11</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using removeChild on a new DocumentFragment node attempt to remove a new Text node and
+ verify the name of the removed Element node.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="txt" type="Text"/>
+<var name="removedTxt" type="Text"/>
+<var name="appendedChild" type="Node"/>
+<var name="removedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createTextNode var="txt" obj="doc" data='"TEXT"'/>
+<appendChild obj="docFrag" var="appendedChild" newChild="txt"/>
+<removeChild obj="docFrag" var="removedChild" oldChild="txt" />
+<firstChild var="removedTxt" obj="docFrag" interface="Node"/>
+<assertNull actual="removedTxt" id="noderemovechild11"/>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild12.xml b/test/testcases/tests/level3/core/noderemovechild12.xml
new file mode 100644
index 0000000..ccdf06f
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild12.xml
@@ -0,0 +1,56 @@
+<?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="noderemovechild12">
+<metadata>
+<title>noderemovechild12</title>
+<creator>IBM</creator>
+<description>
+ The method removeChild removes the child node indicated by oldChild from the list
+ of children, and returns it.
+
+ Using removeChild on a new DocumentFragment node attempt to remove a new EntityReference node.
+ Also attempt to remove the document fragment node from the EntityReference. Verify that a
+ NO_MODIFICATION_ALLOWED_ERR (EntityReference node is read-only) or a NOT_FOUND_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="eRef" type="EntityReference"/>
+<var name="removedERef" type="EntityReference"/>
+<var name="appendedChild" type="Node"/>
+<var name="removedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createEntityReference var="eRef" obj="doc" name='"ent1"'/>
+<appendChild obj="docFrag" var="appendedChild" newChild="eRef"/>
+<removeChild obj="docFrag" var="removedChild" oldChild="eRef" />
+<firstChild var="removedERef" obj="docFrag" interface="Node"/>
+<assertNull actual="removedERef" id="noderemovechild12"/>
+<try>
+ <removeChild obj="eRef" var="removedChild" oldChild="docFrag" />
+ <catch>
+ <DOMException code="NOT_FOUND_ERR"/>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild13.xml b/test/testcases/tests/level3/core/noderemovechild13.xml
new file mode 100644
index 0000000..d21c737
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild13.xml
@@ -0,0 +1,44 @@
+<?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="noderemovechild13">
+<metadata>
+<title>noderemovechild13</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on a new EntityReference node attempt to remove the first child
+ of this node and verify if a NO_MODIFICATION_ALLOWED_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="txt" type="Text"/>
+<var name="eRef" type="EntityReference"/>
+<var name="removed" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEntityReference var="eRef" obj="doc" name='"alpha"'/>
+<firstChild obj="eRef" var="txt" interface="Node"/>
+<assertNotNull actual="txt" id="txtNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeChild obj="eRef" var="removed" oldChild="txt" />
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild14.xml b/test/testcases/tests/level3/core/noderemovechild14.xml
new file mode 100644
index 0000000..131aadb
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild14.xml
@@ -0,0 +1,45 @@
+<?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="noderemovechild14">
+<metadata>
+<title>noderemovechild14</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on a new EntityReference node attempt to remove its last ProcessingInstruction
+ child node and verify if a NO_MODIFICATION_ALLOWED_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="removed" type="Node"/>
+<var name="eRef" type="EntityReference"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="entName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEntityReference var="eRef" obj="doc" name='"ent4"'/>
+<lastChild obj="eRef" var="pi" interface="Node"/>
+<assertNotNull actual="pi" id="piNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeChild obj="eRef" var="removed" oldChild="pi" />
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild15.xml b/test/testcases/tests/level3/core/noderemovechild15.xml
new file mode 100644
index 0000000..2e2f941
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild15.xml
@@ -0,0 +1,45 @@
+<?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="noderemovechild15">
+<metadata>
+<title>noderemovechild15</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on a new EntityReference node attempt to remove an Element child
+ and verify if a NO_MODIFICATION_ALLOWED_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="eRef" type="EntityReference"/>
+<var name="elem" type="Element"/>
+<var name="entName" type="DOMString"/>
+<var name="removed" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEntityReference var="eRef" obj="doc" name='"ent4"'/>
+<firstChild obj="eRef" var="elem" interface="Node"/>
+<assertNotNull actual="elem" id="elemNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeChild obj="eRef" var="removed" oldChild="elem" />
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild16.xml b/test/testcases/tests/level3/core/noderemovechild16.xml
new file mode 100644
index 0000000..aec060a
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild16.xml
@@ -0,0 +1,53 @@
+<?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="noderemovechild16">
+<metadata>
+<title>noderemovechild16</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on the first 'p' Element node attempt to remove its 'em'
+ Element child and verify the name of the returned node that was removed. Now attempt
+ the reverse and verify if a NOT_FOUND_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<implementationAttribute name="ignoringElementContentWhitespace" value="true"/>
+<var name="doc" type="Document"/>
+<var name="parentList" type="NodeList"/>
+<var name="childList" type="NodeList"/>
+<var name="parent" type="Element"/>
+<var name="child" type="Element"/>
+<var name="removed" type="Element"/>
+<var name="removedName" type="DOMString"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="parentList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="child" obj="parentList" index="0" interface="NodeList"/>
+<parentNode var="parent" obj="child" interface="Node"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeName obj="removed" var="removedName"/>
+<assertEquals actual="removedName" expected='"em"' id="noderemovechild16" ignoreCase="false"/>
+<assertDOMException id="NOT_FOUND_ERR_noderemovechild16">
+<NOT_FOUND_ERR>
+<removeChild obj="child" var="removedNode" oldChild="parent" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild17.xml b/test/testcases/tests/level3/core/noderemovechild17.xml
new file mode 100644
index 0000000..3e7a719
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild17.xml
@@ -0,0 +1,51 @@
+<?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="noderemovechild17">
+<metadata>
+<title>noderemovechild17</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on the first 'p' Element node attempt to remove a Text
+ node child and verify the contents of the returned node that was removed. Now attempt
+ the reverse and verify if a NOT_FOUND_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parentList" type="NodeList"/>
+<var name="parent" type="Element"/>
+<var name="child" type="Text"/>
+<var name="removed" type="Text"/>
+<var name="removedValue" type="DOMString"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="parentList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="parent" obj="parentList" index="0" interface="NodeList"/>
+<firstChild var="child" obj="parent" interface="Node"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeValue obj="removed" var="removedValue"/>
+<assertEquals actual="removedValue" expected='"EMP0001"' id="noderemovechild17" ignoreCase="false"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeChild obj="child" var="removedNode" oldChild="parent" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild18.xml b/test/testcases/tests/level3/core/noderemovechild18.xml
new file mode 100644
index 0000000..f3a03e5
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild18.xml
@@ -0,0 +1,54 @@
+<?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="noderemovechild18">
+<metadata>
+<title>noderemovechild18</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using removeChild on the first 'p' Element node attempt to remove a CDATASection
+ node child and verify the contents of the returned node that was removed. Now attempt
+ the reverse and verify if a NOT_FOUND_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parentList" type="NodeList"/>
+<var name="parent" type="Element"/>
+<var name="child" type="CDATASection"/>
+<var name="removed" type="CDATASection"/>
+<var name="removedValue" type="DOMString"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="parentList" obj="doc" tagname='"strong"' interface="Document" />
+<item var="parent" obj="parentList" index="1" interface="NodeList"/>
+<lastChild var="child" obj="parent" interface="Node"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeValue obj="removed" var="removedValue"/>
+<assertEquals actual="removedValue" expected='"This is an adjacent CDATASection with a reference to a tab &amp;tab;"' id="noderemovechild18" ignoreCase="false"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeChild obj="child" var="removedNode" oldChild="parent" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild19.xml b/test/testcases/tests/level3/core/noderemovechild19.xml
new file mode 100644
index 0000000..46e6d6a
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild19.xml
@@ -0,0 +1,76 @@
+<?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="noderemovechild19">
+<metadata>
+<title>noderemovechild19</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on the first 'p' Element node attempt to remove a EntityReference
+ node child and verify the nodeName of the returned node that was removed. Attempt
+ to remove a non-child from an entity reference and expect either a NOT_FOUND_ERR or
+ a NO_MODIFICATION_ALLOWED_ERR. Renove a child from an entity reference and expect
+ a NO_MODIFICATION_ALLOWED_ERR.
+</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#ID-1734834066"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="parentList" type="NodeList"/>
+<var name="parent" type="Element"/>
+<var name="child" type="EntityReference"/>
+<var name="removed" type="EntityReference"/>
+<var name="removedName" type="DOMString"/>
+<var name="removedNode" type="Node"/>
+<var name="entRefChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="parentList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="parent" obj="parentList" index="1" interface="NodeList"/>
+<firstChild var="child" obj="parent" interface="Node"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeName obj="removed" var="removedName"/>
+<assertEquals actual="removedName" expected='"beta"' id="noderemovechild19" ignoreCase="false"/>
+<!--
+ Remove a non-member of the entity reference,
+ expect either a NO_MODIFICATION_ALLOWED_ERR or a NOT_FOUND_ERR
+-->
+<try>
+ <removeChild obj="child" var="removedNode" oldChild="parent" />
+ <fail id="throw_DOMException"/>
+ <catch>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ <DOMException code="NOT_FOUND_ERR"/>
+ </catch>
+</try>
+<!--
+Remove a child of the entity reference
+ Expect a NO_MODIFICATION_ALLOWED_ERR exception
+-->
+<firstChild var="entRefChild" obj="child" interface="Node"/>
+<if>
+ <!-- entity may not be resolved if validating is false -->
+ <notNull obj="entRefChild"/>
+ <assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeChild obj="child" var="removedNode" oldChild="entRefChild"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+ </assertDOMException>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild20.xml b/test/testcases/tests/level3/core/noderemovechild20.xml
new file mode 100644
index 0000000..14bcc8e
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild20.xml
@@ -0,0 +1,56 @@
+<?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="noderemovechild20">
+<metadata>
+<title>noderemovechild20</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on the first 'p' Element node attempt to remove a new
+ Element child and verify the name of the returned node that was removed. Now attempt
+ to do the same on a cloned child and verify if a NOT_FOUND_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parentList" type="NodeList"/>
+<var name="childList" type="NodeList"/>
+<var name="parent" type="Element"/>
+<var name="child" type="Element"/>
+<var name="clonedChild" type="Element"/>
+<var name="removed" type="Element"/>
+<var name="removedName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="parentList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="parent" obj="parentList" index="0" interface="NodeList"/>
+<createElementNS var="child" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:br"'/>
+<appendChild obj="parent" var="appendedChild" newChild="child"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeName obj="removed" var="removedName"/>
+<assertEquals actual="removedName" expected='"dom3:br"' id="noderemovechild20" ignoreCase="false"/>
+<cloneNode var="clonedChild" obj="child" deep="true"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+ <NOT_FOUND_ERR>
+ <removeChild obj="parent" var="removedNode" oldChild="clonedChild" />
+ </NOT_FOUND_ERR>
+ </assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild21.xml b/test/testcases/tests/level3/core/noderemovechild21.xml
new file mode 100644
index 0000000..0d08e14
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild21.xml
@@ -0,0 +1,56 @@
+<?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="noderemovechild21">
+<metadata>
+<title>noderemovechild21</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on a new Element node attempt to remove a new Element child
+ and verify the name of the returned node that was removed. Now append the parent
+ to the documentElement and attempt to remove the child using removeChild on the
+ documentElement and verify if a NOT_FOUND_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="parent" type="Element"/>
+<var name="child" type="Element"/>
+<var name="removed" type="Element"/>
+<var name="removedName" type="DOMString"/>
+<var name="removedNode" type="Node"/>
+<var name="appendedChild" type="Node"/>
+
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createElementNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createElementNS var="child" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:br"'/>
+<appendChild obj="parent" var="appendedChild" newChild="child"/>
+<appendChild obj="docElem" var="appendedChild" newChild="parent"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeName obj="removed" var="removedName"/>
+<assertEquals actual="removedName" expected='"dom3:br"' id="noderemovechild21" ignoreCase="false"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+ <NOT_FOUND_ERR>
+ <removeChild obj="docElem" var="removedNode" oldChild="child" />
+ </NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild22.xml b/test/testcases/tests/level3/core/noderemovechild22.xml
new file mode 100644
index 0000000..e856a0e
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild22.xml
@@ -0,0 +1,51 @@
+<?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="noderemovechild22">
+<metadata>
+<title>noderemovechild22</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on a new Element node attempt to remove a new Comment child
+ and verify the name of the rturned node that was removed. Now to remove the child
+ using removeChild on the parent and verify if a NOT_FOUND_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parent" type="Element"/>
+<var name="child" type="Comment"/>
+<var name="removed" type="Comment"/>
+<var name="removedName" type="DOMString"/>
+<var name="removedNode" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElementNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createComment var="child" obj="doc" data='"DATA"' />
+<appendChild obj="parent" var="appendedChild" newChild="child"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeValue obj="removed" var="removedName"/>
+<assertEquals actual="removedName" expected='"DATA"' id="noderemovechild22" ignoreCase="false"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+ <NOT_FOUND_ERR>
+ <removeChild obj="parent" var="removedNode" oldChild="child" />
+ </NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild23.xml b/test/testcases/tests/level3/core/noderemovechild23.xml
new file mode 100644
index 0000000..35291b6
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild23.xml
@@ -0,0 +1,51 @@
+<?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="noderemovechild23">
+<metadata>
+<title>noderemovechild23</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on a new Element node attempt to remove a new ProcessingInstruction child
+ and verify the name of the returned node that was removed. Now to remove the child
+ using removeChild on the parent and verify if a NOT_FOUND_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parent" type="Element"/>
+<var name="child" type="ProcessingInstruction"/>
+<var name="removed" type="ProcessingInstruction"/>
+<var name="removedName" type="DOMString"/>
+<var name="removedNode" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElementNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createProcessingInstruction var="child" obj="doc" data='"DATA"' target='"TARGET"'/>
+<appendChild obj="parent" var="appendedChild" newChild="child"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<target obj="removed" var="removedName" interface="ProcessingInstruction"/>
+<assertEquals actual="removedName" expected='"TARGET"' id="noderemovechild23" ignoreCase="false"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+ <NOT_FOUND_ERR>
+ <removeChild obj="parent" var="removedNode" oldChild="child" />
+ </NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild24.xml b/test/testcases/tests/level3/core/noderemovechild24.xml
new file mode 100644
index 0000000..5ca9395
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild24.xml
@@ -0,0 +1,49 @@
+<?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="noderemovechild24">
+<metadata>
+<title>noderemovechild24</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on an Entity node attempt to remove a Text child
+ and verify if a NO_MODIFICATION_ALLOWED_ERR gets thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="alphaEntity" type="Entity"/>
+<var name="alphaText" type="Text"/>
+<var name="removed" type="Text"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="alphaEntity" obj="entitiesMap" name='"alpha"' interface="NamedNodeMap"/>
+<assertNotNull actual="alphaEntity" id="alphaEntityNotNull"/>
+<firstChild var="alphaText" obj="alphaEntity" interface="Node"/>
+<assertNotNull actual="alphaText" id="alphaTextNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeChild var="removed" obj="alphaEntity" oldChild="alphaText" />
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild25.xml b/test/testcases/tests/level3/core/noderemovechild25.xml
new file mode 100644
index 0000000..00e9eab
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild25.xml
@@ -0,0 +1,49 @@
+<?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="noderemovechild25">
+<metadata>
+<title>noderemovechild25</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on an Entity node attempt to remove an Element child
+ and verify if a NO_MODIFICATION_ALLOWED_ERR gets thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="ent4" type="Entity"/>
+<var name="span" type="Element"/>
+<var name="removed" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="ent4" interface="NamedNodeMap" obj="entitiesMap" name='"ent4"'/>
+<assertNotNull actual="ent4" id="ent4NotNull"/>
+<firstChild var="span" obj="ent4" interface="Node"/>
+<assertNotNull actual="span" id="spanNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeChild obj="ent4" var="removed" oldChild="span" />
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild26.xml b/test/testcases/tests/level3/core/noderemovechild26.xml
new file mode 100644
index 0000000..ba03eb5
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild26.xml
@@ -0,0 +1,49 @@
+<?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="noderemovechild26">
+<metadata>
+<title>noderemovechild26</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on an Entity node attempt to remove a ProcessingInstruction child
+ and verify if a NO_MODIFICATION_ALLOWED_ERR gets thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="ent4" type="Entity"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="removed" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<getNamedItem var="ent4" interface="NamedNodeMap" obj="entitiesMap" name='"ent4"'/>
+<assertNotNull actual="ent4" id="ent4NotNull"/>
+<lastChild var="pi" obj="ent4" interface="Node"/>
+<assertNotNull actual="pi" id="piNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeChild obj="ent4" var="removed" oldChild="pi" />
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild27.xml b/test/testcases/tests/level3/core/noderemovechild27.xml
new file mode 100644
index 0000000..180e03d
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild27.xml
@@ -0,0 +1,55 @@
+<?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="noderemovechild27">
+<metadata>
+<title>noderemovechild27</title>
+<creator>IBM</creator>
+<description>
+ The method removeChild removes the child node indicated by oldChild from the list
+ of children, and returns it.
+
+ Using removeChild on a Notation node attempt to remove an Entity node
+ and verify if a NO_MODIFICATION_ALLOWED_ERR or a NOT_FOUND_ERR gets thrown.
+</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#ID-1734834066"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="child" type="Entity"/>
+<var name="parent" type="Notation"/>
+<var name="removed" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitiesMap" obj="docType"/>
+<notations var="notationsMap" obj="docType"/>
+<getNamedItem var="child" interface="NamedNodeMap" obj="entitiesMap" name='"ent1"'/>
+<getNamedItem var="parent" interface="NamedNodeMap" obj="notationsMap" name='"notation1"'/>
+<try>
+ <removeChild obj="parent" var="removed" oldChild="child" />
+ <catch>
+ <DOMException code="NOT_FOUND_ERR"/>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild28.xml b/test/testcases/tests/level3/core/noderemovechild28.xml
new file mode 100644
index 0000000..bada2b1
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild28.xml
@@ -0,0 +1,55 @@
+<?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="noderemovechild28">
+<metadata>
+<title>noderemovechild28</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on an Attribute node attempt to remove its Text child node and
+ and verify the name of the returned node that was removed. Now attempt the reverse
+ and verify if a NOT_FOUND_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parentList" type="NodeList"/>
+<var name="attrsMap" type="NamedNodeMap"/>
+<var name="parent" type="Attr"/>
+<var name="child" type="Text"/>
+<var name="elem" type="Element"/>
+<var name="removed" type="Text"/>
+<var name="removedName" type="DOMString"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="parentList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="parentList" index="0" interface="NodeList"/>
+<attributes var="attrsMap" obj="elem"/>
+<getNamedItem var="parent" obj="attrsMap" name='"xsi:noNamespaceSchemaLocation"'/>
+<firstChild var="child" obj="parent" interface="Node"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeValue obj="removed" var="removedName"/>
+<assertEquals actual="removedName" expected='"Yes"' id="noderemovechild28" ignoreCase="false"/>
+<assertDOMException id="NOT_FOUND_ERR_noderemovechild28">
+<NOT_FOUND_ERR>
+<removeChild obj="child" var="removedNode" oldChild="parent" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild29.xml b/test/testcases/tests/level3/core/noderemovechild29.xml
new file mode 100644
index 0000000..a0a30ed
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild29.xml
@@ -0,0 +1,55 @@
+<?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="noderemovechild29">
+<metadata>
+<title>noderemovechild29</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on a namespace Attribute node attempt to remove its Text child node and
+ and verify the name of the returned node that was removed. Now attempt the reverse
+ and verify if a NOT_FOUND_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parentList" type="NodeList"/>
+<var name="attrsMap" type="NamedNodeMap"/>
+<var name="parent" type="Attr"/>
+<var name="child" type="Text"/>
+<var name="elem" type="Element"/>
+<var name="removed" type="Text"/>
+<var name="removedName" type="DOMString"/>
+<var name="removedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="parentList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="parentList" index="0" interface="NodeList"/>
+<attributes var="attrsMap" obj="elem"/>
+<getNamedItem var="parent" obj="attrsMap" name='"xmlns:dmstc"'/>
+<firstChild var="child" obj="parent" interface="Node"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeValue obj="removed" var="removedName"/>
+<assertEquals actual="removedName" expected='"http://www.usa.com"' id="noderemovechild29" ignoreCase="false"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeChild obj="child" var="removedNode" oldChild="parent" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild30.xml b/test/testcases/tests/level3/core/noderemovechild30.xml
new file mode 100644
index 0000000..dbd8064
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild30.xml
@@ -0,0 +1,59 @@
+<?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="noderemovechild30">
+<metadata>
+<title>noderemovechild30</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using removeChild on a default Attribute node attempt to remove its Text child node and
+ and verify the name of the returned node that was removed. Now attempt the reverse
+ and verify if a NOT_FOUND_ERR is thrown.
+</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#ID-1734834066"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parentList" type="NodeList"/>
+<var name="attrsMap" type="NamedNodeMap"/>
+<var name="parent" type="Attr"/>
+<var name="child" type="Text"/>
+<var name="elem" type="Element"/>
+<var name="removed" type="Text"/>
+<var name="removedNode" type="Node"/>
+<var name="removedName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="parentList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="parentList" index="3" interface="NodeList"/>
+<attributes var="attrsMap" obj="elem"/>
+<getNamedItem var="parent" obj="attrsMap" name='"dir"'/>
+<firstChild var="child" obj="parent" interface="Node"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeValue obj="removed" var="removedName"/>
+<assertEquals actual="removedName" expected='"rtl"' id="noderemovechild30" ignoreCase="false"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<removeChild obj="child" var="removedNode" oldChild="parent" />
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/noderemovechild31.xml b/test/testcases/tests/level3/core/noderemovechild31.xml
new file mode 100644
index 0000000..99e533d
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild31.xml
@@ -0,0 +1,84 @@
+<?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="noderemovechild31">
+<metadata>
+<title>noderemovechild31</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on a default Attribute node attempt to remove its EntityReference child node and
+ and verify the name of the returned node that was removed. Now attempt the reverse
+ and verify if a NO_MODIFICATION_ALLOWED_ERR or NOT_FOUND_ERR is thrown.
+ Then remove an child of the entity reference and expect a NO_MODIFICATION_ALLOWED_ERR.
+</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#ID-1734834066"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="parentList" type="NodeList"/>
+<var name="attrsMap" type="NamedNodeMap"/>
+<var name="parent" type="Attr"/>
+<var name="child" type="EntityReference"/>
+<var name="entRef" type="EntityReference"/>
+<var name="elem" type="Element"/>
+<var name="removed" type="EntityReference"/>
+<var name="removedNode" type="Node"/>
+<var name="removedName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="entRefChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="parentList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="parentList" index="3" interface="NodeList"/>
+<attributes var="attrsMap" obj="elem"/>
+<getNamedItem var="parent" obj="attrsMap" name='"class"'/>
+<createEntityReference var="entRef" obj="doc" name='"delta"'/>
+<appendChild obj="parent" var="appendedChild" newChild="entRef"/>
+<lastChild var="child" obj="parent" interface="Node"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeName obj="removed" var="removedName"/>
+<assertEquals actual="removedName" expected='"delta"' id="noderemovechild31" ignoreCase="false"/>
+<!--
+Remove a non-child from an entity reference
+Should throw either a NO_MODIFICATION_ALLOWED_ERR or a NOT_FOUND_ERR
+-->
+<try>
+ <removeChild obj="child" var="removedNode" oldChild="parent" />
+ <fail id="throw_DOMException"/>
+ <catch>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ <DOMException code="NOT_FOUND_ERR"/>
+ </catch>
+</try>
+<!--
+Remove a child of the entity reference
+ Expect a NO_MODIFICATION_ALLOWED_ERR exception
+-->
+<firstChild var="entRefChild" obj="child" interface="Node"/>
+<if>
+ <!-- entity may not be resolved if validating is false -->
+ <notNull obj="entRefChild"/>
+ <assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeChild obj="child" var="removedNode" oldChild="entRefChild"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+ </assertDOMException>
+</if>
+
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild01.xml b/test/testcases/tests/level3/core/nodereplacechild01.xml
new file mode 100644
index 0000000..5232835
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild01.xml
@@ -0,0 +1,47 @@
+<?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="nodereplacechild01">
+<metadata>
+<title>nodereplacechild01</title>
+<creator>IBM</creator>
+<description>
+ The method replaceChild replaces the child node oldChild with newChild in the list of
+ children, and returns the oldChild node.
+
+
+ Using replaceChild on this Document node attempt to replace this Document node with itself
+ and verify if a HIERARCHY_REQUEST_ERR error or a NOT_FOUND_ERR (since oldChild
+ is not a child of this node) is thrown.
+</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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<try>
+ <replaceChild obj="doc" var="replaced" oldChild="doc" newChild="doc"/>
+ <catch>
+ <DOMException code="NOT_FOUND_ERR"/>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild02.xml b/test/testcases/tests/level3/core/nodereplacechild02.xml
new file mode 100644
index 0000000..60d506b
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild02.xml
@@ -0,0 +1,41 @@
+<?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="nodereplacechild02">
+<metadata>
+<title>nodereplacechild02</title>
+<creator>IBM</creator>
+<description>
+ The method replaceChild replaces the child node oldChild with newChild in the list of
+ children, and returns the oldChild node.
+
+ Using replaceChild on this Document node attempt to replace this DocumentType node with
+ its DocumentType (replacing node with itself -- implementation dependent)
+ </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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc"/>
+<replaceChild obj="doc" var="replaced" oldChild="docType" newChild="docType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild03.xml b/test/testcases/tests/level3/core/nodereplacechild03.xml
new file mode 100644
index 0000000..c77b190
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild03.xml
@@ -0,0 +1,52 @@
+<?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="nodereplacechild03">
+<metadata>
+<title>nodereplacechild03</title>
+<creator>IBM</creator>
+<description>
+ The method replaceChild replaces the child node oldChild with newChild in the list of
+ children, and returns the oldChild node.
+
+ Using replaceChild on this Document node attempt to replace this Document node with
+ a new DocumentNode and verify if a HIERARCHY_REQUEST_ERR, WRONG_DOCUMENT_ERR
+ or NOT_FOUND_ERR is thrown.
+</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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM"' qualifiedName='"dom3:doc"' doctype="nullDocType"/>
+<try>
+ <replaceChild obj="doc" var="replaced" oldChild="doc" newChild="newDoc"/>
+ <catch>
+ <DOMException code="NOT_FOUND_ERR"/>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="WRONG_DOCUMENT_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild04.xml b/test/testcases/tests/level3/core/nodereplacechild04.xml
new file mode 100644
index 0000000..908d6a3
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild04.xml
@@ -0,0 +1,47 @@
+<?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="nodereplacechild04">
+<metadata>
+<title>nodereplacechild04</title>
+<creator>IBM</creator>
+<description>
+ The method replaceChild replaces the child node oldChild with newChild in the list of
+ children, and returns the oldChild node.
+
+ Using replaceChild on this Document node attempt to replace this DocumentElement node with
+ this Document Node and verify if a HIERARCHY_REQUEST_ERR or a NOT_FOUND_ERR error is thrown.
+</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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<documentElement var="docElem" obj="doc"/>
+<try>
+ <replaceChild obj="doc" var="replaced" oldChild="docElem" newChild="doc"/>
+ <catch>
+ <DOMException code="NOT_FOUND_ERR"/>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild06.xml b/test/testcases/tests/level3/core/nodereplacechild06.xml
new file mode 100644
index 0000000..8bda09a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild06.xml
@@ -0,0 +1,53 @@
+<?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="nodereplacechild06">
+<metadata>
+<title>nodereplacechild06</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on this Document node attempt to replace this DocumentElement node
+ with one of its child elements and verify if the name of the replaced documentElement Node.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="replaced" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="childList" type="NodeList"/>
+<var name="nodeName" type="DOMString"/>
+<var name="replacedNode" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="childList" index="0" interface="NodeList"/>
+<try>
+ <replaceChild obj="doc" var="replacedNode" oldChild="docElem" newChild="elem"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<documentElement var="replaced" obj="doc"/>
+<nodeName obj="replaced" var="nodeName"/>
+<assertEquals actual="nodeName" expected='"p"' id="nodereplacechild06" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild07.xml b/test/testcases/tests/level3/core/nodereplacechild07.xml
new file mode 100644
index 0000000..8f74c07
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild07.xml
@@ -0,0 +1,55 @@
+<?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="nodereplacechild07">
+<metadata>
+<title>nodereplacechild07</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on this Document node attempt to replace this DocumentElement node
+ with a new element and verify if the name of the replaced documentElement Node.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="replaced" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="nodeName" type="DOMString"/>
+<var name="replacedNode" type="Node"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<createElementNS var="elem" obj="doc" namespaceURI='rootNS' qualifiedName='rootName'/>
+<try>
+ <replaceChild obj="doc" var="replacedNode" oldChild="docElem" newChild="elem"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<documentElement var="replaced" obj="doc"/>
+<nodeName obj="replaced" var="nodeName"/>
+<assertEquals actual="nodeName" expected='rootName' id="nodereplacechild07" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild08.xml b/test/testcases/tests/level3/core/nodereplacechild08.xml
new file mode 100644
index 0000000..51a0550
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild08.xml
@@ -0,0 +1,57 @@
+<?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="nodereplacechild08">
+<metadata>
+<title>nodereplacechild08</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on this Document node attempt to replace this DocumentElement node
+ with a new element that was created in another document and verify if a
+ WRONG_DOCUMENT_ERR is thrown.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="nodeName" type="DOMString"/>
+<var name="replaced" type="Node"/>
+<var name="rootNS" type="DOMString"/>
+<var name="rootName" type="DOMString"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<implementation var="domImpl"/>
+<createDocument var="doc2" obj="domImpl" namespaceURI="rootNS" qualifiedName="rootName" doctype="nullDocType"/>
+<createElementNS var="elem" obj="doc2" namespaceURI='rootNS' qualifiedName='rootName'/>
+<try>
+ <replaceChild obj="doc" var="replaced" oldChild="docElem" newChild="elem"/>
+ <fail id="throw_WRONG_DOCUMENT_OR_NOT_SUPPORTED"/>
+ <catch>
+ <DOMException code="WRONG_DOCUMENT_ERR"/>
+ <DOMException code="NOT_SUPPORTED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild10.xml b/test/testcases/tests/level3/core/nodereplacechild10.xml
new file mode 100644
index 0000000..818e226
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild10.xml
@@ -0,0 +1,61 @@
+<?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="nodereplacechild10">
+<metadata>
+<title>nodereplacechild10</title>
+<creator>IBM</creator>
+<description>
+ The method replaceChild replaces the child node oldChild with newChild in the list of
+ children, and returns the oldChild node.
+
+ Using replaceChild on this Document node attempt to replace an Entity node with
+ a notation node of retieved from the DTD of another document and verify if a
+ NOT_FOUND_ERR or WRONG_DOCUMENT_ERR or HIERARCHY_REQUEST err is thrown.
+</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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="ent" type="Entity"/>
+<var name="doc1" type="Document"/>
+<var name="docType1" type="DocumentType"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc" />
+<entities var="entitiesMap" obj="docType" />
+<getNamedItem var="ent" obj="entitiesMap" name='"alpha"'/>
+<load var="doc1" href="hc_staff" willBeModified="false"/>
+<doctype var="docType1" obj="doc1" />
+<notations var="notationsMap" obj="docType1" />
+<getNamedItem var="notation" obj="notationsMap" name='"notation1"'/>
+<try>
+ <replaceChild obj="doc" var="replaced" oldChild="ent" newChild="notation"/>
+ <catch>
+ <DOMException code="NOT_FOUND_ERR"/>
+ <DOMException code="WRONG_DOCUMENT_ERR"/>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild12.xml b/test/testcases/tests/level3/core/nodereplacechild12.xml
new file mode 100644
index 0000000..db65ea1
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild12.xml
@@ -0,0 +1,53 @@
+<?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="nodereplacechild12">
+<metadata>
+<title>nodereplacechild12</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on this Document node, attempt to replace a new ProcessingInstruction
+ node with new Comment node.
+</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#ID-785887307"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=416"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="replaced" type="Node"/>
+<var name="comment" type="Comment"/>
+<var name="lastChild" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="replacedNode" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<createComment var="comment" obj="doc" data='"dom3:doc"'/>
+<createProcessingInstruction var="pi" obj="doc" target='"PITarget"' data='"PIData"'/>
+<appendChild obj="doc" var="appendedChild" newChild="comment"/>
+<appendChild obj="doc" var="appendedChild" newChild="pi"/>
+<replaceChild obj="doc" var="replacedNode" oldChild="pi" newChild="comment"/>
+<assertNotNull actual="replacedNode" id="returnValueNotNull"/>
+<nodeName var="nodeName" obj="replacedNode"/>
+<assertEquals actual="nodeName" expected='"PITarget"' id="returnValueIsPI" ignoreCase="false"/>
+<lastChild var="lastChild" obj="doc" interface="Node"/>
+<assertNotNull actual="lastChild" id="lastChildNotNull"/>
+<nodeName var="nodeName" obj="lastChild"/>
+<assertEquals actual="nodeName" expected='"#comment"' id="lastChildIsComment" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild13.xml b/test/testcases/tests/level3/core/nodereplacechild13.xml
new file mode 100644
index 0000000..ee42adb
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild13.xml
@@ -0,0 +1,59 @@
+<?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="nodereplacechild13">
+<metadata>
+<title>nodereplacechild13</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on this Document node attempt to replace this DocumentType node with
+ a new DocumentType and verify the name of the replaced DocumentType node.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="newDocType" type="DocumentType"/>
+<var name="replaced" type="DocumentType"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nullPubId" type="DOMString" isNull="true"/>
+<var name="nullSysId" type="DOMString" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="docElemName" type="DOMString"/>
+<var name="docElemNS" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="docElemName" obj="docElem"/>
+<namespaceURI var="docElemNS" obj="docElem" interface="Node"/>
+<doctype var="docType" obj="doc"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="newDocType" obj="domImpl" qualifiedName='docElemName' publicId="nullPubId" systemId="nullSysId"/>
+<try>
+ <replaceChild var="replaced" obj="doc" oldChild="docType" newChild="newDocType"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<nodeName var="nodeName" obj="replaced"/>
+<assertEquals actual="nodeName" expected='docElemName' id="nodereplacechild13" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild14.xml b/test/testcases/tests/level3/core/nodereplacechild14.xml
new file mode 100644
index 0000000..cc12abc
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild14.xml
@@ -0,0 +1,59 @@
+<?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="nodereplacechild14">
+<metadata>
+<title>nodereplacechild14</title>
+<creator>IBM</creator>
+<description>
+ The method replaceChild replaces the child node oldChild with newChild in the list of
+ children, and returns the oldChild node.
+
+ Using replaceChild on the documentElement of a newly created Document node, attempt to replace an
+ element child of this documentElement node with a child that was imported from another document.
+ Verify the nodeName of the replaced element node.
+</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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="newDoc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="elem2" type="Element"/>
+<var name="imported" type="Node"/>
+<var name="replaced" type="Element"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nodeName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom3:doc1elem"'/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" qualifiedName='"dom3:doc"' namespaceURI='"http://www.w3.org/DOM/test"' doctype="nullDocType"/>
+<createElementNS var="elem2" obj="newDoc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom3:doc2elem"'/>
+<importNode var="imported" obj="newDoc" importedNode="elem" deep="true"/>
+<documentElement var="docElem" obj="newDoc" interface="Document"/>
+<appendChild obj="docElem" var="appendedChild" newChild="imported"/>
+<appendChild obj="docElem" var="appendedChild" newChild="elem2"/>
+<replaceChild var="replaced" obj="docElem" oldChild="elem2" newChild="imported"/>
+<nodeName var="nodeName" obj="replaced"/>
+<assertEquals actual="nodeName" expected='"dom3:doc2elem"' id="nodereplacechild14" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild15.xml b/test/testcases/tests/level3/core/nodereplacechild15.xml
new file mode 100644
index 0000000..16b670e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild15.xml
@@ -0,0 +1,55 @@
+<?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="nodereplacechild15">
+<metadata>
+<title>nodereplacechild15</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a DocumentFragment node attempt to replace an Element node with
+ another Element and the replaced element.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="elem" type="Element"/>
+<var name="elem2" type="Element"/>
+<var name="replaced" type="Element"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="title" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="docElem" type="Element"/>
+<var name="rootName" type="DOMString"/>
+<var name="rootNS" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<createElementNS var="elem" obj="doc" namespaceURI="rootNS" qualifiedName="rootName"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createElementNS var="elem2" obj="doc" namespaceURI="rootNS" qualifiedName="rootName"/>
+<setAttribute obj="elem2" name='"title"' value='"new element"'/>
+<appendChild obj="docFrag" var="appendedChild" newChild="elem2"/>
+<replaceChild var="replaced" obj="docFrag" oldChild="elem2" newChild="elem"/>
+<getAttribute var="title" obj="replaced" name='"title"'/>
+<assertEquals actual="title" expected='"new element"' id="nodereplacechild15" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild16.xml b/test/testcases/tests/level3/core/nodereplacechild16.xml
new file mode 100644
index 0000000..178b248
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild16.xml
@@ -0,0 +1,47 @@
+<?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="nodereplacechild16">
+<metadata>
+<title>nodereplacechild16</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a DocumentFragment node attempt to replace an Element node with
+ another Element and verify the name of the replaced Element node.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="replaced" type="Element"/>
+<var name="nodeName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createTextNode var="txt" obj="doc" data='"Comment"'/>
+<appendChild obj="docFrag" var="appendedChild" newChild="txt"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="elem"/>
+<replaceChild var="replaced" obj="docFrag" oldChild="elem" newChild="txt"/>
+<nodeName var="nodeName" obj="replaced"/>
+<assertEquals actual="nodeName" expected='"dom3:p"' id="nodereplacechild16" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild17.xml b/test/testcases/tests/level3/core/nodereplacechild17.xml
new file mode 100644
index 0000000..1fd9bbf
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild17.xml
@@ -0,0 +1,55 @@
+<?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="nodereplacechild17">
+<metadata>
+<title>nodereplacechild17</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using replaceChild on a DocumentFragment node attempt to replace a Comment node with
+ a ProcessingInstruction and vice versa verify the data of the replaced nodes.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="cmt" type="Comment"/>
+<var name="replacedCmt" type="Comment"/>
+<var name="replacedPi" type="ProcessingInstruction"/>
+<var name="data" type="DOMString"/>
+<var name="target" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createComment var="cmt" obj="doc" data='"Comment"'/>
+<createProcessingInstruction var="pi" obj="doc" target='"target"' data='"Comment"'/>
+<appendChild obj="docFrag" var="appendedChild" newChild="pi"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="cmt"/>
+<replaceChild var="replacedCmt" obj="docFrag" oldChild="cmt" newChild="pi"/>
+<data var="data" obj="replacedCmt" interface="CharacterData"/>
+<assertEquals actual="data" expected='"Comment"' id="nodereplacechild17_1" ignoreCase="false"/>
+<replaceChild var="replacedPi" obj="docFrag" oldChild="pi" newChild="cmt"/>
+<target var="target" obj="replacedPi" interface="ProcessingInstruction"/>
+<assertEquals actual="target" expected='"target"' id="nodereplacechild17_2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild18.xml b/test/testcases/tests/level3/core/nodereplacechild18.xml
new file mode 100644
index 0000000..e6d8707
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild18.xml
@@ -0,0 +1,52 @@
+<?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="nodereplacechild18">
+<metadata>
+<title>nodereplacechild18</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a DocumentFragment node attempt to replace a CDATASection node with
+ a EntityReference and vice versa verify the data of the replaced nodes.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="entRef" type="EntityReference"/>
+<var name="cdata" type="CDATASection"/>
+<var name="replacedCData" type="CDATASection"/>
+<var name="replacedEref" type="EntityReference"/>
+<var name="cdataName" type="DOMString"/>
+<var name="erefName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createCDATASection var="cdata" obj="doc" data='"CDATASection"'/>
+<createEntityReference var="entRef" obj="doc" name='"alpha"'/>
+<appendChild obj="docFrag" var="appendedChild" newChild="entRef"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="cdata"/>
+<replaceChild var="replacedCData" obj="docFrag" oldChild="cdata" newChild="entRef"/>
+<nodeValue var="cdataName" obj="replacedCData"/>
+<assertEquals actual="cdataName" expected='"CDATASection"' id="nodereplacechild18_1" ignoreCase="false"/>
+<replaceChild var="replacedEref" obj="docFrag" oldChild="entRef" newChild="cdata"/>
+<nodeName var="erefName" obj="replacedEref"/>
+<assertEquals actual="erefName" expected='"alpha"' id="nodereplacechild18_2" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild19.xml b/test/testcases/tests/level3/core/nodereplacechild19.xml
new file mode 100644
index 0000000..0c70e38
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild19.xml
@@ -0,0 +1,47 @@
+<?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="nodereplacechild19">
+<metadata>
+<title>nodereplacechild19</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a DocumentFragment node attempt to replace an Element node with
+ its EntityReference child verify the nodeName of the replaced node.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="entRef" type="EntityReference"/>
+<var name="elem" type="Element"/>
+<var name="replaced" type="Element"/>
+<var name="nodeName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createEntityReference var="entRef" obj="doc" name='"alpha"'/>
+<appendChild obj="elem" var="appendedChild" newChild="entRef"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="elem"/>
+<replaceChild var="replaced" obj="docFrag" oldChild="elem" newChild="entRef"/>
+<nodeName var="nodeName" obj="replaced"/>
+<assertEquals actual="nodeName" expected='"dom3:p"' id="nodereplacechild19" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild20.xml b/test/testcases/tests/level3/core/nodereplacechild20.xml
new file mode 100644
index 0000000..b12a47c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild20.xml
@@ -0,0 +1,48 @@
+<?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="nodereplacechild20">
+<metadata>
+<title>nodereplacechild20</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a DocumentFragment node attempt to replace an Element node with
+ an Attr Node and verify if a HIERARCHY_REQUEST_ERR is thrown.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="replaced" type="Element"/>
+<var name="nodeName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<appendChild obj="docFrag" var="appendedChild" newChild="elem"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<replaceChild var="replaced" obj="docFrag" oldChild="elem" newChild="attr"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild21.xml b/test/testcases/tests/level3/core/nodereplacechild21.xml
new file mode 100644
index 0000000..eee19e3
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild21.xml
@@ -0,0 +1,64 @@
+<?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="nodereplacechild21">
+<metadata>
+<title>nodereplacechild21</title>
+<creator>IBM</creator>
+<description>
+ The method replaceChild replaces the child node oldChild with newChild in the list of
+ children, and returns the oldChild node.
+
+ Using replaceChild on this DocumentType node attempt to replace an Entity node with
+ a notation node of retieved from the DTD of another document and verify if a
+ NO_MODIFICATION_ALLOWED_ERR is thrown since DocumentType node is read-only.
+ Also try replacing the docType with an entity node and see if the same exception gets thrown.
+</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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="ent" type="Entity"/>
+<var name="doc1" type="Document"/>
+<var name="docType1" type="DocumentType"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="replacedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<doctype var="docType" obj="doc" />
+<entities var="entitiesMap" obj="docType" />
+<getNamedItem var="ent" obj="entitiesMap" name='"alpha"'/>
+<load var="doc1" href="hc_staff" willBeModified="false"/>
+<doctype var="docType1" obj="doc1" />
+<notations var="notationsMap" obj="docType1" />
+<getNamedItem var="notation" obj="notationsMap" name='"notation1"'/>
+<assertDOMException id="NO_MODIFICATION_ALLOWED_ERR1_nodereplacechild21">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild obj="docType" var="replacedChild" oldChild="ent" newChild="notation"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<assertDOMException id="NO_MODIFICATION_ALLOWED_ERR2_nodereplacechild21">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild obj="docType" var="replacedChild" oldChild="docType" newChild="ent"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild22.xml b/test/testcases/tests/level3/core/nodereplacechild22.xml
new file mode 100644
index 0000000..30d8186
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild22.xml
@@ -0,0 +1,57 @@
+<?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="nodereplacechild22">
+<metadata>
+<title>nodereplacechild22</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a new EntityReference node attempt to replace an EntityReference node with
+ its Element parent, with itself and vice versa verify if a NO_MODIFICATION_ALLOWED_ERR is thrown.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRefMain" type="EntityReference"/>
+<var name="entRef" type="EntityReference"/>
+<var name="elem" type="Element"/>
+<var name="appendedChild" type="Node"/>
+<var name="replacedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createEntityReference var="entRefMain" obj="doc" name='"delta"'/>
+<createEntityReference var="entRef" obj="doc" name='"beta"'/>
+<appendChild obj="elem" var="appendedChild" newChild="entRef"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_1">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild obj="entRefMain" var="replacedChild" oldChild="entRef" newChild="elem"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_2">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild obj="entRefMain" var="replacedChild" oldChild="elem" newChild="entRef"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_3">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild obj="entRefMain" var="replacedChild" oldChild="entRef" newChild="entRefMain"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild23.xml b/test/testcases/tests/level3/core/nodereplacechild23.xml
new file mode 100644
index 0000000..f8a54b0
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild23.xml
@@ -0,0 +1,78 @@
+<?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="nodereplacechild23">
+<metadata>
+<title>nodereplacechild23</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a new EntityReference node attempt to replace an Element, Text,
+ Comment, ProcessingInstruction and CDATASection nodes with each other and in each case
+ verify if a NO_MODIFICATION_ALLOWED_ERR is thrown.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="entRef" type="EntityReference"/>
+<var name="txt" type="Text"/>
+<var name="elem" type="Element"/>
+<var name="comment" type="Comment"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="cdata" type="CDATASection"/>
+<var name="replaced" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:p"'/>
+<createEntityReference var="entRef" obj="doc" name='"delta"'/>
+<createTextNode var="txt" obj="doc" data='"Text"'/>
+<createComment var="comment" obj="doc" data='"Comment"'/>
+<createCDATASection var="cdata" obj="doc" data='"CDATASection"'/>
+<createProcessingInstruction var="pi" obj="doc" target='"target"' data='"data"'/>
+<appendChild obj="elem" var="appendedChild" newChild="entRef"/>
+<appendChild obj="elem" var="appendedChild" newChild="txt"/>
+<appendChild obj="elem" var="appendedChild" newChild="comment"/>
+<appendChild obj="elem" var="appendedChild" newChild="pi"/>
+<appendChild obj="elem" var="appendedChild" newChild="cdata"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_1">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild obj="entRef" var="replaced" oldChild="elem" newChild="cdata"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_2">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild obj="entRef" var="replaced" oldChild="cdata" newChild="pi"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_3">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild obj="entRef" var="replaced" oldChild="pi" newChild="comment"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_4">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild obj="entRef" var="replaced" oldChild="comment" newChild="txt"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR_5">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild obj="entRef" var="replaced" oldChild="txt" newChild="elem"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild24.xml b/test/testcases/tests/level3/core/nodereplacechild24.xml
new file mode 100644
index 0000000..f91a67b
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild24.xml
@@ -0,0 +1,47 @@
+<?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="nodereplacechild24">
+<metadata>
+<title>nodereplacechild24</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on an EntityReference node attempt to replace an Element node with
+ an EntityReference node verify if a NO_MODIFICATION_ALLOWED_ERR gets thrown.
+</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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="entRef" type="EntityReference"/>
+<var name="elem" type="Element"/>
+<var name="replaced" type="Element"/>
+<var name="nodeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="childList" index="1" interface="NodeList"/>
+<firstChild var="entRef" obj="elem" interface="Node"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild var="replaced" obj="entRef" oldChild="elem" newChild="entRef"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild25.xml b/test/testcases/tests/level3/core/nodereplacechild25.xml
new file mode 100644
index 0000000..dd0d64c
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild25.xml
@@ -0,0 +1,58 @@
+<?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="nodereplacechild25">
+<metadata>
+<title>nodereplacechild25</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on an Element node attempt to replace an
+ EntityReference or Text child node
+ with an Entity node and with itself and verify if a HIERARCHY_REQUEST_ERR gets thrown.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="childList" type="NodeList"/>
+<var name="entRef" type="Node"/>
+<var name="elem" type="Element"/>
+<var name="replaced" type="Element"/>
+<var name="nodeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entities" obj="docType"/>
+<getNamedItem var="entity" obj="entities" name='"alpha"'/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="childList" index="1" interface="NodeList"/>
+<firstChild var="entRef" obj="elem" interface="Node"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR_1">
+<HIERARCHY_REQUEST_ERR>
+<replaceChild var="replaced" obj="elem" oldChild="entRef" newChild="entity"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR_2">
+<HIERARCHY_REQUEST_ERR>
+<replaceChild var="replaced" obj="elem" oldChild="entRef" newChild="elem"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild26.xml b/test/testcases/tests/level3/core/nodereplacechild26.xml
new file mode 100644
index 0000000..61ee622
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild26.xml
@@ -0,0 +1,48 @@
+<?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="nodereplacechild26">
+<metadata>
+<title>nodereplacechild26</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on an Element node attempt to replace a Text child node with an Element
+ node that is an ancestor of this Element node and verify if a HIERARCHY_REQUEST_ERR gets thrown.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="docElem" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="firstChild" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="childList" index="0" interface="NodeList"/>
+<firstChild var="firstChild" obj="elem" interface="Node"/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<replaceChild obj="elem" var="replaced" oldChild="firstChild" newChild="docElem"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild27.xml b/test/testcases/tests/level3/core/nodereplacechild27.xml
new file mode 100644
index 0000000..df26995
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild27.xml
@@ -0,0 +1,57 @@
+<?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="nodereplacechild27">
+<metadata>
+<title>nodereplacechild27</title>
+<creator>IBM</creator>
+<description>
+ The method replaceChild replaces the child node oldChild with newChild in the list of
+ children, and returns the oldChild node.
+
+ Using replaceChild on an Element node attempt to replace an Element node with another
+ Element from another document and verify if a WRONG_DOCUMENT_ERR gets thrown.
+</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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="childList2" type="NodeList"/>
+<var name="elem2" type="Element"/>
+<var name="elem" type="Element"/>
+<var name="firstChild" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagNameNS var="childList" obj="doc" namespaceURI='"*"' localName='"p"' interface="Document"/>
+<item var="elem" obj="childList" index="0" interface="NodeList"/>
+<firstChild var="firstChild" obj="elem" interface="Node"/>
+<load var="doc2" href="hc_staff" willBeModified="false"/>
+<getElementsByTagNameNS var="childList2" obj="doc2" namespaceURI='"*"' localName='"p"' interface="Document"/>
+<item var="elem2" obj="childList2" index="0" interface="NodeList"/>
+<assertDOMException id="WRONG_DOCUMENT_ERR_nodereplacechild27">
+<WRONG_DOCUMENT_ERR>
+<replaceChild obj="elem" var="replaced" oldChild="firstChild" newChild="elem2"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild28.xml b/test/testcases/tests/level3/core/nodereplacechild28.xml
new file mode 100644
index 0000000..2dc6239
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild28.xml
@@ -0,0 +1,56 @@
+<?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="nodereplacechild28">
+<metadata>
+<title>nodereplacechild28</title>
+<creator>IBM</creator>
+<description>
+Attempt to replace a text node with a text node from an
+entity reference. Since the replacing text node should be removed
+from its current location first, a NO_MODIFICATION_ALLOWED_ERR should
+be thrown.
+</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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="acronym" type="Element"/>
+<var name="betaRef" type="EntityReference"/>
+<var name="dallas" type="Text"/>
+<var name="betaText" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<var name="replacedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronym" obj="childList" index="1" interface="NodeList"/>
+<firstChild var="betaRef" obj="acronym" interface="Node"/>
+<assertNotNull actual="betaRef" id="betaRefNotNull"/>
+<firstChild var="betaText" obj="betaRef" interface="Node"/>
+<assertNotNull actual="betaText" id="betaTextNotNull"/>
+<nextSibling var="dallas" obj="betaRef" interface="Node"/>
+<assertNotNull actual="dallas" id="dallasNotNull"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <replaceChild obj="acronym" var="replacedChild" oldChild="dallas" newChild="betaText"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild29.xml b/test/testcases/tests/level3/core/nodereplacechild29.xml
new file mode 100644
index 0000000..0a88073
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild29.xml
@@ -0,0 +1,47 @@
+<?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="nodereplacechild29">
+<metadata>
+<title>nodereplacechild29</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on an Element node attempt to replace a new Element node with
+ another new Element node and verify if a NOT_FOUND_ERR gets thrown.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="oldChild" type="Element"/>
+<var name="newChild" type="Element"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="childList" index="0" interface="NodeList"/>
+<createElementNS var="oldChild" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:br"'/>
+<createElementNS var="newChild" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"dom3:span"'/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<replaceChild obj="elem" var="replaced" oldChild="oldChild" newChild="newChild"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild30.xml b/test/testcases/tests/level3/core/nodereplacechild30.xml
new file mode 100644
index 0000000..c7c161a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild30.xml
@@ -0,0 +1,89 @@
+<?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="nodereplacechild30">
+<metadata>
+<title>nodereplacechild30</title>
+<creator>IBM</creator>
+<description>
+
+
+
+ Using replaceChild on an Element node attempt to replace a new Element child node with
+ new child nodes and vice versa and in each case verify the name of the replaced node.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parent" type="Element"/>
+<var name="oldChild" type="Element"/>
+<var name="newElement" type="Element"/>
+<var name="newText" type="Text"/>
+<var name="newComment" type="Comment"/>
+<var name="newPI" type="ProcessingInstruction"/>
+<var name="newCdata" type="CDATASection"/>
+<var name="newERef" type="EntityReference"/>
+<var name="replaced" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElementNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:html"'/>
+<createElementNS var="oldChild" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:head"'/>
+<createElementNS var="newElement" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:body"'/>
+<appendChild obj="parent" var="appendedChild" newChild="oldChild"/>
+<appendChild obj="parent" var="appendedChild" newChild="newElement"/>
+<createTextNode var="newText" obj="doc" data='"Text"' />
+<appendChild obj="parent" var="appendedChild" newChild="newText"/>
+<createComment var="newComment" obj="doc" data='"Comment"' />
+<appendChild obj="parent" var="appendedChild" newChild="newComment"/>
+<createProcessingInstruction var="newPI" obj="doc" target='"target"' data='"data"' />
+<appendChild obj="parent" var="appendedChild" newChild="newPI"/>
+<createCDATASection var="newCdata" obj="doc" data='"Cdata"' />
+<appendChild obj="parent" var="appendedChild" newChild="newCdata"/>
+<createEntityReference var="newERef" obj="doc" name='"delta"' />
+<appendChild obj="parent" var="appendedChild" newChild="newERef"/>
+<replaceChild var="replaced" obj="parent" oldChild="oldChild" newChild="newElement"/>
+<nodeName var="nodeName" obj="replaced" />
+<assertEquals actual="nodeName" expected='"xhtml:head"' id="nodereplacechild30_1" ignoreCase="false"/>
+<replaceChild var="replaced" obj="parent" oldChild="newElement" newChild="oldChild"/>
+<nodeName var="nodeName" obj="replaced" />
+<assertEquals actual="nodeName" expected='"xhtml:body"' id="nodereplacechild30_2" ignoreCase="false"/>
+<replaceChild var="replaced" obj="parent" oldChild="oldChild" newChild="newText"/>
+<nodeName var="nodeName" obj="replaced" />
+<assertEquals actual="nodeName" expected='"xhtml:head"' id="nodereplacechild30_3" ignoreCase="false"/>
+<replaceChild var="replaced" obj="parent" oldChild="newText" newChild="oldChild"/>
+<nodeName var="nodeName" obj="replaced" />
+<assertEquals actual="nodeName" expected='"#text"' id="nodereplacechild30_4" ignoreCase="false"/>
+<replaceChild var="replaced" obj="parent" oldChild="oldChild" newChild="newComment"/>
+<nodeName var="nodeName" obj="replaced" />
+<assertEquals actual="nodeName" expected='"xhtml:head"' id="nodereplacechild30_5" ignoreCase="false"/>
+<replaceChild var="replaced" obj="parent" oldChild="newComment" newChild="oldChild"/>
+<nodeName var="nodeName" obj="replaced" />
+<assertEquals actual="nodeName" expected='"#comment"' id="nodereplacechild30_6" ignoreCase="false"/>
+<replaceChild var="replaced" obj="parent" oldChild="newPI" newChild="oldChild"/>
+<nodeName var="nodeName" obj="replaced" />
+<assertEquals actual="nodeName" expected='"target"' id="nodereplacechild30_7" ignoreCase="false"/>
+<replaceChild var="replaced" obj="parent" oldChild="newCdata" newChild="oldChild"/>
+<nodeName var="nodeName" obj="replaced" />
+<assertEquals actual="nodeName" expected='"#cdata-section"' id="nodereplacechild30_8" ignoreCase="false"/>
+<replaceChild var="replaced" obj="parent" oldChild="newERef" newChild="oldChild"/>
+<nodeName var="nodeName" obj="replaced" />
+<assertEquals actual="nodeName" expected='"delta"' id="nodereplacechild30_9" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild31.xml b/test/testcases/tests/level3/core/nodereplacechild31.xml
new file mode 100644
index 0000000..16a9b43
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild31.xml
@@ -0,0 +1,55 @@
+<?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="nodereplacechild31">
+<metadata>
+<title>nodereplacechild31</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on an Element node that is the replacement Text of an EntityReference
+ node, attempt to replace its Text child node with a new Element node and verify if
+ a NO_MODIFICATION_ALLOWED_ERR gets thrown.
+</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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="span" type="Element"/>
+<var name="ent4Ref" type="EntityReference"/>
+<var name="spanText" type="Text"/>
+<var name="newChild" type="Element"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="childList" obj="doc" tagname='"var"' interface="Document"/>
+<item var="elem" obj="childList" index="2" interface="NodeList"/>
+<firstChild var="ent4Ref" obj="elem" interface="Node"/>
+<firstChild var="span" obj="ent4Ref" interface="Node"/>
+<assertNotNull actual="span" id="spanNotNull"/>
+<firstChild var="spanText" obj="span" interface="Node"/>
+<assertNotNull actual="spanText" id="spanTextNotNull"/>
+<createElementNS var="newChild" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:p"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+<NO_MODIFICATION_ALLOWED_ERR>
+<replaceChild obj="span" var="replaced" oldChild="spanText" newChild="newChild"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild32.xml b/test/testcases/tests/level3/core/nodereplacechild32.xml
new file mode 100644
index 0000000..62dbdb3
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild32.xml
@@ -0,0 +1,59 @@
+<?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="nodereplacechild32">
+<metadata>
+<title>nodereplacechild32</title>
+<creator>IBM</creator>
+<description>
+ The method replaceChild replaces the child node oldChild with newChild in the list of
+ children, and returns the oldChild node.
+
+ Using replaceChild on an Attr node to replace its EntityReference Child with a
+ new Text Node and verify the name of the replaced child.
+</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#ID-785887307"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="parent" type="Attr"/>
+<var name="oldChild" type="Node"/>
+<var name="newChild" type="Text"/>
+<var name="replaced" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="enRef" type="EntityReference"/>
+<var name="enRefChild" type="EntityReference"/>
+<var name="reference" type="DOMString" value='"entity1"'/>
+
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createTextNode var="newChild" obj="doc" data='"Text"' />
+<getElementsByTagNameNS var="childList" obj="doc" namespaceURI='"*"' localName='"acronym"' interface="Document"/>
+<item var="elem" obj="childList" index="3" interface="NodeList"/>
+<getAttributeNode var="parent" obj="elem" name='"class"'/>
+<createEntityReference var="enRef" obj="doc" name="reference"/>
+<appendChild var="enRefChild" obj="parent" newChild="enRef"/>
+<replaceChild var="replaced" obj="parent" oldChild="enRefChild" newChild="newChild"/>
+<nodeName var="nodeName" obj="replaced" />
+<assertEquals actual="nodeName" expected='"entity1"' id="nodereplacechild32" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild33.xml b/test/testcases/tests/level3/core/nodereplacechild33.xml
new file mode 100644
index 0000000..ad04a3a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild33.xml
@@ -0,0 +1,48 @@
+<?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="nodereplacechild33">
+<metadata>
+<title>nodereplacechild33</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a default Attr node to replace its Text Child with a
+ new EntityReference Node and verify the value of the replaced child.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="childList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="parent" type="Attr"/>
+<var name="oldChild" type="Node"/>
+<var name="newChild" type="EntityReference"/>
+<var name="replaced" type="Node"/>
+<var name="nodeValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createEntityReference var="newChild" obj="doc" name='"delta"' />
+<getElementsByTagName var="childList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="childList" index="3" interface="NodeList"/>
+<getAttributeNode var="parent" obj="elem" name='"dir"'/>
+<lastChild var="oldChild" obj="parent" interface="Node"/>
+<replaceChild var="replaced" obj="parent" oldChild="oldChild" newChild="newChild"/>
+<nodeValue var="nodeValue" obj="replaced" />
+<assertEquals actual="nodeValue" expected='"rtl"' id="nodereplacechild33" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild34.xml b/test/testcases/tests/level3/core/nodereplacechild34.xml
new file mode 100644
index 0000000..6fea992
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild34.xml
@@ -0,0 +1,46 @@
+<?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="nodereplacechild34">
+<metadata>
+<title>nodereplacechild34</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a new Attr node, replace its new EntityReference Child with a
+ new Text Node and verify the value of the new child.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parent" type="Attr"/>
+<var name="oldChild" type="EntityReference"/>
+<var name="newChild" type="Text"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttributeNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<createEntityReference var="oldChild" obj="doc" name='"delta"' />
+<appendChild obj="parent" var="appendedChild" newChild="oldChild"/>
+<createTextNode var="newChild" obj="doc" data='"Text"' />
+<replaceChild obj="parent" var="replaced" oldChild="oldChild" newChild="newChild"/>
+<value var="nodeValue" obj="parent" />
+<assertEquals actual="nodeValue" expected='"Text"' id="nodereplacechild34" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild35.xml b/test/testcases/tests/level3/core/nodereplacechild35.xml
new file mode 100644
index 0000000..dfb3379
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild35.xml
@@ -0,0 +1,48 @@
+<?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="nodereplacechild35">
+<metadata>
+<title>nodereplacechild35</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a new Attr node, replace its new EntityRefernece Child with a
+ new Attr Node and verify if a HIERARCHY_REQUEST_ERR is thrown.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parent" type="Attr"/>
+<var name="oldChild" type="EntityReference"/>
+<var name="newChild" type="Attr"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttributeNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<createEntityReference var="oldChild" obj="doc" name='"delta"' />
+<appendChild obj="parent" var="appendedChild" newChild="oldChild"/>
+<createAttributeNS var="newChild" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<assertDOMException id="throw_HIERARCHY_REQUEST_ERR">
+<HIERARCHY_REQUEST_ERR>
+<replaceChild obj="parent" var="replaced" oldChild="oldChild" newChild="newChild"/>
+</HIERARCHY_REQUEST_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild36.xml b/test/testcases/tests/level3/core/nodereplacechild36.xml
new file mode 100644
index 0000000..1f13b3a
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild36.xml
@@ -0,0 +1,46 @@
+<?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="nodereplacechild36">
+<metadata>
+<title>nodereplacechild36</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a new Attr node, replace its new EntityRefernece node with a
+ new Text Node and verify if a NOT_FOUND_ERR is thrown.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="parent" type="Attr"/>
+<var name="oldChild" type="EntityReference"/>
+<var name="newChild" type="Text"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createAttributeNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<createEntityReference var="oldChild" obj="doc" name='"delta"' />
+<createTextNode var="newChild" obj="doc" data='"Text"' />
+<assertDOMException id="throw_NOT_FOUND_ERR">
+<NOT_FOUND_ERR>
+<replaceChild obj="parent" var="replaced" oldChild="oldChild" newChild="newChild"/>
+</NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild37.xml b/test/testcases/tests/level3/core/nodereplacechild37.xml
new file mode 100644
index 0000000..c7ab0c0
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild37.xml
@@ -0,0 +1,51 @@
+<?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="nodereplacechild37">
+<metadata>
+<title>nodereplacechild37</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on a new Attr node, replace its new Text node with a
+ new EntityReference Node created by another document and verify if a
+ WRONG_DOCUMENT_ERR is raised.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="parent" type="Attr"/>
+<var name="oldChild" type="Text"/>
+<var name="newChild" type="EntityReference"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="replaced" type="Node"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<load var="doc2" href="hc_staff" willBeModified="true"/>
+<createAttributeNS var="parent" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<createTextNode var="oldChild" obj="doc" data='"Text"' />
+<createEntityReference var="newChild" obj="doc2" name='"delta"' />
+<appendChild obj="parent" var="appendedChild" newChild="oldChild"/>
+<assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+<WRONG_DOCUMENT_ERR>
+<replaceChild obj="parent" var="replaced" oldChild="oldChild" newChild="newChild"/>
+</WRONG_DOCUMENT_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild38.xml b/test/testcases/tests/level3/core/nodereplacechild38.xml
new file mode 100644
index 0000000..230baec
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild38.xml
@@ -0,0 +1,87 @@
+<?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="nodereplacechild38">
+<metadata>
+<title>nodereplacechild38</title>
+<creator>IBM</creator>
+<description>
+ Using replaceChild on an Entity node attempt to replace its Text child with new Text,
+ Comment, ProcessingInstruction and CDATASection nodes and in each case verify if
+ a NO_MODIFICATION_ALLOWED_ERR is raised.
+</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#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entitiesMap" type="NamedNodeMap"/>
+<var name="ent" type="Entity"/>
+<var name="oldChild" type="Text"/>
+<var name="entRef" type="EntityReference"/>
+<var name="txt" type="Text"/>
+<var name="elem" type="Element"/>
+<var name="comment" type="Comment"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="cdata" type="CDATASection"/>
+<var name="replaced" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc" />
+<entities var="entitiesMap" obj="docType" />
+<getNamedItem var="ent" obj="entitiesMap" name='"alpha"'/>
+<assertNotNull actual="ent" id="alphaEntity"/>
+<firstChild var="oldChild" obj="ent" interface="Node"/>
+<assertNotNull actual="oldChild" id="alphaText"/>
+<createCDATASection var="cdata" obj="doc" data='"CDATASection"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR1">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <replaceChild obj="ent" var="replaced" oldChild="oldChild" newChild="cdata"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<createProcessingInstruction var="pi" obj="doc" target='"target"' data='"data"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR2">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <replaceChild obj="ent" var="replaced" oldChild="oldChild" newChild="pi"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<createComment var="comment" obj="doc" data='"Comment"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR3">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <replaceChild obj="ent" var="replaced" oldChild="oldChild" newChild="comment"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<createTextNode var="txt" obj="doc" data='"Text"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR4">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <replaceChild obj="ent" var="replaced" oldChild="oldChild" newChild="txt"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:p"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR5">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <replaceChild obj="ent" var="replaced" oldChild="oldChild" newChild="elem"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+<createEntityReference var="entRef" obj="doc" name='"delta"'/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR6">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <replaceChild obj="ent" var="replaced" oldChild="oldChild" newChild="entRef"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild39.xml b/test/testcases/tests/level3/core/nodereplacechild39.xml
new file mode 100644
index 0000000..2c4a17e
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild39.xml
@@ -0,0 +1,52 @@
+<?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="nodereplacechild39">
+<metadata>
+<title>nodereplacechild39</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempt to add a second document element by a replacing a trailing comment. The attempt should result
+in a HIERARCHY_REQUEST_ERR or NOT_SUPPORTED_ERR.
+</description>
+<date qualifier="created">2004-01-22</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="rootName" type="DOMString"/>
+<var name="rootNS" type="DOMString"/>
+<var name="newComment" type="Comment"/>
+<var name="newElement" type="Element"/>
+<var name="retNode" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<createElementNS var="newElement" obj="doc" namespaceURI="rootNS" qualifiedName="rootName"/>
+<createComment var="newComment" obj="doc" data='"second element goes here"'/>
+<appendChild var="retNode" obj="doc" newChild="newComment"/>
+<try>
+ <replaceChild var="retNode" obj="doc" newChild="newElement" oldChild="newComment"/>
+ <fail id="throw_HIERARCHY_REQUEST_OR_NOT_SUPPORTED"/>
+ <catch>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="NOT_SUPPORTED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodereplacechild40.xml b/test/testcases/tests/level3/core/nodereplacechild40.xml
new file mode 100644
index 0000000..2e9aa30
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodereplacechild40.xml
@@ -0,0 +1,55 @@
+<?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="nodereplacechild40">
+<metadata>
+<title>nodereplacechild40</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempt to add a second document element by a comment. The attempt should result
+in a HIERARCHY_REQUEST_ERR or NOT_SUPPORTED_ERR.
+</description>
+<date qualifier="created">2004-01-22</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-785887307"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="rootName" type="DOMString"/>
+<var name="publicId" type="DOMString" isNull="true"/>
+<var name="systemId" type="DOMString" isNull="true"/>
+<var name="newComment" type="Comment"/>
+<var name="newDocType" type="DocumentType"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="retNode" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="rootName" obj="docElem"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocumentType var="newDocType" obj="domImpl" qualifiedName="rootName"
+ publicId="publicId" systemId="systemId"/>
+<createComment var="newComment" obj="doc" data='"second element goes here"'/>
+<insertBefore var="retNode" obj="doc" newChild="newComment" refChild="docElem"/>
+<try>
+ <replaceChild var="retNode" obj="doc" newChild="newDocType" oldChild="newComment"/>
+ <fail id="throw_HIERARCHY_REQUEST_OR_NOT_SUPPORTED"/>
+ <catch>
+ <DOMException code="HIERARCHY_REQUEST_ERR"/>
+ <DOMException code="NOT_SUPPORTED_ERR"/>
+ </catch>
+</try>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent01.xml b/test/testcases/tests/level3/core/nodesettextcontent01.xml
new file mode 100644
index 0000000..45c5fa1
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent01.xml
@@ -0,0 +1,42 @@
+<?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="nodesettextcontent01">
+<metadata>
+<title>nodesettextcontent01</title>
+<creator>IBM</creator>
+<description>
+Attempt to set textContent for a Document node and check that the document appears
+to be unaffected.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="nodeName" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<textContent value='"textContent"' obj="doc"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<assertNotNull actual="elem" id="stillHasAcronyms"/>
+<nodeName var="nodeName" obj="elem"/>
+<assertEquals actual="nodeName" expected='"acronym"' id="nodesettextcontent01" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent02.xml b/test/testcases/tests/level3/core/nodesettextcontent02.xml
new file mode 100644
index 0000000..5f95eba
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent02.xml
@@ -0,0 +1,56 @@
+<?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="nodesettextcontent02">
+<metadata>
+<title>nodesettextcontent02</title>
+<creator>IBM</creator>
+<description>
+ The method setTextContent has no effect when the node is defined to be null.
+
+ Using setTextContent on a new Document node, attempt to set the textContent of this
+ new Document node to textContent. Check if it was not set by checking the nodeName
+ attribute of a new Element of this Document node.
+</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-textContent"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="newDoc" type="Document"/>
+<var name="nodeName" type="DOMString"/>
+<var name="elemChild" type="Element"/>
+<var name="newElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="nullDocType" type="DocumentType" isNull="true"/>
+<var name="appendedChild" type="Node"/>
+<var name="documentElem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<implementation var="domImpl" obj="doc"/>
+<createDocument var="newDoc" obj="domImpl" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom3:elem"' doctype="nullDocType"/>
+<createElementNS var="newElem" obj="newDoc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom3:childElem"'/>
+<documentElement var="documentElem" obj="newDoc" interface="Document"/>
+<appendChild obj="documentElem" var="appendedChild" newChild="newElem"/>
+<textContent value='"textContent"' obj="newDoc"/>
+<getElementsByTagNameNS var="elemList" obj="newDoc" localName='"childElem"' namespaceURI='"*"' interface="Document"/>
+<item var="elemChild" obj="elemList" index="0" interface="NodeList"/>
+<nodeName var="nodeName" obj="elemChild"/>
+<assertEquals actual="nodeName" expected='"dom3:childElem"' id="nodesettextcontent02" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent03.xml b/test/testcases/tests/level3/core/nodesettextcontent03.xml
new file mode 100644
index 0000000..cba7367
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent03.xml
@@ -0,0 +1,41 @@
+<?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="nodesettextcontent03">
+<metadata>
+<title>nodesettextcontent03</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using setTextContent on this DocumentType node, attempt to set the textContent of this
+ DocumentType node to textContent. Retreive the textContent and verify if it is null.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<textContent value='"textContent"' obj="docType"/>
+<textContent var="textContent" obj="docType"/>
+<assertNull actual="textContent" id="nodesettextcontent03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent04.xml b/test/testcases/tests/level3/core/nodesettextcontent04.xml
new file mode 100644
index 0000000..99e244f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent04.xml
@@ -0,0 +1,45 @@
+<?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="nodesettextcontent04">
+<metadata>
+<title>nodesettextcontent04</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using setTextContent on this DocumentType node, attempt to set the textContent of a
+ Notation node to textContent. Retreive the textContent and verify if it is null.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notationsMap" type="NamedNodeMap"/>
+<var name="notation1" type="Notation"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<notations var="notationsMap" obj="docType"/>
+<getNamedItem var="notation1" obj="notationsMap" name='"notation1"'/>
+<textContent value='"textContent"' obj="notation1"/>
+<textContent var="textContent" obj="notation1"/>
+<assertNull actual="textContent" id="nodesettextcontent04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent05.xml b/test/testcases/tests/level3/core/nodesettextcontent05.xml
new file mode 100644
index 0000000..a98523f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent05.xml
@@ -0,0 +1,45 @@
+<?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="nodesettextcontent05">
+<metadata>
+<title>nodesettextcontent05</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using setTextContent on a default Attr node, attempt to set its value to NA. Retreive
+ the textContent and verify if it is was set to NA.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<getAttributeNode var="attr" obj="elem" name='"dir"'/>
+<textContent obj="attr" value='"NA"'/>
+<textContent var="textContent" obj="attr"/>
+<assertEquals actual="textContent" expected='"NA"' id="nodesettextcontent05" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent06.xml b/test/testcases/tests/level3/core/nodesettextcontent06.xml
new file mode 100644
index 0000000..8f29418
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent06.xml
@@ -0,0 +1,46 @@
+<?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="nodesettextcontent06">
+<metadata>
+<title>nodesettextcontent06</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using setTextContent on a new Attr node with a null value, attempt to set its value to NA. Retreive
+ the textContent and verify if it is was set to NA.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="attrNode" type="Attr"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"p"'/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"xml:lang"'/>
+<setAttributeNodeNS obj="elem" var="attrNode" newAttr="attr"/>
+<textContent obj="attr" value='"NA"'/>
+<textContent var="textContent" obj="attr"/>
+<assertEquals actual="textContent" expected='"NA"' id="nodesettextcontent06" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent07.xml b/test/testcases/tests/level3/core/nodesettextcontent07.xml
new file mode 100644
index 0000000..193a335
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent07.xml
@@ -0,0 +1,45 @@
+<?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="nodesettextcontent07">
+<metadata>
+<title>nodesettextcontent07</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using setTextContent on an existing Text node, attempt to set its value to Text.
+ Retreive the textContent and verify if it is was set to Text.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<firstChild var="txt" obj="elem" interface="Node"/>
+<textContent obj="txt" value='"Text"'/>
+<textContent var="textContent" obj="txt"/>
+<assertEquals actual="textContent" expected='"Text"' id="nodegettextcontent10" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent08.xml b/test/testcases/tests/level3/core/nodesettextcontent08.xml
new file mode 100644
index 0000000..a443edc
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent08.xml
@@ -0,0 +1,46 @@
+<?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="nodesettextcontent08">
+<metadata>
+<title>nodesettextcontent08</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using setTextContent on a new Processing Instruction node, attempt to set its data to PID.
+ Retreive the textContent and verify if it is was set to PID.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="textContent" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:p"'/>
+<createProcessingInstruction var="pi" obj="doc" target='"PIT"' data='"PID"'/>
+<appendChild obj="elem" var="appendedChild" newChild="pi"/>
+<textContent obj="pi" value='"PID"'/>
+<textContent var="textContent" obj="pi"/>
+<assertEquals actual="textContent" expected='"PID"' id="nodesettextcontent08" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent10.xml b/test/testcases/tests/level3/core/nodesettextcontent10.xml
new file mode 100644
index 0000000..a3d5cec
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent10.xml
@@ -0,0 +1,59 @@
+<?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="nodesettextcontent10">
+<metadata>
+<title>nodesettextcontent10</title>
+<creator>IBM</creator>
+<description>
+ The method setTextContent has no effect when the node is defined to be null.
+
+ Using setTextContent on a new Element node, attempt to set its content to ELEMENT.
+ Retreive the textContent and verify if it is was set to ELEMENT.
+</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-textContent"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="comment" type="Comment"/>
+<var name="entRef" type="EntityReference"/>
+<var name="cdata" type="CDATASection"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="textContent" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/DOM/Test"' qualifiedName='"dom3:elem"'/>
+<createTextNode var="txt" obj="doc" data='"Text "' />
+<createComment var="comment" obj="doc" data='"Comment "' />
+<createEntityReference var="entRef" obj="doc" name='"ent1"' />
+<createProcessingInstruction var="pi" obj="doc" target='"PIT"' data='"PIData "'/>
+<createCDATASection var="cdata" obj="doc" data='"CData"' />
+<appendChild obj="elem" var="appendedChild" newChild="txt"/>
+<appendChild obj="elem" var="appendedChild" newChild="comment"/>
+<appendChild obj="elem" var="appendedChild" newChild="entRef"/>
+<appendChild obj="elem" var="appendedChild" newChild="pi"/>
+<appendChild obj="elem" var="appendedChild" newChild="cdata"/>
+<textContent obj="elem" value='"ELEMENT"'/>
+<textContent var="textContent" obj="elem"/>
+<assertEquals actual="textContent" expected='"ELEMENT"' id="nodesettextcontent10" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent11.xml b/test/testcases/tests/level3/core/nodesettextcontent11.xml
new file mode 100644
index 0000000..63211f4
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent11.xml
@@ -0,0 +1,62 @@
+<?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="nodesettextcontent11">
+<metadata>
+<title>nodesettextcontent11</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using setTextContent on a new DocumentFragment node Element child, attempt to set its content to
+ DOCUMENTFRAGMENT. Retreive the textContent and verify if it is was set to DOCUMENTFRAGMENT
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFrag" type="DocumentFragment"/>
+<var name="elem" type="Element"/>
+<var name="elemChild" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="comment" type="Comment"/>
+<var name="entRef" type="EntityReference"/>
+<var name="cdata" type="CDATASection"/>
+<var name="pi" type="ProcessingInstruction"/>
+<var name="textContent" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFrag" obj="doc"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:p"'/>
+<createTextNode var="txt" obj="doc" data='"Text "' />
+<createComment var="comment" obj="doc" data='"Comment "' />
+<createEntityReference var="entRef" obj="doc" name='"alpha"' />
+<createProcessingInstruction var="pi" obj="doc" target='"PIT"' data='"PIData "'/>
+<createCDATASection var="cdata" obj="doc" data='"CData"' />
+<appendChild obj="elem" var="appendedChild" newChild="txt"/>
+<appendChild obj="elem" var="appendedChild" newChild="comment"/>
+<appendChild obj="elem" var="appendedChild" newChild="entRef"/>
+<appendChild obj="elem" var="appendedChild" newChild="pi"/>
+<appendChild obj="elem" var="appendedChild" newChild="cdata"/>
+<appendChild obj="docFrag" var="appendedChild" newChild="elem"/>
+<textContent obj="elem" value='"DOCUMENTFRAGMENT"'/>
+<lastChild var="elemChild" obj="docFrag" interface="Node"/>
+<textContent var="textContent" obj="elemChild"/>
+<assertEquals actual="textContent" expected='"DOCUMENTFRAGMENT"' id="nodegettextcontent11" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent12.xml b/test/testcases/tests/level3/core/nodesettextcontent12.xml
new file mode 100644
index 0000000..b489d0b
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent12.xml
@@ -0,0 +1,48 @@
+<?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="nodesettextcontent12">
+<metadata>
+<title>nodesettextcontent12</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using setTextContent on a new EntityReference node, attempt to set its value.
+ Since EntityReference nodes are ReadOnly, check if a NO_MODIFICATION_ALLOWED_ERR
+ is raised.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="entRef" type="EntityReference"/>
+<var name="textContent" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="elem" obj="doc"/>
+<createEntityReference var="entRef" obj="doc" name='"beta"' />
+<appendChild obj="elem" var="appendedChild" newChild="entRef"/>
+<assertDOMException id="nodesettextcontent12">
+<NO_MODIFICATION_ALLOWED_ERR>
+<textContent obj="entRef" value='"NA"'/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesettextcontent13.xml b/test/testcases/tests/level3/core/nodesettextcontent13.xml
new file mode 100644
index 0000000..372d757
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesettextcontent13.xml
@@ -0,0 +1,48 @@
+<?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="nodesettextcontent13">
+<metadata>
+<title>nodesettextcontent13</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using setTextContent on an Entity node, attempt to set its replacement text.
+ Since Entity nodes are ReadOnly, check if a NO_MODIFICATION_ALLOWED_ERR
+ is raised.
+</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-textContent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entity" type="Entity"/>
+<var name="entitymap" type="NamedNodeMap"/>
+<var name="textContent" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entitymap" obj="docType"/>
+<getNamedItem var="entity" obj="entitymap" name='"delta"'/>
+<assertDOMException id="nodesettextcontent13">
+<NO_MODIFICATION_ALLOWED_ERR>
+<textContent value='"NA"' obj="entity"/>
+</NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesetuserdata01.xml b/test/testcases/tests/level3/core/nodesetuserdata01.xml
new file mode 100644
index 0000000..006a2f4
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesetuserdata01.xml
@@ -0,0 +1,41 @@
+<?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="nodesetuserdata01">
+<metadata>
+<title>nodesetuserdata01</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using setUserData with null values for the UserData and the handler parameters, check
+ if returned the current userData object of this Document node is null.
+</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-setUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="userData" type="DOMUserData"/>
+<var name="prevUserData" type="DOMUserData"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<var name="nullData" type="DOMUserData" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<setUserData var="prevUserData" obj="doc" key='"something"' data="nullData" handler="nullHandler"/>
+<assertNull actual="prevUserData" id="nodesetuserdata01"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesetuserdata02.xml b/test/testcases/tests/level3/core/nodesetuserdata02.xml
new file mode 100644
index 0000000..ba2efcf
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesetuserdata02.xml
@@ -0,0 +1,42 @@
+<?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="nodesetuserdata02">
+<metadata>
+<title>nodesetuserdata02</title>
+<creator>IBM</creator>
+<description>
+
+
+ Using setUserData with values for the UserData as this Document and the handler as null
+ parameters, check if returned the current userData object of this Document node is null.
+</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-setUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="userData" type="DOMUserData"/>
+<var name="prevUserData" type="DOMUserData"/>
+<var name="test" type="DOMUserData" isNull="true"/>
+<var name="str" type="DOMString" value='"Junk"'/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<setUserData var="prevUserData" obj="doc" key='"something"' data="test" handler="nullHandler"/>
+<assertNull actual="prevUserData" id="nodesetuserdata02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesetuserdata03.xml b/test/testcases/tests/level3/core/nodesetuserdata03.xml
new file mode 100644
index 0000000..7ca41f2
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesetuserdata03.xml
@@ -0,0 +1,47 @@
+<?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="nodesetuserdata03">
+<metadata>
+<title>nodesetuserdata03</title>
+<creator>IBM</creator>
+<description>
+ Invoke setUserData on this Document to set this Documents UserData to a new
+ Element node. Do the same with a new Text node and using isNodeEqual verify
+ the returned Element UserData object.
+</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-setUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="userData" type="DOMUserData"/>
+<var name="retUserData" type="DOMUserData"/>
+<var name="returnedUserData" type="DOMUserData"/>
+<var name="success" type="boolean"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"xhtml:p"' />
+<createTextNode var="txt" obj="doc" data='"TEXT"' />
+<setUserData obj="doc" var="returnedUserData" key='"Key1"' data="elem" handler="nullHandler"/>
+<setUserData var="retUserData" obj="doc" key='"Key1"' data="txt" handler="nullHandler"/>
+<isEqualNode var="success" obj="retUserData" arg="elem"/>
+<assertTrue actual="success" id="nodesetuserdata03"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesetuserdata04.xml b/test/testcases/tests/level3/core/nodesetuserdata04.xml
new file mode 100644
index 0000000..3fc0aff
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesetuserdata04.xml
@@ -0,0 +1,52 @@
+<?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="nodesetuserdata04">
+<metadata>
+<title>nodesetuserdata04</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke setUserData on a new Element to set its UserData to a new Text node
+ twice using different Keys. Using getUserData with each Key and isNodeEqual
+ verify if the returned nodes are 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-setUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="userData" type="DOMUserData"/>
+<var name="returned1" type="DOMUserData"/>
+<var name="returned2" type="DOMUserData"/>
+<var name="retUserData" type="DOMUserData"/>
+<var name="success" type="boolean"/>
+<var name="elem" type="Element"/>
+<var name="txt" type="Text"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"p"' />
+<createTextNode var="txt" obj="doc" data='"TEXT"' />
+<setUserData obj="elem" var="retUserData" key='"Key1"' data="txt" handler="nullHandler"/>
+<setUserData obj="elem" var="retUserData" key='"Key2"' data="txt" handler="nullHandler"/>
+<getUserData var="returned1" obj="elem" key='"Key1"'/>
+<getUserData var="returned2" obj="elem" key='"Key2"'/>
+<isEqualNode var="success" obj="returned1" arg="returned2"/>
+<assertTrue actual="success" id="nodesetuserdata04"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesetuserdata05.xml b/test/testcases/tests/level3/core/nodesetuserdata05.xml
new file mode 100644
index 0000000..f75c861
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesetuserdata05.xml
@@ -0,0 +1,52 @@
+<?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="nodesetuserdata05">
+<metadata>
+<title>nodesetuserdata05</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke setUserData on a new Attr to set its UserData to two Document nodes
+ obtained by parsing the same xml document. Using getUserData and isNodeEqual
+ verify if the returned nodes are 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-setUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="doc2" type="Document"/>
+<var name="userData" type="DOMUserData"/>
+<var name="returned1" type="DOMUserData"/>
+<var name="returned2" type="DOMUserData"/>
+<var name="retUserData" type="DOMUserData"/>
+<var name="success" type="boolean"/>
+<var name="attr" type="Attr"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<load var="doc2" href="hc_staff" willBeModified="true"/>
+<createAttributeNS var="attr" obj="doc" namespaceURI='"http://www.w3.org/XML/1998/namespace"' qualifiedName='"lang"' />
+<setUserData obj="attr" var="retUserData" key='"Key1"' data="doc" handler="nullHandler"/>
+<setUserData obj="attr" var="retUserData" key='"Key2"' data="doc2" handler="nullHandler"/>
+<getUserData var="returned1" obj="attr" key='"Key1"'/>
+<getUserData var="returned2" obj="attr" key='"Key2"'/>
+<isEqualNode var="success" obj="returned1" arg="returned2"/>
+<assertTrue actual="success" id="nodesetuserdata05"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesetuserdata06.xml b/test/testcases/tests/level3/core/nodesetuserdata06.xml
new file mode 100644
index 0000000..09f82e6
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesetuserdata06.xml
@@ -0,0 +1,53 @@
+<?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="nodesetuserdata06">
+<metadata>
+<title>nodesetuserdata06</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke setUserData on a new Comment to set its UserData to an Entity node
+ twice using the same key. Verify if the UserData object that was by the
+ second setUserData is the same as original Entity.
+</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-setUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="comment" type="Comment"/>
+<var name="userData" type="DOMUserData"/>
+<var name="returned" type="DOMUserData"/>
+<var name="retUserData" type="DOMUserData"/>
+<var name="success" type="boolean"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<entities var="entities" obj="docType"/>
+<getNamedItem var="entity" obj="entities" name='"delta"'/>
+<createComment var="comment" obj="doc" data='"COMMENT_NODE"' />
+<setUserData obj="comment" var="retUserData" key='"Key1"' data="entity" handler="nullHandler"/>
+<setUserData var="returned" obj="comment" key='"Key1"' data="entity" handler="nullHandler"/>
+<isEqualNode var="success" obj="returned" arg="entity"/>
+<assertTrue actual="success" id="nodesetuserdata06"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesetuserdata07.xml b/test/testcases/tests/level3/core/nodesetuserdata07.xml
new file mode 100644
index 0000000..21a1d50
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesetuserdata07.xml
@@ -0,0 +1,53 @@
+<?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="nodesetuserdata07">
+<metadata>
+<title>nodesetuserdata07</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke setUserData on a Notation to set its UserData to a Comment node
+ twice using the same key. Verify if the UserData object that was returned
+ by second setUserData is the Comment node set in the first setUserData call.
+</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-setUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docType" type="DocumentType"/>
+<var name="notations" type="NamedNodeMap"/>
+<var name="notation" type="Notation"/>
+<var name="comment" type="Comment"/>
+<var name="userData" type="DOMUserData"/>
+<var name="returned" type="DOMUserData"/>
+<var name="success" type="boolean"/>
+<var name="retUserData" type="DOMUserData"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<doctype var="docType" obj="doc"/>
+<notations var="notations" obj="docType"/>
+<getNamedItem var="notation" obj="notations" name='"notation1"'/>
+<createComment var="comment" obj="doc" data='"COMMENT_NODE"' />
+<setUserData obj="notation" var="retUserData" key='"Key1"' data="comment" handler="nullHandler"/>
+<setUserData var="returned" obj="notation" key='"Key1"' data="comment" handler="nullHandler"/>
+<isEqualNode var="success" obj="returned" arg="comment"/>
+<assertTrue actual="success" id="nodesetuserdata07"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesetuserdata08.xml b/test/testcases/tests/level3/core/nodesetuserdata08.xml
new file mode 100644
index 0000000..f96ba9f
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesetuserdata08.xml
@@ -0,0 +1,54 @@
+<?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="nodesetuserdata08">
+<metadata>
+<title>nodesetuserdata08</title>
+<creator>IBM</creator>
+<description>
+ Invoke setUserData on a CDATASection and EntityReference node to set their
+ UserData to this Document and DocumentElement node. Verify if the UserData
+ object that was set for both nodes is different.
+</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-setUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="entRef" type="EntityReference"/>
+<var name="cData" type="CDATASection"/>
+<var name="elemList" type="NodeList"/>
+<var name="elemName" type="Element"/>
+<var name="userData" type="DOMUserData"/>
+<var name="returned1" type="DOMUserData"/>
+<var name="returned2" type="DOMUserData"/>
+<var name="success" type="boolean"/>
+<var name="retUserData" type="DOMUserData"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<createEntityReference name='"delta"' obj="doc" var="entRef"/>
+<createCDATASection var="cData" obj="doc" data='"CDATASection"' />
+<setUserData obj="entRef" var="retUserData" key='"Key1"' data="doc" handler="nullHandler"/>
+<setUserData obj="cData" var="retUserData" key='"Key2"' data="docElem" handler="nullHandler"/>
+<getUserData var="returned1" obj="entRef" key='"Key1"'/>
+<getUserData var="returned2" obj="cData" key='"Key2"'/>
+<isEqualNode var="success" obj="returned1" arg="returned2"/>
+<assertFalse actual="success" id="nodesetuserdata08"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesetuserdata09.xml b/test/testcases/tests/level3/core/nodesetuserdata09.xml
new file mode 100644
index 0000000..f603752
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesetuserdata09.xml
@@ -0,0 +1,45 @@
+<?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="nodesetuserdata09">
+<metadata>
+<title>nodesetuserdata09</title>
+<creator>IBM</creator>
+<description>
+
+
+ Invoke setUserData on this documentElement node to set its UserData to
+ this Document node. Invoke getUserData on this Document node with the same
+ key of the UserData that was just set on the documentElement node and verify
+ if the returned node is null.
+</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-setUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="returned" type="DOMUserData"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<var name="retUserData" type="DOMUserData"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<setUserData obj="docElem" var="retUserData" key='"Key1"' data="doc" handler="nullHandler"/>
+<getUserData var="returned" obj="doc" key='"Key1"'/>
+<assertNull actual="returned" id="nodesetuserdata09"/>
+</test>
diff --git a/test/testcases/tests/level3/core/nodesetuserdata10.xml b/test/testcases/tests/level3/core/nodesetuserdata10.xml
new file mode 100644
index 0000000..129b1ee
--- /dev/null
+++ b/test/testcases/tests/level3/core/nodesetuserdata10.xml
@@ -0,0 +1,57 @@
+<?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="nodesetuserdata10">
+<metadata>
+<title>nodesetuserdata10</title>
+<creator>IBM</creator>
+<description>
+ Invoke setUserData on a CDATASection and EntityReference node to set their
+ UserData to this Document and DocumentElement node. Verify if the UserData
+ object that was set for both nodes is different.
+</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-setUserData"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<!-- could also be Text -->
+<var name="entRef" type="Node"/>
+<var name="cData" type="CDATASection"/>
+<var name="varList" type="NodeList"/>
+<var name="varElem" type="Element"/>
+<var name="userData" type="DOMUserData"/>
+<var name="returned1" type="DOMUserData"/>
+<var name="returned2" type="DOMUserData"/>
+<var name="success" type="boolean"/>
+<var name="retUserData" type="DOMUserData"/>
+<var name="nullHandler" type="UserDataHandler" isNull="true"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<documentElement var="docElem" obj="doc"/>
+<getElementsByTagName var="varList" obj="doc" tagname='"var"' interface="Document"/>
+<item var="varElem" obj="varList" index="2" interface="NodeList"/>
+<firstChild var="entRef" obj="varElem" interface="Node"/>
+<createCDATASection var="cData" obj="doc" data='"CDATASection"' />
+<setUserData obj="entRef" var="retUserData" key='"Key1"' data="doc" handler="nullHandler"/>
+<setUserData obj="cData" var="retUserData" key='"Key2"' data="docElem" handler="nullHandler"/>
+<getUserData var="returned1" obj="entRef" key='"Key1"'/>
+<getUserData var="returned2" obj="cData" key='"Key2"'/>
+<isEqualNode var="success" obj="returned1" arg="returned2"/>
+<assertFalse actual="success" id="nodesetuserdata08"/>
+</test>
diff --git a/test/testcases/tests/level3/core/normalizecharacters01.xml b/test/testcases/tests/level3/core/normalizecharacters01.xml
new file mode 100644
index 0000000..e8dc28a
--- /dev/null
+++ b/test/testcases/tests/level3/core/normalizecharacters01.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters01">
+<metadata>
+<title>normalizecharacters01</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with normalize-characters set to false, check that
+characters are not normalized.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-normalize-characters"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<firstChild var="text" obj="pElem" interface="Node"/>
+<nodeValue var="textValue" obj="text"/>
+<assertEquals actual="textValue" expected='"barsuc&#x327;on"'
+ ignoreCase="false" id="noCharNormalization"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/normalizecharacters02.xml b/test/testcases/tests/level3/core/normalizecharacters02.xml
new file mode 100644
index 0000000..4d5a80b
--- /dev/null
+++ b/test/testcases/tests/level3/core/normalizecharacters02.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters02">
+<metadata>
+<title>normalizecharacters02</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with normalize-characters set to true, check that
+characters are normalized.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-normalize-characters"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<var name="canSet" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"normalize-characters"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalizeDocument obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<firstChild var="text" obj="pElem" interface="Node"/>
+<nodeValue var="textValue" obj="text"/>
+<assertEquals actual="textValue" expected='"barsu&#xE7;on"'
+ ignoreCase="false" id="charNormalized"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/normalizecharacters03.xml b/test/testcases/tests/level3/core/normalizecharacters03.xml
new file mode 100644
index 0000000..67c9ce4
--- /dev/null
+++ b/test/testcases/tests/level3/core/normalizecharacters03.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters03">
+<metadata>
+<title>normalizecharacters03</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize an element with normalize-characters set to false, check that
+characters are not normalized.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-normalize-characters"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalize obj="pElem"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<firstChild var="text" obj="pElem" interface="Node"/>
+<nodeValue var="textValue" obj="text"/>
+<assertEquals actual="textValue" expected='"barsuc&#x327;on"'
+ ignoreCase="false" id="noCharNormalization"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/normalizecharacters04.xml b/test/testcases/tests/level3/core/normalizecharacters04.xml
new file mode 100644
index 0000000..12ff2dc
--- /dev/null
+++ b/test/testcases/tests/level3/core/normalizecharacters04.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters04">
+<metadata>
+<title>normalizecharacters04</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize an element with normalize-characters set to true, check that
+characters are normalized.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-normalize-characters"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<var name="canSet" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"normalize-characters"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalize obj="pElem"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<firstChild var="text" obj="pElem" interface="Node"/>
+<nodeValue var="textValue" obj="text"/>
+<assertEquals actual="textValue" expected='"barsu&#xE7;on"'
+ ignoreCase="false" id="noCharNormalization"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/normalizecharacters05.xml b/test/testcases/tests/level3/core/normalizecharacters05.xml
new file mode 100644
index 0000000..efd5703
--- /dev/null
+++ b/test/testcases/tests/level3/core/normalizecharacters05.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters05">
+<metadata>
+<title>normalizecharacters05</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize an document (using Node.normalize) with normalize-characters set to false, check that
+characters are not normalized.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-normalize-characters"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalize obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<firstChild var="text" obj="pElem" interface="Node"/>
+<nodeValue var="textValue" obj="text"/>
+<assertEquals actual="textValue" expected='"barsuc&#x327;on"'
+ ignoreCase="false" id="noCharNormalization"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/normalizecharacters06.xml b/test/testcases/tests/level3/core/normalizecharacters06.xml
new file mode 100644
index 0000000..db349a5
--- /dev/null
+++ b/test/testcases/tests/level3/core/normalizecharacters06.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters06">
+<metadata>
+<title>normalizecharacters06</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize a document (using Node.normalize) with normalize-characters set to true, check that
+characters are normalized.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-normalize-characters"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<var name="canSet" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"normalize-characters"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalize obj="doc"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<firstChild var="text" obj="pElem" interface="Node"/>
+<nodeValue var="textValue" obj="text"/>
+<assertEquals actual="textValue" expected='"barsu&#xE7;on"'
+ ignoreCase="false" id="noCharNormalization"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/normalizecharacters07.xml b/test/testcases/tests/level3/core/normalizecharacters07.xml
new file mode 100644
index 0000000..d395b30
--- /dev/null
+++ b/test/testcases/tests/level3/core/normalizecharacters07.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters07">
+<metadata>
+<title>normalizecharacters07</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize a text node with normalize-characters set to false, check that
+characters are not normalized.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-normalize-characters"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalize obj="retval"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<lastChild var="text" obj="pElem" interface="Node"/>
+<nodeValue var="textValue" obj="text"/>
+<assertEquals actual="textValue" expected='"suc&#x327;on"'
+ ignoreCase="false" id="noCharNormalization"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/normalizecharacters08.xml b/test/testcases/tests/level3/core/normalizecharacters08.xml
new file mode 100644
index 0000000..d70f90a
--- /dev/null
+++ b/test/testcases/tests/level3/core/normalizecharacters08.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters08">
+<metadata>
+<title>normalizecharacters08</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize a text node with normalize-characters set to true, check that
+characters are normalized.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-normalize-characters"/>
+<subject resource="http://www.w3.org/TR/2003/WD-charmod-20030822/"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="text" type="Text"/>
+<var name="textValue" type="DOMString"/>
+<var name="retval" type="Node"/>
+<var name="canSet" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"normalize-characters"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- character entity is expanded during code generation
+ code equivalent to "suc\u0327on" -->
+<createTextNode var="text" obj="doc" data='"suc&#x327;on"'/>
+<appendChild var="retval" obj="pElem" newChild="text"/>
+<normalize obj="retval"/>
+<!-- fail test if normalize had any errors or fatal errors -->
+<assertLowerSeverity obj="errorMonitor" id="normalizeError" severity="SEVERITY_ERROR"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<lastChild var="text" obj="pElem" interface="Node"/>
+<nodeValue var="textValue" obj="text"/>
+<assertEquals actual="textValue" expected='"su&#xE7;on"'
+ ignoreCase="false" id="noCharNormalization"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/splitcdatasections01.xml b/test/testcases/tests/level3/core/splitcdatasections01.xml
new file mode 100644
index 0000000..445836d
--- /dev/null
+++ b/test/testcases/tests/level3/core/splitcdatasections01.xml
@@ -0,0 +1,52 @@
+<?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="splitcdatasections01">
+<metadata>
+<title>splitcdatasections</title>
+<creator>Curt Arnold</creator>
+<description>
+Add a CDATASection containing "]]&gt;" and call Node.normalize which should not
+split or raise warning.
+</description>
+<date qualifier="created">2004-02-25</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-normalize"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-split-cdata-sections"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="elemList" type="NodeList"/>
+<var name="newChild" type="CDATASection"/>
+<var name="oldChild" type="Node"/>
+<var name="retval" type="Node"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<firstChild var="oldChild" obj="elem" interface="Node"/>
+<createCDATASection var="newChild" obj="doc" data='"this is not ]]&gt; good"'/>
+<replaceChild var="retval" obj="elem" newChild="newChild" oldChild="oldChild"/>
+<domConfig obj="doc" var="domConfig" interface="Document"/>
+<setParameter obj="domConfig" name='"split-cdata-sections"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalize obj="doc"/>
+<assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="noErrors"/>
+</test>
+
diff --git a/test/testcases/tests/level3/core/textiselementcontentwhitespace01.xml b/test/testcases/tests/level3/core/textiselementcontentwhitespace01.xml
new file mode 100644
index 0000000..0ff1f3d
--- /dev/null
+++ b/test/testcases/tests/level3/core/textiselementcontentwhitespace01.xml
@@ -0,0 +1,38 @@
+<?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="textiselementcontentwhitespace01">
+<metadata>
+<title>textiselementcontentwhitespace01</title>
+<creator>IBM</creator>
+<description>
+ Invoke isElementContentWhitespace on a newly created Text Node that contains only whitespace.
+Should be false since there is no content model to determine if the node appears within element content.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-isElementContentWhitespace"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="newText" type="Text"/>
+<var name="hasWhitespace" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<createTextNode var="newText" obj="doc" data='" "'/>
+<isElementContentWhitespace obj="newText" var="hasWhitespace"/>
+<assertFalse actual="hasWhitespace" id="isWhitespace"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textiselementcontentwhitespace02.xml b/test/testcases/tests/level3/core/textiselementcontentwhitespace02.xml
new file mode 100644
index 0000000..7d510be
--- /dev/null
+++ b/test/testcases/tests/level3/core/textiselementcontentwhitespace02.xml
@@ -0,0 +1,42 @@
+<?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="textiselementcontentwhitespace02">
+<metadata>
+<title>textiselementcontentwhitespace02</title>
+<creator>IBM</creator>
+<description>
+Get the text node child of the "p" element in barfoo. isElementContentWhitespace should
+be false since the node is neither whitespace or in element content.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-isElementContentWhitespace"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="isElemContentWhitespace" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<firstChild var="textNode" obj="pElem" interface="Node"/>
+<isElementContentWhitespace obj="textNode" var="isElemContentWhitespace"/>
+<assertFalse actual="isElemContentWhitespace" id="notElemContentOrWhitespace"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textiselementcontentwhitespace03.xml b/test/testcases/tests/level3/core/textiselementcontentwhitespace03.xml
new file mode 100644
index 0000000..e4374f7
--- /dev/null
+++ b/test/testcases/tests/level3/core/textiselementcontentwhitespace03.xml
@@ -0,0 +1,45 @@
+<?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="textiselementcontentwhitespace03">
+<metadata>
+<title>textiselementcontentwhitespace03</title>
+<creator>IBM</creator>
+<description>
+Get the newline between the "body" and "p" element. Since node is both in element content
+and whitespace, isElementContentWhitespace should return true.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-isElementContentWhitespace"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="ignoringElementContentWhitespace" value="false"/>
+<var name="doc" type="Document"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="isElemContentWhitespace" type="boolean"/>
+<load var="doc" href="barfoo" willBeModified="false"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="pElem" obj="pList" index="0" interface="NodeList"/>
+<!-- should be text node containing new line between "body" and "p" element -->
+<previousSibling var="textNode" obj="pElem" interface="Node"/>
+<isElementContentWhitespace obj="textNode" var="isElemContentWhitespace"/>
+<assertTrue actual="isElemContentWhitespace" id="isElementContentWhitespace"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textiselementcontentwhitespace04.xml b/test/testcases/tests/level3/core/textiselementcontentwhitespace04.xml
new file mode 100644
index 0000000..80cb724
--- /dev/null
+++ b/test/testcases/tests/level3/core/textiselementcontentwhitespace04.xml
@@ -0,0 +1,57 @@
+<?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="textiselementcontentwhitespace04">
+<metadata>
+<title>textiselementcontentwhitespace04</title>
+<creator>Curt Arnold</creator>
+<description>
+Replace the text node child of the "p" element in barfoo with whitespace and normalize with validation.
+isElementContentWhitespace should be false since the node is not in element content.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2004-01-05</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-isElementContentWhitespace"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="pList" type="NodeList"/>
+<var name="pElem" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="blankNode" type="Text"/>
+<var name="returnedNode" type="Node"/>
+<var name="isElemContentWhitespace" type="boolean"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSetValidation" type="boolean"/>
+<var name="replacedNode" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig var="domConfig" obj="doc" interface="Document"/>
+<canSetParameter var="canSetValidation" obj="domConfig" name='"validate"' value="true"/>
+<if>
+ <isTrue value="canSetValidation"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+ <item var="pElem" obj="pList" index="0" interface="NodeList"/>
+ <firstChild var="textNode" obj="pElem" interface="Node"/>
+ <createTextNode var="blankNode" obj="doc" data='" "'/>
+ <replaceChild var="replacedNode" obj="pElem" newChild="blankNode" oldChild="textNode"/>
+ <normalizeDocument obj="doc"/>
+ <firstChild var="textNode" obj="pElem" interface="Node"/>
+ <isElementContentWhitespace obj="textNode" var="isElemContentWhitespace"/>
+ <assertFalse actual="isElemContentWhitespace" id="notElemContent"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/textiselementcontentwhitespace05.xml b/test/testcases/tests/level3/core/textiselementcontentwhitespace05.xml
new file mode 100644
index 0000000..c2d7ec0
--- /dev/null
+++ b/test/testcases/tests/level3/core/textiselementcontentwhitespace05.xml
@@ -0,0 +1,66 @@
+<?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="textiselementcontentwhitespace05">
+<metadata>
+<title>textiselementcontentwhitespace05</title>
+<creator>Curt Arnold</creator>
+<description>
+Replace the whitespace before the "p" element in barfoo with non-whitespace and normalize with validation.
+isElementContentWhitespace should be false since the node is not whitespace.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2004-01-05</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-isElementContentWhitespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="bodyList" type="NodeList"/>
+<var name="bodyElem" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="nonBlankNode" type="Text"/>
+<var name="returnedNode" type="Node"/>
+<var name="isElemContentWhitespace" type="boolean"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSetValidation" type="boolean"/>
+<var name="refChild" type="Node"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig var="domConfig" obj="doc" interface="Document"/>
+<canSetParameter var="canSetValidation" obj="domConfig" name='"validate"' value="true"/>
+<if>
+ <isTrue value="canSetValidation"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <getElementsByTagName var="bodyList" obj="doc" tagname='"body"' interface="Document"/>
+ <item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+ <!-- newline between body and p or p -->
+ <firstChild var="refChild" obj="bodyElem" interface="Node"/>
+ <!-- replace with non-blank -->
+ <createTextNode var="nonBlankNode" obj="doc" data='"not blank"'/>
+ <insertBefore var="returnedNode" obj="bodyElem" newChild="nonBlankNode" refChild="refChild"/>
+ <normalizeDocument obj="doc"/>
+ <assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="noErrors"/>
+ <getElementsByTagName var="bodyList" obj="doc" tagname='"body"' interface="Document"/>
+ <item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+ <!-- non-blank between body and p -->
+ <firstChild var="textNode" obj="bodyElem" interface="Node"/>
+ <isElementContentWhitespace obj="textNode" var="isElemContentWhitespace"/>
+ <assertFalse actual="isElemContentWhitespace" id="notElemContent"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/textiselementcontentwhitespace06.xml b/test/testcases/tests/level3/core/textiselementcontentwhitespace06.xml
new file mode 100644
index 0000000..d29a268
--- /dev/null
+++ b/test/testcases/tests/level3/core/textiselementcontentwhitespace06.xml
@@ -0,0 +1,68 @@
+<?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="textiselementcontentwhitespace06">
+<metadata>
+<title>textiselementcontentwhitespace06</title>
+<creator>Curt Arnold</creator>
+<description>
+Insert whitespace before the "p" element in barfoo and normalize with validation.
+isElementContentWhitespace should be true since the node is whitespace and in element content.
+</description>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2004-01-05</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-isElementContentWhitespace"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="bodyList" type="NodeList"/>
+<var name="bodyElem" type="Element"/>
+<var name="refChild" type="Node"/>
+<var name="textNode" type="Text"/>
+<var name="blankNode" type="Text"/>
+<var name="returnedNode" type="Node"/>
+<var name="isElemContentWhitespace" type="boolean"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSetValidation" type="boolean"/>
+<var name="replacedNode" type="Node"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+
+<load var="doc" href="barfoo" willBeModified="true"/>
+<domConfig var="domConfig" obj="doc" interface="Document"/>
+<canSetParameter var="canSetValidation" obj="domConfig" name='"validate"' value="true"/>
+<if>
+ <isTrue value="canSetValidation"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <getElementsByTagName var="bodyList" obj="doc" tagname='"body"' interface="Document"/>
+ <item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+ <!-- newline between body and p or the p element -->
+ <firstChild var="refChild" obj="bodyElem" interface="Node"/>
+ <!-- replace with different whitespace -->
+ <createTextNode var="blankNode" obj="doc" data='" "'/>
+ <insertBefore var="replacedNode" obj="bodyElem" newChild="blankNode" refChild="refChild"/>
+ <normalizeDocument obj="doc"/>
+ <assertLowerSeverity obj="errorMonitor" severity="SEVERITY_ERROR" id="noErrors"/>
+ <getElementsByTagName var="bodyList" obj="doc" tagname='"body"' interface="Document"/>
+ <item var="bodyElem" obj="bodyList" index="0" interface="NodeList"/>
+ <!-- previously inserted whitespace between body and p -->
+ <firstChild var="textNode" obj="bodyElem" interface="Node"/>
+ <isElementContentWhitespace obj="textNode" var="isElemContentWhitespace"/>
+ <assertTrue actual="isElemContentWhitespace" id="isElemContentWhitespace"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/core/textreplacewholetext01.xml b/test/testcases/tests/level3/core/textreplacewholetext01.xml
new file mode 100644
index 0000000..676b7d9
--- /dev/null
+++ b/test/testcases/tests/level3/core/textreplacewholetext01.xml
@@ -0,0 +1,46 @@
+<?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="textreplacewholetext01">
+<metadata>
+<title>textreplacewholetext01</title>
+<creator>IBM</creator>
+<description>
+ Invoke replaceWholeText on an existing Text Node to replace its value with a
+ new value containing white space characters. Verify the replaceWholeText by
+ verifying the values returned by wholeText
+ of the returned Text node.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-replaceWholeText"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="itemList" type="NodeList"/>
+<var name="elementName" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="replacedText" type="Text"/>
+<var name="wholeText" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="itemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elementName" obj="itemList" index="0" interface="NodeList"/>
+<firstChild var="textNode" obj="elementName" interface="Node"/>
+<replaceWholeText obj="textNode" var="replacedText" content='"New Content"'/>
+<wholeText var="wholeText" obj="replacedText"/>
+<assertEquals expected='"New Content"' actual="wholeText" id="textreplacewholetext01_1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textreplacewholetext02.xml b/test/testcases/tests/level3/core/textreplacewholetext02.xml
new file mode 100644
index 0000000..975fbdd
--- /dev/null
+++ b/test/testcases/tests/level3/core/textreplacewholetext02.xml
@@ -0,0 +1,43 @@
+<?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="textreplacewholetext02">
+<metadata>
+<title>textreplacewholetext02</title>
+<creator>IBM</creator>
+<description>
+ Invoke replaceWholeText on an existing Text Node to replace its value with an
+ empty string value. Verify the repalceWholeText method by verifying if the value
+ returned is null.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-replaceWholeText"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="itemList" type="NodeList"/>
+<var name="elementName" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="replacedText" type="Text"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="itemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elementName" obj="itemList" index="0" interface="NodeList"/>
+<firstChild var="textNode" obj="elementName" interface="Node"/>
+<replaceWholeText obj="textNode" var="replacedText" content='""'/>
+<assertNull actual="replacedText" id="textreplacewholetext02"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textreplacewholetext03.xml b/test/testcases/tests/level3/core/textreplacewholetext03.xml
new file mode 100644
index 0000000..287c0d2
--- /dev/null
+++ b/test/testcases/tests/level3/core/textreplacewholetext03.xml
@@ -0,0 +1,43 @@
+<?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="textreplacewholetext03">
+<metadata>
+<title>textreplacewholetext03</title>
+<creator>IBM</creator>
+<description>
+ Invoke replaceWholeText on an new Text Node to replace its value with a
+ new value. Verify the repalceWholeText by verifying the values returned by
+ wholeText of the returned Text node.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-replaceWholeText"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="textNode" type="Text"/>
+<var name="replacedText" type="Text"/>
+<var name="wholeText" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createTextNode var="textNode" obj="doc" data='"New Text"'/>
+<replaceWholeText obj="textNode" var="replacedText" content='"
+a b c b "'/>
+<wholeText var="wholeText" obj="replacedText"/>
+<assertEquals expected='"
+a b c b "' actual="wholeText" id="textreplacewholetext03" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textreplacewholetext04.xml b/test/testcases/tests/level3/core/textreplacewholetext04.xml
new file mode 100644
index 0000000..e5824d1
--- /dev/null
+++ b/test/testcases/tests/level3/core/textreplacewholetext04.xml
@@ -0,0 +1,39 @@
+<?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="textreplacewholetext04">
+<metadata>
+<title>textreplacewholetext04</title>
+<creator>IBM</creator>
+<description>
+ Invoke replaceWholeText on an new Text Node to replace its value with an
+ empty value.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-replaceWholeText"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="textNode" type="Text"/>
+<var name="replacedText" type="Text"/>
+<var name="wholeText" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createTextNode var="textNode" obj="doc" data='"New Text"'/>
+<replaceWholeText obj="textNode" var="replacedText" content='""'/>
+<assertNull actual="replacedText" id="retvalIsNull"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textreplacewholetext05.xml b/test/testcases/tests/level3/core/textreplacewholetext05.xml
new file mode 100644
index 0000000..4bd56da
--- /dev/null
+++ b/test/testcases/tests/level3/core/textreplacewholetext05.xml
@@ -0,0 +1,51 @@
+<?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="textreplacewholetext05">
+<metadata>
+<title>textreplacewholetext05</title>
+<creator>IBM</creator>
+<description>
+ Invoke replaceWholeText on an existing text node with newly created text and CDATASection
+ nodes appended as children of its parent element node. Verify repalceWholeText by
+ verifying the values returned by wholeText.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-replaceWholeText"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="itemList" type="NodeList"/>
+<var name="elementName" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="cdataNode" type="CDATASection"/>
+<var name="replacedText" type="Text"/>
+<var name="wholeText" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="itemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elementName" obj="itemList" index="0" interface="NodeList"/>
+<createTextNode var="textNode" obj="doc" data='"New Text"'/>
+<createCDATASection var="cdataNode" obj="doc" data='"New CDATA"'/>
+<appendChild obj="elementName" var="appendedChild" newChild="textNode"/>
+<appendChild obj="elementName" var="appendedChild" newChild="cdataNode"/>
+<firstChild var="textNode" obj="elementName" interface="Node"/>
+<replaceWholeText obj="textNode" var="replacedText" content='"New Text and Cdata"'/>
+<wholeText var="wholeText" obj="replacedText"/>
+<assertEquals expected='"New Text and Cdata"' actual="wholeText" id="textreplacewholetext05" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textreplacewholetext06.xml b/test/testcases/tests/level3/core/textreplacewholetext06.xml
new file mode 100644
index 0000000..ab50457
--- /dev/null
+++ b/test/testcases/tests/level3/core/textreplacewholetext06.xml
@@ -0,0 +1,67 @@
+<?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="textreplacewholetext06">
+<metadata>
+<title>textreplacewholetext06</title>
+<creator>IBM</creator>
+<description>
+ The method replaceWholeText substitutes the a specified text for the text of
+ the current node and all logically-adjacent text nodes. This method raises
+ a NO_MODIFICATION_ALLOWED_ERR if one of the Text nodes being replaced is readonly.
+
+ Invoke replaceWholeText on an existing text node with newly created text and Entityreference
+ nodes (whose replacement text is a character entity reference) appended as children of its parent element node.
+ Where the nodes to be removed are read-only descendants of an EntityReference, the EntityReference
+ must be removed instead of the read-only nodes. Only if any EntityReference to be removed has
+ descendants that are not EntityReference, Text, or CDATASection nodes, the replaceWholeText
+ method must fail, raising a NO_MODIFICATION_ALLOWED_ERR. Verify that the method does not raise
+ an exception and verify the content of the returned text node.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-replaceWholeText"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="expandEntityReferences" value="true"/>
+<var name="doc" type="Document"/>
+<var name="itemList" type="NodeList"/>
+<var name="elementStrong" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="erefNode" type="EntityReference"/>
+<var name="replacedText" type="Text"/>
+<var name="appendedChild" type="Node"/>
+<var name="nodeValue" type="DOMString"/>
+
+
+
+<load var="doc" href="hc_staff" willBeModified="false"/>
+
+
+
+<getElementsByTagName var="itemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elementStrong" obj="itemList" index="0" interface="NodeList"/>
+<createTextNode var="textNode" obj="doc" data='"New Text"'/>
+<createEntityReference var="erefNode" obj="doc" name='"beta"'/>
+<appendChild obj="elementStrong" var="appendedChild" newChild="textNode"/>
+<appendChild obj="elementStrong" var="appendedChild" newChild="erefNode"/>
+<firstChild var="textNode" obj="elementStrong" interface="Node"/>
+<replaceWholeText obj="textNode" var="replacedText" content='"New Text and Cdata"'/>
+<nodeValue var="nodeValue" obj="textNode" />
+<assertEquals actual="nodeValue" expected='"New Text and Cdata"' id="textreplacewholetext06" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textreplacewholetext07.xml b/test/testcases/tests/level3/core/textreplacewholetext07.xml
new file mode 100644
index 0000000..496b22f
--- /dev/null
+++ b/test/testcases/tests/level3/core/textreplacewholetext07.xml
@@ -0,0 +1,65 @@
+<?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="textreplacewholetext07">
+<metadata>
+<title>textreplacewholetext07</title>
+<creator>IBM</creator>
+<description>
+Append an entity reference and a text node after to the content of the
+first strong element. Then call replaceWholeText on initial content
+of that element. Since the entity reference does not contain any
+logically-adjacent text content, only the initial text element should
+be replaced.
+</description>
+<contributor>Neil Delima</contributor>
+<contributor>Curt Arnold</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-replaceWholeText"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=425"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="itemList" type="NodeList"/>
+<var name="elementName" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="erefNode" type="EntityReference"/>
+<var name="replacedText" type="Text"/>
+<var name="appendedChild" type="Node"/>
+<var name="node" type="Node"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="itemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elementName" obj="itemList" index="0" interface="NodeList"/>
+<createEntityReference var="erefNode" obj="doc" name='"ent4"'/>
+<createTextNode var="textNode" obj="doc" data='"New Text"'/>
+<appendChild obj="elementName" var="appendedChild" newChild="erefNode"/>
+<appendChild obj="elementName" var="appendedChild" newChild="textNode"/>
+<firstChild var="textNode" obj="elementName" interface="Node"/>
+<replaceWholeText obj="textNode" var="replacedText" content='"New Text and Cdata"'/>
+<firstChild var="textNode" obj="elementName" interface="Node"/>
+<assertSame expected="textNode" actual="replacedText" id="retval_same"/>
+<nodeValue var="nodeValue" obj="textNode"/>
+<assertEquals actual="nodeValue" expected='"New Text and Cdata"'
+ id="nodeValueSame" ignoreCase="false"/>
+<nextSibling var="node" obj="textNode" interface="Node"/>
+<assertNotNull actual="node" id="secondChildNotNull"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="5" id="secondChildIsEntRef" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textreplacewholetext08.xml b/test/testcases/tests/level3/core/textreplacewholetext08.xml
new file mode 100644
index 0000000..ad89eaa
--- /dev/null
+++ b/test/testcases/tests/level3/core/textreplacewholetext08.xml
@@ -0,0 +1,47 @@
+<?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="textreplacewholetext08">
+<metadata>
+<title>textreplacewholetext08</title>
+<creator>Curt Arnold</creator>
+<description>
+Appends an entity reference containing text and an element to an existing
+text node, then calls Text.replaceWholeText on the existing text node.
+A NO_MODIFICATION_ALLOWED_ERR should be thrown.
+</description>
+<date qualifier="created">2003-12-18</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-replaceWholeText"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=425"/>
+<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=540"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="itemList" type="NodeList"/>
+<var name="p" type="Element"/>
+<var name="entRef" type="EntityReference"/>
+<var name="node" type="Node"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="itemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="p" obj="itemList" index="0" interface="NodeList"/>
+<createEntityReference var="entRef" obj="doc" name='"ent2"'/>
+<appendChild obj="p" var="node" newChild="entRef"/>
+<firstChild var="node" obj="p" interface="Node"/>
+<assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <replaceWholeText obj="node" var="node" content='"yo"'/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level3/core/textwholetext01.xml b/test/testcases/tests/level3/core/textwholetext01.xml
new file mode 100644
index 0000000..40eb961
--- /dev/null
+++ b/test/testcases/tests/level3/core/textwholetext01.xml
@@ -0,0 +1,42 @@
+<?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="textwholetext01">
+<metadata>
+<title>textwholetext01</title>
+<creator>IBM</creator>
+<description>
+ Invoke wholetext on an existing Text Node that contains whitespace and verify if
+ the value returned is correct.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-wholeText"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="itemList" type="NodeList"/>
+<var name="elementName" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="nameWholeText" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="itemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elementName" obj="itemList" index="0" interface="NodeList"/>
+<firstChild var="textNode" obj="elementName" interface="Node"/>
+<wholeText obj="textNode" var="nameWholeText"/>
+<assertEquals expected='"Margaret Martin"' actual="nameWholeText" id="textwholetext01" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textwholetext02.xml b/test/testcases/tests/level3/core/textwholetext02.xml
new file mode 100644
index 0000000..bacb859
--- /dev/null
+++ b/test/testcases/tests/level3/core/textwholetext02.xml
@@ -0,0 +1,46 @@
+<?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="textwholetext02">
+<metadata>
+<title>textwholetext02</title>
+<creator>IBM</creator>
+<description>
+ Invoke wholetext on an existing Text Node that contains whitespace and and verify if
+ the value returned is correct.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-wholeText"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="itemList" type="NodeList"/>
+<var name="elementName" type="Element"/>
+<var name="textNode" type="Text"/>
+<var name="newTextNode" type="Text"/>
+<var name="wholeText" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="itemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elementName" obj="itemList" index="0" interface="NodeList"/>
+<createTextNode var="newTextNode" obj="doc" data='"New Text"'/>
+<appendChild obj="elementName" var="appendedChild" newChild="newTextNode"/>
+<firstChild var="textNode" obj="elementName" interface="Node"/>
+<wholeText obj="textNode" var="wholeText"/>
+<assertEquals expected='"Margaret MartinNew Text"' actual="wholeText" id="textwholetext02" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/textwholetext03.xml b/test/testcases/tests/level3/core/textwholetext03.xml
new file mode 100644
index 0000000..26ef6b0
--- /dev/null
+++ b/test/testcases/tests/level3/core/textwholetext03.xml
@@ -0,0 +1,45 @@
+<?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="textwholetext03">
+<metadata>
+<title>textwholetext03</title>
+<creator>IBM</creator>
+<description>
+ Invoke wholetext on two newly created text nodes and verify if the value returned
+ is correct.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-05-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Text3-wholeText"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="text1" type="Text"/>
+<var name="text2" type="Text"/>
+<var name="appendedChild" type="Node"/>
+<var name="combinedText" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<createElementNS var="elem" obj="doc" namespaceURI='"http://www.w3.org/1999/xhtml"' qualifiedName='"p"'/>
+<createTextNode var="text1" obj="doc" data='"Text I"'/>
+<createTextNode var="text2" obj="doc" data='" Text II"'/>
+<appendChild obj="elem" var="appendedChild" newChild="text1"/>
+<appendChild obj="elem" var="appendedChild" newChild="text2"/>
+<wholeText obj="text1" var="combinedText"/>
+<assertEquals expected='"Text I Text II"' actual="combinedText" id="textwholetext03" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfogettypename03.xml b/test/testcases/tests/level3/core/typeinfogettypename03.xml
new file mode 100644
index 0000000..16d0aa1
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfogettypename03.xml
@@ -0,0 +1,51 @@
+<?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="typeinfogettypename03">
+<metadata>
+<title>typeinfogettypename03</title>
+<creator>IBM</creator>
+<description>
+ The typeName attribute states the name of a type declared for the associated element or
+ attribute, or null if unknown.
+
+ Invoke getSchemaTypeInfo method on an attribute having [type definition] property. Expose
+ {name} and {target namespace} properties of the [type definition] property.
+ Verify that the typeName of id's schemaTypeInfo are correct.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+</metadata>
+
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="attrid" type="Attr"/>
+<var name="acElem" type="Element"/>
+<var name="attrTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attrid" obj="acElem" name='"id"'/>
+<schemaTypeInfo var="attrTypeInfo" obj="attrid" interface="Attr"/>
+<typeName var="typeName" obj="attrTypeInfo"/>
+<assertEquals expected='"ID"' actual="typeName" id="typeinfogettypename03_1" ignoreCase="false"/>
+
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfogettypename04.xml b/test/testcases/tests/level3/core/typeinfogettypename04.xml
new file mode 100644
index 0000000..73d8ff4
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfogettypename04.xml
@@ -0,0 +1,49 @@
+<?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="typeinfogettypename04">
+<metadata>
+<title>typeinfogettypename04</title>
+<creator>IBM</creator>
+<description>
+ The typeName attribute states the name of a type declared for the associated element or
+ attribute, or null if unknown.
+
+ Invoke getSchemaTypeInfo method on an attribute having [member type definition]property. Expose
+ {name} and {target namespace} properties of the [member type definition] property.
+ Verify that the typeName of an em element's schemaTypeInfo is correct.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+</metadata>
+
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="emElem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="emElem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="emElem" interface="Element"/>
+<typeName var="typeName" obj="elemTypeInfo"/>
+<assertEquals expected='"emType"' actual="typeName" id="typeinfogettypename04_1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfogettypenamespace01.xml b/test/testcases/tests/level3/core/typeinfogettypenamespace01.xml
new file mode 100644
index 0000000..756e3d6
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfogettypenamespace01.xml
@@ -0,0 +1,50 @@
+<?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="typeinfogettypenamespace01">
+<metadata>
+<title>typeinfogettypenamespace01</title>
+<creator>IBM</creator>
+<description>
+ The typeNamespace attribute states the namespace of a type declared for the associated element or
+ attribute, or null if unknown.
+
+ Invoke getSchemaTypeInfo method on an attribute having [type definition] property. Expose
+ {name} and {target namespace} properties of the [type definition] property.
+ Verify that the typeNamespace of the attrib1 and attrib3's schemaTypeInfo are correct.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeNamespace"/>
+</metadata>
+
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acElem" type="Element"/>
+<var name="titleAttr" type="Attr"/>
+<var name="attrTypeInfo" type="TypeInfo"/>
+<var name="typeNamespace" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="titleAttr" obj="acElem" name='"title"'/>
+<schemaTypeInfo var="attrTypeInfo" obj="titleAttr" interface="Attr"/>
+<typeNamespace var="typeNamespace" obj="attrTypeInfo"/>
+<assertEquals expected='"http://www.w3.org/2001/XMLSchema"' actual="typeNamespace" id="typeinfogettypename01_1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfogettypenamespace03.xml b/test/testcases/tests/level3/core/typeinfogettypenamespace03.xml
new file mode 100644
index 0000000..5ae21fb
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfogettypenamespace03.xml
@@ -0,0 +1,51 @@
+<?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="typeinfogettypenamespace03">
+<metadata>
+<title>typeinfogettypenamespace03</title>
+<creator>IBM</creator>
+<description>
+ The typeNamespace attribute states the namespace of a type declared for the associated element or
+ attribute, or null if unknown.
+
+ Invoke getSchemaTypeInfo method on an attribute having [type definition] property. Expose
+ {name} and {target namespace} properties of the [type definition] property.
+ Verify that the typeName of class's schemaTypeInfo is correct.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+</metadata>
+
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="classAttr" type="Attr"/>
+<var name="attrTypeInfo" type="TypeInfo"/>
+<var name="typeNamespace" type="DOMString"/>
+<var name="acElem" type="Element"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acElem" obj="elemList" index="1" interface="NodeList"/>
+<getAttributeNode var="classAttr" obj="acElem" name='"class"'/>
+<schemaTypeInfo var="attrTypeInfo" obj="classAttr" interface="Attr"/>
+<typeNamespace var="typeNamespace" obj="attrTypeInfo"/>
+<assertEquals expected='"http://www.w3.org/1999/xhtml"' actual="typeNamespace" id="typeinfogettypename03_1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfogettypenamespace04.xml b/test/testcases/tests/level3/core/typeinfogettypenamespace04.xml
new file mode 100644
index 0000000..8ca3c02
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfogettypenamespace04.xml
@@ -0,0 +1,48 @@
+<?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="typeinfogettypenamespace04">
+<metadata>
+<title>typeinfogettypenamespace04</title>
+<creator>IBM</creator>
+<description>
+ The typeName attribute states the name of a type declared for the associated element or
+ attribute, or null if unknown.
+
+ Invoke getSchemaTypeInfo method on an attribute having [member type definition]property. Expose
+ {name} and {target namespace} properties of the [member type definition] property.
+ Verify that the typeNamespace of eldblUnionA's schemaTypeInfo is null??? (sv)
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-typeName"/>
+</metadata>
+
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="emElem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeNamespace" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="emElem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="emElem" interface="Element"/>
+<typeNamespace var="typeNamespace" obj="elemTypeInfo"/>
+<assertEquals expected='"http://www.w3.org/1999/xhtml"' actual="typeNamespace" id="typeinfogettypenamespace04_1" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom01.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom01.xml
new file mode 100644
index 0000000..346bb86
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom01.xml
@@ -0,0 +1,50 @@
+<?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="typeinfoisderivedfrom01">
+<metadata>
+<title>typeinfoisderivedfrom01</title>
+<creator>Curt Arnold</creator>
+<description>
+DTD types always return false for isDerivedFrom.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"title"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/TR/REC-xml"'
+ typeNameArg='"CDATA"' derivationMethod="0"/>
+<assertFalse actual="isDerived" id="isDerived0"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/TR/REC-xml"'
+ typeNameArg='"CDATA"' derivationMethod="15"/>
+<assertFalse actual="isDerived" id="isDerived15"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom02.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom02.xml
new file mode 100644
index 0000000..a0ab434
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom02.xml
@@ -0,0 +1,57 @@
+<?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="typeinfoisderivedfrom02">
+<metadata>
+<title>typeinfoisderivedfrom02</title>
+<creator>Curt Arnold</creator>
+<description>
+Check how xsd:string is derived from itself.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"title"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xsd:string -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"string"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="derivedFromSelfRestriction"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"string"' derivationMethod="14"/>
+<assertFalse actual="isDerived" id="derivedFromSelfOther"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"string"' derivationMethod="0"/>
+<assertTrue actual="isDerived" id="derivedFromSelfAny"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"string"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromSelfAll"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom03.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom03.xml
new file mode 100644
index 0000000..cbfbf9e
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom03.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom03">
+<metadata>
+<title>typeinfoisderivedfrom03</title>
+<creator>Curt Arnold</creator>
+<description>
+Check that isDerivedFrom does considers xsd:string to be derived from anySimpleType.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"title"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xsd:string -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"string"' ignoreCase="false" id="nameIsString"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anySimpleType"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromAnySimpleType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom04.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom04.xml
new file mode 100644
index 0000000..fc61788
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom04.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom04">
+<metadata>
+<title>typeinfoisderivedfrom04</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if xsd:string is derived from xsd:anyType by any method.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"title"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xsd:string -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"string"' ignoreCase="false" id="nameIsString"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromAnyType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom05.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom05.xml
new file mode 100644
index 0000000..edb506d
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom05.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom05">
+<metadata>
+<title>typeinfoisderivedfrom05</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if xsd:string is derived from xsd:anyType by restriction.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"title"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xsd:string -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"string"' ignoreCase="false" id="nameIsString"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="derivedFromAnyTypeRestrictionOnly"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom06.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom06.xml
new file mode 100644
index 0000000..5129665
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom06.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom06">
+<metadata>
+<title>typeinfoisderivedfrom06</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if xsd:string is derived from xsd:anyType by any method except restriction.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"title"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xsd:string -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"string"' ignoreCase="false" id="nameIsString"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="14"/>
+<assertFalse actual="isDerived" id="derivedFromAnyTypeExceptRestriction"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom07.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom07.xml
new file mode 100644
index 0000000..d426aa3
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom07.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom07">
+<metadata>
+<title>typeinfoisderivedfrom07</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if xsd:string is derived from xsd:anyType using 0 as derivation method.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"title"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xsd:string -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"string"' ignoreCase="false" id="nameIsString"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="0"/>
+<assertTrue actual="isDerived" id="derivedFromAnyType0"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom08.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom08.xml
new file mode 100644
index 0000000..5fd16a8
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom08.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom08">
+<metadata>
+<title>typeinfoisderivedfrom08</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if classType is derived from xsd:string by any method.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"class"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xhtml:classType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"classType"' ignoreCase="false" id="nameIsString"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"string"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromString"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom09.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom09.xml
new file mode 100644
index 0000000..3927da4
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom09.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom09">
+<metadata>
+<title>typeinfoisderivedfrom09</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if classType is derived from xsd:anySimpleType by any method.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"class"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xhtml:classType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"classType"' ignoreCase="false" id="nameIsString"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anySimpleType"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromAnySimpleType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom10.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom10.xml
new file mode 100644
index 0000000..39ccec5
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom10.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom10">
+<metadata>
+<title>typeinfoisderivedfrom10</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if classType is derived from anyType by any method.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"class"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xhtml:classType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"classType"' ignoreCase="false" id="nameIsString"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromAnyType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom11.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom11.xml
new file mode 100644
index 0000000..ba6a588
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom11.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom11">
+<metadata>
+<title>typeinfoisderivedfrom11</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if classType is derived from xsd:anyType by restriction.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"class"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xhtml:classType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"classType"' ignoreCase="false" id="nameIsString"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="derivedFromAnyTypeRestrictionOnly"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom12.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom12.xml
new file mode 100644
index 0000000..ee46e4a
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom12.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom12">
+<metadata>
+<title>typeinfoisderivedfrom12</title>
+<creator>Curt Arnold</creator>
+<description>
+Check classType is derived from anyType specifying derivationMethod as 0.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"class"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xhtml:classType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"classType"' ignoreCase="false" id="nameIsString"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="0"/>
+<assertTrue actual="isDerived" id="derivedFromAnyType0"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom13.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom13.xml
new file mode 100644
index 0000000..7b1af06
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom13.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom13">
+<metadata>
+<title>typeinfoisderivedfrom13</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if classType is derived from xsd:anyType by any method other than restriction.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"class"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xhtml:classType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"classType"' ignoreCase="false" id="name"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="14"/>
+<assertFalse actual="isDerived" id="derivedFromAnyTypeExceptRestriction"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom14.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom14.xml
new file mode 100644
index 0000000..281d1c8
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom14.xml
@@ -0,0 +1,60 @@
+<?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="typeinfoisderivedfrom14">
+<metadata>
+<title>typeinfoisderivedfrom14</title>
+<creator>Curt Arnold</creator>
+<description>
+Check how classType is derived from itself.
+</description>
+<date qualifier="created">2004-01-11</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<getAttributeNode var="attr" obj="acronymElem" name='"class"'/>
+<schemaTypeInfo var="typeInfo" obj="attr" interface="Attr"/>
+<!-- type info should be xhtml:classType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"classType"' ignoreCase="false" id="name"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"classType"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="derivedFromSelfRestriction"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"classType"' derivationMethod="14"/>
+<assertFalse actual="isDerived" id="notDerivedFromSelfOther"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"classType"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromSelfAll"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"classType"' derivationMethod="0"/>
+<assertTrue actual="isDerived" id="derivedFromSelfAny"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom15.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom15.xml
new file mode 100644
index 0000000..1ced9c0
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom15.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom15">
+<metadata>
+<title>typeinfoisderivedfrom15</title>
+<creator>Curt Arnold</creator>
+<description>
+Check "emType" is derived from emp0001_3Type by any method.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be emType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"emType"' ignoreCase="false" id="name"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"emp0001_3Type"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromEmp13AnyMethod"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom16.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom16.xml
new file mode 100644
index 0000000..556285d
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom16.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom16">
+<metadata>
+<title>typeinfoisderivedfrom16</title>
+<creator>Curt Arnold</creator>
+<description>
+Check emType is derived from emp0001_3Type by union.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be emType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"emType"' ignoreCase="false" id="name"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"emp0001_3Type"' derivationMethod="4"/>
+<assertTrue actual="isDerived" id="derivedFromEmp13Union"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom17.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom17.xml
new file mode 100644
index 0000000..a046bdc
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom17.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom17">
+<metadata>
+<title>typeinfoisderivedfrom17</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if emType is derived from emp0001_3Type by any method other than union.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be emType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"emType"' ignoreCase="false" id="name"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"emp0001_3Type"' derivationMethod="11"/>
+<assertFalse actual="isDerived" id="derivedFromEmp13NotUnion"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom18.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom18.xml
new file mode 100644
index 0000000..ca4f97b
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom18.xml
@@ -0,0 +1,50 @@
+<?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="typeinfoisderivedfrom18">
+<metadata>
+<title>typeinfoisderivedfrom18</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if emType is derived from xsd:ID by restriction.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be emType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"emType"' ignoreCase="false" id="typeName"/>
+
+<!-- emType is not derived by restriction from xsd:ID even though
+ every memberType in the union is derived by restriction from xsd:ID -->
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"ID"' derivationMethod="1"/>
+<assertFalse actual="isDerived" id="derivedFromID"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom19.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom19.xml
new file mode 100644
index 0000000..44356ee
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom19.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom19">
+<metadata>
+<title>typeinfoisderivedfrom19</title>
+<creator>Curt Arnold</creator>
+<description>
+Check emType is derived from anySimpleType by restriction.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be emType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"emType"' ignoreCase="false" id="typeName"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anySimpleType"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="derivedFromAnySimpleType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom20.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom20.xml
new file mode 100644
index 0000000..3a0e665
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom20.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom20">
+<metadata>
+<title>typeinfoisderivedfrom20</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if emType is derived from anyType by restriction.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be emType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="derivedFromAnyType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom21.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom21.xml
new file mode 100644
index 0000000..065af84
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom21.xml
@@ -0,0 +1,56 @@
+<?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="typeinfoisderivedfrom21">
+<metadata>
+<title>typeinfoisderivedfrom21</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if emType is derived from itself.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be emType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"emType"' ignoreCase="false" id="typeName"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"emType"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="derivedFromSelfByRestriction"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"emType"' derivationMethod="14"/>
+<assertFalse actual="isDerived" id="notDerivedFromSelfOtherMethod"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"emType"' derivationMethod="0"/>
+<assertTrue actual="isDerived" id="derivedFromSelfByAny"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"emType"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromSelfByAll"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom22.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom22.xml
new file mode 100644
index 0000000..ceec2ad
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom22.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom22">
+<metadata>
+<title>typeinfoisderivedfrom22</title>
+<creator>Curt Arnold</creator>
+<description>
+Check strongType is derived from xsd:string by any method.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be strongType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"strongType"' ignoreCase="false" id="typeName"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"string"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromStringAnyMethod"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom23.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom23.xml
new file mode 100644
index 0000000..447d14e
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom23.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom23">
+<metadata>
+<title>typeinfoisderivedfrom23</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if strongType is derived from xsd:string by list.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be strongType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"strongType"' ignoreCase="false" id="typeName"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"string"' derivationMethod="8"/>
+<assertTrue actual="isDerived" id="derivedFromStringList"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom24.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom24.xml
new file mode 100644
index 0000000..6fd8ec8
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom24.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom24">
+<metadata>
+<title>typeinfoisderivedfrom24</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if strongType is derived from xsd:string by any method other than list.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be strongType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"strongType"' ignoreCase="false" id="typeName"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"string"' derivationMethod="7"/>
+<assertFalse actual="isDerived" id="derivedFromStringNotList"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom25.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom25.xml
new file mode 100644
index 0000000..33e8500
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom25.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom25">
+<metadata>
+<title>typeinfoisderivedfrom25</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if strongType is derived from anySimpleType by restriction.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be strongType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"strongType"' ignoreCase="false" id="typeName"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anySimpleType"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="derivedFromAnySimpleType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom26.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom26.xml
new file mode 100644
index 0000000..3b6cc1d
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom26.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom26">
+<metadata>
+<title>typeinfoisderivedfrom26</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if strongType is derived from anyType by restriction.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be strongType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"strongType"' ignoreCase="false" id="typeName"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="derivedFromAnyType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom27.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom27.xml
new file mode 100644
index 0000000..e6c6666
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom27.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom27">
+<metadata>
+<title>typeinfoisderivedfrom27</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if strongType is derived from anyType by union or extension.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be strongType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"strongType"' ignoreCase="false" id="typeName"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="6"/>
+<assertFalse actual="isDerived" id="derivedFromAnyType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom28.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom28.xml
new file mode 100644
index 0000000..c4f2fe3
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom28.xml
@@ -0,0 +1,56 @@
+<?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="typeinfoisderivedfrom28">
+<metadata>
+<title>typeinfoisderivedfrom28</title>
+<creator>Curt Arnold</creator>
+<description>
+Check how strongType is derived from itself.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be strongType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"strongType"' ignoreCase="false" id="typeName"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"strongType"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="notDerivedFromSelfRestriction"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"strongType"' derivationMethod="14"/>
+<assertFalse actual="isDerived" id="notDerivedFromSelfOther"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"strongType"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="notDerivedFromSelfAll"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"strongType"' derivationMethod="0"/>
+<assertTrue actual="isDerived" id="notDerivedFromSelfAny"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom29.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom29.xml
new file mode 100644
index 0000000..b8ae97e
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom29.xml
@@ -0,0 +1,45 @@
+<?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="typeinfoisderivedfrom29">
+<metadata>
+<title>typeinfoisderivedfrom29</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type for p element is derived from pType.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be anonymous type defined within p element -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<!-- check its relationship with pType -->
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"pType"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromPTypeAnyMethod"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom30.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom30.xml
new file mode 100644
index 0000000..8f95608
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom30.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom30">
+<metadata>
+<title>typeinfoisderivedfrom30</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type for p element is derived from pType by restriction.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be anonymous type defined within p element -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"pType"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="derivedFromPTypeRestriction"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom31.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom31.xml
new file mode 100644
index 0000000..2719324
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom31.xml
@@ -0,0 +1,45 @@
+<?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="typeinfoisderivedfrom31">
+<metadata>
+<title>typeinfoisderivedfrom31</title>
+<creator>Curt Arnold</creator>
+<description>
+Check anonymous type for p element is derived from pType by any method other than restriction.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be anonymous type defined within p element -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<!-- check its relationship with pType -->
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"pType"' derivationMethod="14"/>
+<assertFalse actual="isDerived" id="derivedFromPTypeNotRestriction"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom32.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom32.xml
new file mode 100644
index 0000000..26ece55
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom32.xml
@@ -0,0 +1,45 @@
+<?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="typeinfoisderivedfrom32">
+<metadata>
+<title>typeinfoisderivedfrom32</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of p element is derived from part1.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be anonymous type defined within p element -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<!-- check its relationship with part1 -->
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"part1"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromPart1AnyMethod"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom33.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom33.xml
new file mode 100644
index 0000000..deaaef1
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom33.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom33">
+<metadata>
+<title>typeinfoisderivedfrom33</title>
+<creator>Curt Arnold</creator>
+<description>
+Check is anonymous type of p element is derived by extension from part1.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be anonymous type defined within p element -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"part1"' derivationMethod="2"/>
+<assertTrue actual="isDerived" id="derivedFromPart1Extension"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom34.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom34.xml
new file mode 100644
index 0000000..921c7e5
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom34.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom34">
+<metadata>
+<title>typeinfoisderivedfrom34</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of p element is derived from part1 by any method other than extension.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be anonymous type defined within p element -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"part1"' derivationMethod="13"/>
+<assertFalse actual="isDerived" id="derivedFromPart1NotExtension"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom35.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom35.xml
new file mode 100644
index 0000000..102814b
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom35.xml
@@ -0,0 +1,45 @@
+<?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="typeinfoisderivedfrom35">
+<metadata>
+<title>typeinfoisderivedfrom35</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of p element is derived from xsd:simpleType.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be anonymous type defined within p element -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<!-- check relationship with anySimpleType -->
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anySimpleType"' derivationMethod="15"/>
+<assertFalse actual="isDerived" id="derivedFromAnySimpleType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom36.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom36.xml
new file mode 100644
index 0000000..d8a5c59
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom36.xml
@@ -0,0 +1,45 @@
+<?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="typeinfoisderivedfrom36">
+<metadata>
+<title>typeinfoisderivedfrom36</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of p element is derived from xsd:anyType.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be anonymous type defined within p element -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<!-- check relationship with anyType -->
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="15"/>
+<assertTrue actual="isDerived" id="derivedFromAnyTypeAnyMethod"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom37.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom37.xml
new file mode 100644
index 0000000..c4966aa
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom37.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom37">
+<metadata>
+<title>typeinfoisderivedfrom37</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of p element is derived from xsd:anyType by restriction.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be anonymous type defined within p element -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="1"/>
+<assertFalse actual="isDerived" id="derivedFromAnyTypeRestriction"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom38.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom38.xml
new file mode 100644
index 0000000..314a8cc
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom38.xml
@@ -0,0 +1,45 @@
+<?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="typeinfoisderivedfrom38">
+<metadata>
+<title>typeinfoisderivedfrom38</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of p element is derived from xsd:anyType by any method other
+than extension.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be anonymous type defined within p element -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="13"/>
+<assertFalse actual="isDerived" id="derivedFromAnyTypeNotExtension"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom39.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom39.xml
new file mode 100644
index 0000000..01f14ec
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom39.xml
@@ -0,0 +1,48 @@
+<?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="typeinfoisderivedfrom39">
+<metadata>
+<title>typeinfoisderivedfrom39</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of p element derives from itself.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<var name="typeNS" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be anonymous type defined within p element -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<typeNamespace var="typeNS" obj="typeInfo"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='typeNS'
+ typeNameArg='typeName' derivationMethod="15"/>
+<assertFalse actual="isDerived" id="notDerivedFromSelf"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom40.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom40.xml
new file mode 100644
index 0000000..23dd8e6
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom40.xml
@@ -0,0 +1,49 @@
+<?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="typeinfoisderivedfrom40">
+<metadata>
+<title>typeinfoisderivedfrom40</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if emType is derived from xsd:ID by union.
+</description>
+<date qualifier="created">2004-01-13</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be emType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"emType"' ignoreCase="false" id="typeName"/>
+<!-- emType is derived by union from xsd:ID since
+ at least one memberType in the union is derived by restriction from xsd:ID -->
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"ID"' derivationMethod="4"/>
+<assertTrue actual="isDerived" id="derivedFromID"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom41.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom41.xml
new file mode 100644
index 0000000..0acf008
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom41.xml
@@ -0,0 +1,49 @@
+<?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="typeinfoisderivedfrom41">
+<metadata>
+<title>typeinfoisderivedfrom41</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if emType is derived from xsd:ID by any method other than union or restriction.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be emType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"emType"' ignoreCase="false" id="typeName"/>
+<!-- emType is derived by union from xsd:ID since
+ at least one memberType in the union is derived by restriction from xsd:ID -->
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"ID"' derivationMethod="10"/>
+<assertFalse actual="isDerived" id="derivedFromID"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom42.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom42.xml
new file mode 100644
index 0000000..f3a88d4
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom42.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom42">
+<metadata>
+<title>typeinfoisderivedfrom42</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if strongType is derived from anySimpleType by list.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<var name="typeName" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<!-- type should be strongType -->
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<typeName var="typeName" obj="typeInfo"/>
+<assertEquals actual="typeName" expected='"strongType"' ignoreCase="false" id="typeName"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anySimpleType"' derivationMethod="8"/>
+<assertTrue actual="isDerived" id="derivedFromAnySimpleType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom43.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom43.xml
new file mode 100644
index 0000000..607cc93
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom43.xml
@@ -0,0 +1,46 @@
+<?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="typeinfoisderivedfrom43">
+<metadata>
+<title>typeinfoisderivedfrom43</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of acronym element derived from anyType by restriction.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="acronymElem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="1"/>
+<assertFalse actual="isDerived" id="derivedFromAnyType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom44.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom44.xml
new file mode 100644
index 0000000..f2d4410
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom44.xml
@@ -0,0 +1,46 @@
+<?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="typeinfoisderivedfrom44">
+<metadata>
+<title>typeinfoisderivedfrom44</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of acronym element derived from anyType by any method other than extension.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="acronymElem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="13"/>
+<assertFalse actual="isDerived" id="derivedFromAnyType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom45.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom45.xml
new file mode 100644
index 0000000..170b697
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom45.xml
@@ -0,0 +1,46 @@
+<?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="typeinfoisderivedfrom45">
+<metadata>
+<title>typeinfoisderivedfrom45</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of acronym element derived from anySimpleType by extension.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="acronymElem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anySimpleType"' derivationMethod="2"/>
+<assertTrue actual="isDerived" id="derivedFromAnySimpleType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom46.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom46.xml
new file mode 100644
index 0000000..94d16be
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom46.xml
@@ -0,0 +1,46 @@
+<?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="typeinfoisderivedfrom46">
+<metadata>
+<title>typeinfoisderivedfrom46</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of acronym element derived from anySimpleType by any method other than extension.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="acronymElem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anySimpleType"' derivationMethod="13"/>
+<assertFalse actual="isDerived" id="derivedFromAnySimpleType"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom47.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom47.xml
new file mode 100644
index 0000000..2eb0c0a
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom47.xml
@@ -0,0 +1,46 @@
+<?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="typeinfoisderivedfrom47">
+<metadata>
+<title>typeinfoisderivedfrom47</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of acronym element derived from xsd:string by extension.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="acronymElem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"string"' derivationMethod="2"/>
+<assertTrue actual="isDerived" id="derivedFromString"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom48.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom48.xml
new file mode 100644
index 0000000..88b4c62
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom48.xml
@@ -0,0 +1,46 @@
+<?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="typeinfoisderivedfrom48">
+<metadata>
+<title>typeinfoisderivedfrom48</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if anonymous type of acronym element derived from xsd:string by any method other than extension.
+</description>
+<date qualifier="created">2004-01-15</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="2" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="acronymElem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"string"' derivationMethod="13"/>
+<assertFalse actual="isDerived" id="derivedFromString"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom49.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom49.xml
new file mode 100644
index 0000000..edd7097
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom49.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom49">
+<metadata>
+<title>typeinfoisderivedfrom49</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if a type derived by extension from a list of a item type returns true
+when asked if it derives by list from the item type.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"double"' derivationMethod="8"/>
+<assertTrue actual="isDerived" id="derivedFromDoubleList"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom50.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom50.xml
new file mode 100644
index 0000000..79835f9
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom50.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom50">
+<metadata>
+<title>typeinfoisderivedfrom50</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if a type derived by extension from a list of a item type returns true
+when asked if it derives by any method from the item type.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"double"' derivationMethod="0"/>
+<assertTrue actual="isDerived" id="derivedFromDoubleAny"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom51.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom51.xml
new file mode 100644
index 0000000..eeba513
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom51.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom51">
+<metadata>
+<title>typeinfoisderivedfrom51</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if a type derived by extension from a list of a item type returns false
+when asked if it derives by any method other than list from the item type.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"double"' derivationMethod="7"/>
+<assertFalse actual="isDerived" id="derivedFromDoubleNonList"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom52.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom52.xml
new file mode 100644
index 0000000..6faac43
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom52.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom52">
+<metadata>
+<title>typeinfoisderivedfrom52</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if a type derived by extension from a list of a item type returns false
+when asked if it derives by restriction from anySimpleType type.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anySimpleType"' derivationMethod="1"/>
+<assertFalse actual="isDerived" id="derivedFromAnySimpleRestriction"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom53.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom53.xml
new file mode 100644
index 0000000..1dd52ba
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom53.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom53">
+<metadata>
+<title>typeinfoisderivedfrom53</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if a type derived by extension from a list of a item type returns true
+when asked if it derives by extension from anySimpleType.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anySimpleType"' derivationMethod="2"/>
+<assertTrue actual="isDerived" id="derivedFromAnySimpleExtension"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom54.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom54.xml
new file mode 100644
index 0000000..e6cbaf7
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom54.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom54">
+<metadata>
+<title>typeinfoisderivedfrom54</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if a type derived by extension from a list of a item type returns true
+when asked if it derives by list from anySimpleType.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anySimpleType"' derivationMethod="8"/>
+<assertTrue actual="isDerived" id="derivedFromAnySimpleList"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom55.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom55.xml
new file mode 100644
index 0000000..2cff9c3
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom55.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom55">
+<metadata>
+<title>typeinfoisderivedfrom55</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if a type derived by extension from a list of a item type returns true
+when asked if it derives by extension from anyType type.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="2"/>
+<assertTrue actual="isDerived" id="derivedFromAnyRestriction"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom56.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom56.xml
new file mode 100644
index 0000000..0e5404a
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom56.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom56">
+<metadata>
+<title>typeinfoisderivedfrom56</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if a type derived by extension from a list of a item type returns true
+when asked if it derives by extension from anyType.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="2"/>
+<assertTrue actual="isDerived" id="derivedFromAnyExtension"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom57.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom57.xml
new file mode 100644
index 0000000..66e1a18
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom57.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom57">
+<metadata>
+<title>typeinfoisderivedfrom57</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if a type derived by extension from a list of a item type returns true
+when asked if it derives by list from anyType.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"anyType"' derivationMethod="8"/>
+<assertTrue actual="isDerived" id="derivedFromAnyList"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom58.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom58.xml
new file mode 100644
index 0000000..6983000
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom58.xml
@@ -0,0 +1,45 @@
+<?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="typeinfoisderivedfrom58">
+<metadata>
+<title>typeinfoisderivedfrom58</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if a type derived by extension from a union returns true
+when asked if it derives by union from a member type of the union.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="codeElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"code"' interface="Document"/>
+<item var="codeElem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="codeElem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/1999/xhtml"'
+ typeNameArg='"unbounded"' derivationMethod="4"/>
+<assertTrue actual="isDerived" id="isDerived"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom59.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom59.xml
new file mode 100644
index 0000000..2a24946
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom59.xml
@@ -0,0 +1,48 @@
+<?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="typeinfoisderivedfrom59">
+<metadata>
+<title>typeinfoisderivedfrom59</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if a type derived by extension from a union returns true
+when asked if it derives by union from a restricted base of
+a member of type union.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="codeElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="elem" type="Element"/>
+<var name="elemName" type="DOMString"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"code"' interface="Document"/>
+<item var="codeElem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="codeElem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"integer"' derivationMethod="4"/>
+<assertTrue actual="isDerived" id="isDerived"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom60.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom60.xml
new file mode 100644
index 0000000..41c06e7
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom60.xml
@@ -0,0 +1,44 @@
+<?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="typeinfoisderivedfrom60">
+<metadata>
+<title>typeinfoisderivedfrom60</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if xs:IDREFS is derived by list from xs:IDREF.
+</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"IDREF"' derivationMethod="8"/>
+<assertTrue actual="isDerived" id="isDerived"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom61.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom61.xml
new file mode 100644
index 0000000..580d204
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom61.xml
@@ -0,0 +1,42 @@
+<?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="typeinfoisderivedfrom61">
+<metadata>
+<title>typeinfoisderivedfrom61</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if xs:byte is derived by restriction from xs:short</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"short"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="isDerived"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom62.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom62.xml
new file mode 100644
index 0000000..04ef63d
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom62.xml
@@ -0,0 +1,42 @@
+<?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="typeinfoisderivedfrom62">
+<metadata>
+<title>typeinfoisderivedfrom62</title>
+<creator>Curt Arnold</creator>
+<description>
+Check if xs:byte is derived by restriction from xs:decimal</description>
+<date qualifier="created">2004-02-14</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="typeInfo" type="TypeInfo"/>
+<var name="isDerived" type="boolean"/>
+<load var="doc" href="typeinfo" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="typeInfo" obj="elem" interface="Element"/>
+<assertNotNull actual="typeInfo" id="typeInfoNotNull"/>
+<isDerivedFrom var="isDerived" obj="typeInfo" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"'
+ typeNameArg='"decimal"' derivationMethod="1"/>
+<assertTrue actual="isDerived" id="isDerived"/>
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom63.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom63.xml
new file mode 100644
index 0000000..a605bd2
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom63.xml
@@ -0,0 +1,51 @@
+<?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="typeinfoisderivedfrom63">
+<metadata>
+<title>typeinfoisderivedfrom63</title>
+<creator>IBM</creator>
+<description>
+ The isDerivedFrom method checks if this TypeInfo derives from the specified ancestor type.
+ If the document's schema is a DTD or no schema is associated with the document, this method
+ will always return false.
+
+ Get schemaTypeInfo on an element that belongs to a document with an XML DTD. Invoke method
+ isDerivedFrom and verify that returned the typeNamespace is null.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-10</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+
+<implementationAttribute name="validating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="acronymElem" type="Element"/>
+<var name="retValue" type="boolean"/>
+<var name="typeNamespace" type="DOMString"/>
+<var name="nullName" type="DOMString" isNull="true"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acronymElem" obj="elemList" index="0" interface="NodeList"/>
+
+<schemaTypeInfo var="elemTypeInfo" obj="acronymElem" interface="Element"/>
+<isDerivedFrom obj="elemTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/TR/REC-xml"' typeNameArg="nullName" derivationMethod="0" />
+<assertFalse actual="retValue" id="typeinfoisderivedfrom63" />
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom64.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom64.xml
new file mode 100644
index 0000000..f2e7c58
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom64.xml
@@ -0,0 +1,48 @@
+<?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="typeinfoisderivedfrom64">
+<metadata>
+<title>typeinfoisderivedfrom64</title>
+<creator>IBM</creator>
+<description>
+Check that the simpleType of an attributes derives by restriction from itself
+and from its base type.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="acElem" type="Element"/>
+<var name="classAttr" type="Attr"/>
+<var name="attrTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="retValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="acElem" obj="elemList" index="1" interface="NodeList"/>
+<getAttributeNode var="classAttr" obj="acElem" name='"class"'/>
+<schemaTypeInfo var="attrTypeInfo" obj="classAttr" interface="Attr"/>
+<isDerivedFrom obj="attrTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/1999/xhtml"' typeNameArg='"classType"' derivationMethod="1"/>
+<assertTrue actual="retValue" id="derivedFromClassType" />
+<isDerivedFrom obj="attrTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"' typeNameArg='"string"' derivationMethod="1"/>
+<assertTrue actual="retValue" id="derivedFromString" />
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom65.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom65.xml
new file mode 100644
index 0000000..ea20157
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom65.xml
@@ -0,0 +1,47 @@
+<?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="typeinfoisderivedfrom65">
+<metadata>
+<title>typeinfoisderivedfrom65</title>
+<creator>IBM</creator>
+<description>
+ The isDerivedFrom method checks if this TypeInfo derives from the specified ancestor type.
+
+ Get schemaTypeInfo on a simple type attribute that belongs to a document with an XML schema.
+ Invoke method isDerivedFrom with derivation method list and verify that the value returned is true.
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+
+<implementationAttribute name="schemaValidating" value="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemTypeInfo" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="strongElem" type="Element"/>
+<var name="attrTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="retValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="strongElem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="strongElem" interface="Element"/>
+<isDerivedFrom obj="elemTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"' typeNameArg='"string"' derivationMethod="8"/>
+<assertTrue actual="retValue" id="lisrDerivedFromString" />
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom66.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom66.xml
new file mode 100644
index 0000000..b1bcad0
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom66.xml
@@ -0,0 +1,50 @@
+<?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="typeinfoisderivedfrom66">
+<metadata>
+<title>typeinfoisderivedfrom66</title>
+<creator>IBM</creator>
+<description>
+ The isDerivedFrom method checks if this TypeInfo derives from the specified ancestor type.
+
+ Get schemaTypeInfo on an element of type Union that belongs to a document with an XML schema.
+ Invoke method isDerivedFrom with derivation method union and verify that the value returned is true.
+ Verify that emType is derived from emp0004_5Type by union.
+
+</description>
+<contributor>Jenny Hsu</contributor>
+<date qualifier="created">2003-10-28</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="unionElem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="retValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"em"' interface="Document"/>
+<item var="unionElem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="unionElem" interface="Element"/>
+<isDerivedFrom obj="elemTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/1999/xhtml"' typeNameArg='"emp0004_5Type"' derivationMethod="0"/>
+<assertTrue actual="retValue" id="typeinfoisderivedfrom66" />
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom67.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom67.xml
new file mode 100644
index 0000000..dcf52c5
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom67.xml
@@ -0,0 +1,46 @@
+<?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="typeinfoisderivedfrom67">
+<metadata>
+<title>typeinfoisderivedfrom67</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that isDerivedFrom(...,METHOD_UNION) returns true when there
+are multiple union derivation steps between the target and
+ancestor type.
+</description>
+<date qualifier="created">2004-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="retValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"sup"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="elem" interface="Element"/>
+<isDerivedFrom obj="elemTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/1999/xhtml"' typeNameArg='"emp0004_5Type"' derivationMethod="4"/>
+<assertTrue actual="retValue" id="isDerived" />
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom68.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom68.xml
new file mode 100644
index 0000000..ec18564
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom68.xml
@@ -0,0 +1,46 @@
+<?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="typeinfoisderivedfrom68">
+<metadata>
+<title>typeinfoisderivedfrom68</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that isDerivedFrom(...,0) returns true when there
+is more than one union derivation steps between the target and
+ancestor type.
+</description>
+<date qualifier="created">2004-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="retValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"sup"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="elem" interface="Element"/>
+<isDerivedFrom obj="elemTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/1999/xhtml"' typeNameArg='"emp0004_5Type"' derivationMethod="0"/>
+<assertTrue actual="retValue" id="isDerived" />
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom69.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom69.xml
new file mode 100644
index 0000000..d5cf376
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom69.xml
@@ -0,0 +1,46 @@
+<?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="typeinfoisderivedfrom69">
+<metadata>
+<title>typeinfoisderivedfrom69</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that isDerivedFrom(...,DERIVATION_UNION|DERIVATION_LIST) returns false when there
+is both a union and list derivation steps between the target and
+ancestor type.
+</description>
+<date qualifier="created">2004-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="retValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"sup"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="elem" interface="Element"/>
+<isDerivedFrom obj="elemTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"' typeNameArg='"integer"' derivationMethod="12"/>
+<assertFalse actual="retValue" id="isDerived" />
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom70.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom70.xml
new file mode 100644
index 0000000..859cab4
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom70.xml
@@ -0,0 +1,46 @@
+<?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="typeinfoisderivedfrom70">
+<metadata>
+<title>typeinfoisderivedfrom70</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that isDerivedFrom(...,0) returns true when there
+is both a union and list derivation steps between the target and
+ancestor type.
+</description>
+<date qualifier="created">2004-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="retValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"sup"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="elem" interface="Element"/>
+<isDerivedFrom obj="elemTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/2001/XMLSchema"' typeNameArg='"string"' derivationMethod="0"/>
+<assertTrue actual="retValue" id="isDerived" />
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom71.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom71.xml
new file mode 100644
index 0000000..9a8fc88
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom71.xml
@@ -0,0 +1,45 @@
+<?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="typeinfoisderivedfrom71">
+<metadata>
+<title>typeinfoisderivedfrom71</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that isDerivedFrom(...,0) returns true when target type is a list
+of an union of the ancestor type.
+</description>
+<date qualifier="created">2004-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="retValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"code"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="elem" interface="Element"/>
+<isDerivedFrom obj="elemTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/1999/xhtml"' typeNameArg='"field"' derivationMethod="0"/>
+<assertTrue actual="retValue" id="isDerived" />
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom72.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom72.xml
new file mode 100644
index 0000000..1c4af19
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom72.xml
@@ -0,0 +1,46 @@
+<?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="typeinfoisderivedfrom72">
+<metadata>
+<title>typeinfoisderivedfrom72</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that isDerivedFrom(...,DERIVATION_LIST|DERIVATION_UNION) returns false when target type is a list
+of an union.
+ancestor type.
+</description>
+<date qualifier="created">2004-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="retValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"code"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="elem" interface="Element"/>
+<isDerivedFrom obj="elemTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/1999/xhtml"' typeNameArg='"field"' derivationMethod="12"/>
+<assertFalse actual="retValue" id="isDerived" />
+</test>
diff --git a/test/testcases/tests/level3/core/typeinfoisderivedfrom73.xml b/test/testcases/tests/level3/core/typeinfoisderivedfrom73.xml
new file mode 100644
index 0000000..46dfe6b
--- /dev/null
+++ b/test/testcases/tests/level3/core/typeinfoisderivedfrom73.xml
@@ -0,0 +1,45 @@
+<?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="typeinfoisderivedfrom73">
+<metadata>
+<title>typeinfoisderivedfrom73</title>
+<creator>Curt Arnold</creator>
+<description>
+Checks that isDerivedFrom(...,0) returns true where the target type is a union
+where the ancestor type is a member of the union and is a union itself.
+</description>
+<date qualifier="created">2004-03-04</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#TypeInfo-isDerivedFrom"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+<implementationAttribute name="validating" value="true"/>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="elemTypeInfo" type="TypeInfo"/>
+<var name="typeName" type="DOMString"/>
+<var name="elemList" type="NodeList"/>
+<var name="retValue" type="boolean"/>
+<load var="doc" href="hc_staff" willBeModified="false"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"sup"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<schemaTypeInfo var="elemTypeInfo" obj="elem" interface="Element"/>
+<isDerivedFrom obj="elemTypeInfo" var="retValue" typeNamespaceArg='"http://www.w3.org/1999/xhtml"' typeNameArg='"emType"' derivationMethod="0"/>
+<assertTrue actual="retValue" id="isDerived" />
+</test>
diff --git a/test/testcases/tests/level3/core/userdatahandler01.xml b/test/testcases/tests/level3/core/userdatahandler01.xml
new file mode 100644
index 0000000..95fc311
--- /dev/null
+++ b/test/testcases/tests/level3/core/userdatahandler01.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="userdatahandler01">
+<metadata>
+<title>userdatahandler01</title>
+<creator>Curt Arnold</creator>
+<description>
+Call setUserData on a node providing a UserDataHandler and rename the node.
+</description>
+<date qualifier="created">2004-01-16</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-handleUserDataEvent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="pList" type="NodeList"/>
+<var name="userDataMonitor" type="UserDataMonitor"/>
+<var name="oldUserData" type="DOMUserData"/>
+<var name="elementNS" type="DOMString"/>
+<var name="newNode" type="Node"/>
+<var name="notifications" type="List"/>
+<var name="notification" type="UserDataNotification"/>
+<var name="operation" type="short"/>
+<var name="key" type="DOMString"/>
+<var name="data" type="DOMString"/>
+<var name="src" type="Node"/>
+<var name="dst" type="Node"/>
+<var name="greetingCount" type="int" value="0"/>
+<var name="salutationCount" type="int" value="0"/>
+<var name="hello" type="DOMString" value='"Hello"'/>
+<var name="mister" type="DOMString" value='"Mr."'/>
+
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="node" obj="pList" index="0" interface="NodeList"/>
+<setUserData var="oldUserData" obj="node" key='"greeting"' data='hello' handler="userDataMonitor"/>
+<setUserData var="oldUserData" obj="node" key='"salutation"' data='mister' handler="userDataMonitor"/>
+<namespaceURI var="elementNS" obj="node" interface="Node"/>
+<renameNode var="newNode" obj="doc" n="node" namespaceURI="elementNS" qualifiedName='"div"'/>
+<allNotifications var="notifications" obj="userDataMonitor"/>
+<assertSize size="2" collection="notifications" id="twoNotifications"/>
+<for-each member="notification" collection="notifications">
+ <operation var="operation" obj="notification"/>
+ <assertEquals actual="operation" expected="4" ignoreCase="false" id="operationIsRename"/>
+ <key var="key" obj="notification"/>
+ <data var="data" obj="notification" interface="UserDataNotification"/>
+ <if>
+ <equals actual="key" expected='"greeting"' ignoreCase="false"/>
+ <assertEquals actual="data" expected='hello' ignoreCase="false" id="greetingDataHello"/>
+ <increment var="greetingCount" value="1"/>
+ <else>
+ <assertEquals actual="key" expected='"salutation"' ignoreCase="false" id="saluationKey"/>
+ <assertEquals actual="data" expected='mister' ignoreCase="false" id="salutationDataMr"/>
+ <increment var="salutationCount" value="1"/>
+ </else>
+ </if>
+ <src interface="UserDataNotification" var="src" obj="notification"/>
+ <assertSame actual="src" expected="node" id="srcIsNode"/>
+ <dst var="dst" obj="notification"/>
+ <if>
+ <!-- will be null if no node needs to be newly created -->
+ <isNull obj="dst"/>
+ <assertSame actual="newNode" expected="node" id="ifDstNullRenameMustReuseNode"/>
+ <else>
+ <!-- otherwise will be same as newNode -->
+ <assertSame actual="dst" expected="newNode" id="dstIsNewNode"/>
+ </else>
+ </if>
+</for-each>
+<assertEquals actual="greetingCount" expected="1" ignoreCase="false" id="greetingCountIs1"/>
+<assertEquals actual="salutationCount" expected="1" ignoreCase="false" id="salutationCountIs1"/>
+</test>
diff --git a/test/testcases/tests/level3/core/userdatahandler02.xml b/test/testcases/tests/level3/core/userdatahandler02.xml
new file mode 100644
index 0000000..14da16a
--- /dev/null
+++ b/test/testcases/tests/level3/core/userdatahandler02.xml
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="userdatahandler02">
+<metadata>
+<title>userdatahandler02</title>
+<creator>Curt Arnold</creator>
+<description>
+Call setUserData on a node providing a UserDataHandler and clone the node.
+</description>
+<date qualifier="created">2004-01-16</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-handleUserDataEvent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="pList" type="NodeList"/>
+<var name="userDataMonitor" type="UserDataMonitor"/>
+<var name="oldUserData" type="DOMUserData"/>
+<var name="elementNS" type="DOMString"/>
+<var name="newNode" type="Node"/>
+<var name="notifications" type="List"/>
+<var name="notification" type="UserDataNotification"/>
+<var name="operation" type="short"/>
+<var name="key" type="DOMString"/>
+<var name="data" type="DOMString"/>
+<var name="src" type="Node"/>
+<var name="dst" type="Node"/>
+<var name="greetingCount" type="int" value="0"/>
+<var name="salutationCount" type="int" value="0"/>
+<var name="hello" type="DOMString" value='"Hello"'/>
+<var name="mister" type="DOMString" value='"Mr."'/>
+
+<load var="doc" href="barfoo" willBeModified="true"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="node" obj="pList" index="0" interface="NodeList"/>
+<setUserData var="oldUserData" obj="node" key='"greeting"' data='hello' handler="userDataMonitor"/>
+<setUserData var="oldUserData" obj="node" key='"salutation"' data='mister' handler="userDataMonitor"/>
+<namespaceURI var="elementNS" obj="node" interface="Node"/>
+<cloneNode var="newNode" obj="node" deep="true"/>
+<allNotifications var="notifications" obj="userDataMonitor"/>
+<assertSize size="2" collection="notifications" id="twoNotifications"/>
+<for-each member="notification" collection="notifications">
+ <operation var="operation" obj="notification"/>
+ <assertEquals actual="operation" expected="1" ignoreCase="false" id="operationIsClone"/>
+ <key var="key" obj="notification"/>
+ <data var="data" obj="notification" interface="UserDataNotification"/>
+ <if>
+ <equals actual="key" expected='"greeting"' ignoreCase="false"/>
+ <assertEquals actual="data" expected='hello' ignoreCase="false" id="greetingDataHello"/>
+ <increment var="greetingCount" value="1"/>
+ <else>
+ <assertEquals actual="key" expected='"salutation"' ignoreCase="false" id="saluationKey"/>
+ <assertEquals actual="data" expected='mister' ignoreCase="false" id="salutationDataMr"/>
+ <increment var="salutationCount" value="1"/>
+ </else>
+ </if>
+ <src interface="UserDataNotification" var="src" obj="notification"/>
+ <assertSame actual="src" expected="node" id="srcIsNode"/>
+ <dst var="dst" obj="notification"/>
+ <assertSame actual="dst" expected="newNode" id="dstIsNewNode"/>
+</for-each>
+<assertEquals actual="greetingCount" expected="1" ignoreCase="false" id="greetingCountIs1"/>
+<assertEquals actual="salutationCount" expected="1" ignoreCase="false" id="salutationCountIs1"/>
+</test>
diff --git a/test/testcases/tests/level3/core/userdatahandler03.xml b/test/testcases/tests/level3/core/userdatahandler03.xml
new file mode 100644
index 0000000..865a856
--- /dev/null
+++ b/test/testcases/tests/level3/core/userdatahandler03.xml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="userdatahandler03">
+<metadata>
+<title>userdatahandler03</title>
+<creator>Curt Arnold</creator>
+<description>
+Call setUserData on a node providing a UserDataHandler and import the node.
+</description>
+<date qualifier="created">2004-01-16</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-handleUserDataEvent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="pList" type="NodeList"/>
+<var name="userDataMonitor" type="UserDataMonitor"/>
+<var name="oldUserData" type="DOMUserData"/>
+<var name="elementNS" type="DOMString"/>
+<var name="newNode" type="Node"/>
+<var name="notifications" type="List"/>
+<var name="notification" type="UserDataNotification"/>
+<var name="operation" type="short"/>
+<var name="key" type="DOMString"/>
+<var name="data" type="DOMString"/>
+<var name="src" type="Node"/>
+<var name="dst" type="Node"/>
+<var name="greetingCount" type="int" value="0"/>
+<var name="salutationCount" type="int" value="0"/>
+<var name="hello" type="DOMString" value='"Hello"'/>
+<var name="mister" type="DOMString" value='"Mr."'/>
+<var name="newDoc" type="Document"/>
+<var name="rootName" type="DOMString"/>
+<var name="rootNS" type="DOMString"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<implementation var="domImpl" obj="doc"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootName" obj="docElem"/>
+<createDocument var="newDoc" obj="domImpl" qualifiedName="rootName" namespaceURI="rootNS" doctype="docType"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="node" obj="pList" index="0" interface="NodeList"/>
+<setUserData var="oldUserData" obj="node" key='"greeting"' data='hello' handler="userDataMonitor"/>
+<setUserData var="oldUserData" obj="node" key='"salutation"' data='mister' handler="userDataMonitor"/>
+<namespaceURI var="elementNS" obj="node" interface="Node"/>
+<importNode var="newNode" obj="doc" importedNode="node" deep="true"/>
+<allNotifications var="notifications" obj="userDataMonitor"/>
+<assertSize size="2" collection="notifications" id="twoNotifications"/>
+<for-each member="notification" collection="notifications">
+ <operation var="operation" obj="notification"/>
+ <assertEquals actual="operation" expected="2" ignoreCase="false" id="operationIsImport"/>
+ <key var="key" obj="notification"/>
+ <data var="data" obj="notification" interface="UserDataNotification"/>
+ <if>
+ <equals actual="key" expected='"greeting"' ignoreCase="false"/>
+ <assertEquals actual="data" expected='hello' ignoreCase="false" id="greetingDataHello"/>
+ <increment var="greetingCount" value="1"/>
+ <else>
+ <assertEquals actual="key" expected='"salutation"' ignoreCase="false" id="saluationKey"/>
+ <assertEquals actual="data" expected='mister' ignoreCase="false" id="salutationDataMr"/>
+ <increment var="salutationCount" value="1"/>
+ </else>
+ </if>
+ <src interface="UserDataNotification" var="src" obj="notification"/>
+ <assertSame actual="src" expected="node" id="srcIsNode"/>
+ <dst var="dst" obj="notification"/>
+ <assertSame actual="dst" expected="newNode" id="dstIsNewNode"/>
+</for-each>
+<assertEquals actual="greetingCount" expected="1" ignoreCase="false" id="greetingCountIs1"/>
+<assertEquals actual="salutationCount" expected="1" ignoreCase="false" id="salutationCountIs1"/>
+</test>
diff --git a/test/testcases/tests/level3/core/userdatahandler04.xml b/test/testcases/tests/level3/core/userdatahandler04.xml
new file mode 100644
index 0000000..9aaa424
--- /dev/null
+++ b/test/testcases/tests/level3/core/userdatahandler04.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="userdatahandler04">
+<metadata>
+<title>userdatahandler04</title>
+<creator>Curt Arnold</creator>
+<description>
+Call setUserData on a node providing a UserDataHandler and adopt the node.
+</description>
+<date qualifier="created">2004-01-16</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-handleUserDataEvent"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="pList" type="NodeList"/>
+<var name="userDataMonitor" type="UserDataMonitor"/>
+<var name="oldUserData" type="DOMUserData"/>
+<var name="elementNS" type="DOMString"/>
+<var name="newNode" type="Node"/>
+<var name="notifications" type="List"/>
+<var name="notification" type="UserDataNotification"/>
+<var name="operation" type="short"/>
+<var name="key" type="DOMString"/>
+<var name="data" type="DOMString"/>
+<var name="src" type="Node"/>
+<var name="dst" type="Node"/>
+<var name="greetingCount" type="int" value="0"/>
+<var name="salutationCount" type="int" value="0"/>
+<var name="hello" type="DOMString" value='"Hello"'/>
+<var name="mister" type="DOMString" value='"Mr."'/>
+<var name="newDoc" type="Document"/>
+<var name="rootName" type="DOMString"/>
+<var name="rootNS" type="DOMString"/>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<load var="doc" href="barfoo" willBeModified="true"/>
+<implementation var="domImpl" obj="doc"/>
+<documentElement var="docElem" obj="doc"/>
+<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
+<tagName var="rootName" obj="docElem"/>
+<createDocument var="newDoc" obj="domImpl" qualifiedName="rootName" namespaceURI="rootNS" doctype="docType"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="node" obj="pList" index="0" interface="NodeList"/>
+<setUserData var="oldUserData" obj="node" key='"greeting"' data='hello' handler="userDataMonitor"/>
+<setUserData var="oldUserData" obj="node" key='"salutation"' data='mister' handler="userDataMonitor"/>
+<namespaceURI var="elementNS" obj="node" interface="Node"/>
+<adoptNode var="newNode" obj="doc" source="node"/>
+<allNotifications var="notifications" obj="userDataMonitor"/>
+<assertSize size="2" collection="notifications" id="twoNotifications"/>
+<for-each member="notification" collection="notifications">
+ <operation var="operation" obj="notification"/>
+ <assertEquals actual="operation" expected="5" ignoreCase="false" id="operationIsImport"/>
+ <key var="key" obj="notification"/>
+ <data var="data" obj="notification" interface="UserDataNotification"/>
+ <if>
+ <equals actual="key" expected='"greeting"' ignoreCase="false"/>
+ <assertEquals actual="data" expected='hello' ignoreCase="false" id="greetingDataHello"/>
+ <increment var="greetingCount" value="1"/>
+ <else>
+ <assertEquals actual="key" expected='"salutation"' ignoreCase="false" id="saluationKey"/>
+ <assertEquals actual="data" expected='mister' ignoreCase="false" id="salutationDataMr"/>
+ <increment var="salutationCount" value="1"/>
+ </else>
+ </if>
+ <src interface="UserDataNotification" var="src" obj="notification"/>
+ <assertSame actual="src" expected="node" id="srcIsNode"/>
+ <dst var="dst" obj="notification"/>
+ <!-- spec says dst must be newly created -->
+ <assertNull actual="dst" id="dstIsNull"/>
+</for-each>
+<assertEquals actual="greetingCount" expected="1" ignoreCase="false" id="greetingCountIs1"/>
+<assertEquals actual="salutationCount" expected="1" ignoreCase="false" id="salutationCountIs1"/>
+</test>
diff --git a/test/testcases/tests/level3/core/wellformed01.xml b/test/testcases/tests/level3/core/wellformed01.xml
new file mode 100644
index 0000000..3d0fea6
--- /dev/null
+++ b/test/testcases/tests/level3/core/wellformed01.xml
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="wellformed01">
+<metadata>
+<title>wellformed01</title>
+<creator>Curt Arnold</creator>
+<description>
+Create a document with an XML 1.1 valid but XML 1.0 invalid element and
+normalize document with well-formed set to true.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-well-formed"/>
+</metadata>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullString" type="DOMString" isNull="true"/>
+<var name="nullDoctype" type="DocumentType" isNull="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="retval" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="locator" type="DOMLocator"/>
+<var name="relatedNode" type="Node"/>
+<implementation var="domImpl"/>
+<createDocument var="doc" obj="domImpl"
+ namespaceURI="nullString"
+ qualifiedName="nullString"
+ doctype="nullDoctype"/>
+<assertDOMException id="xml10InvalidName">
+ <INVALID_CHARACTER_ERR>
+ <createElementNS var="elem" obj="doc"
+ namespaceURI='"http://www.example.org/domts/wellformed01"'
+ qualifiedName='"LegalName&#2190;"'/>
+ </INVALID_CHARACTER_ERR>
+</assertDOMException>
+<try>
+ <xmlVersion obj="doc" value='"1.1"' interface="Document"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<createElementNS var="elem" obj="doc"
+ namespaceURI='"http://www.example.org/domts/wellformed01"'
+ qualifiedName='"LegalName&#2190;"'/>
+<appendChild var="retval" obj="doc" newChild="elem"/>
+<xmlVersion obj="doc" value='"1.0"' interface="Document"/>
+<domConfig var="domConfig" obj="doc" interface="Document"/>
+<setParameter obj="domConfig" name='"well-formed"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <assertEquals actual="severity" expected="2" ignoreCase="false" id="severity"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <assertEquals actual="type" expected='"wf-invalid-character-in-node-name"'
+ ignoreCase="false" id="type"/>
+ <location var="locator" obj="error" interface="DOMError"/>
+ <relatedNode var="relatedNode" obj="locator" interface="DOMLocator"/>
+ <assertSame actual="relatedNode" expected="elem" id="relatedNode"/>
+</for-each>
+<assertSize size="1" collection="errors" id="oneError"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/wellformed02.xml b/test/testcases/tests/level3/core/wellformed02.xml
new file mode 100644
index 0000000..6ab3a44
--- /dev/null
+++ b/test/testcases/tests/level3/core/wellformed02.xml
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="wellformed02">
+<metadata>
+<title>wellformed02</title>
+<creator>Curt Arnold</creator>
+<description>
+Create a document with an XML 1.1 valid but XML 1.0 invalid element and
+normalize document with well-formed set to false.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-well-formed"/>
+</metadata>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullString" type="DOMString" isNull="true"/>
+<var name="nullDoctype" type="DocumentType" isNull="true"/>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="retval" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImpl"/>
+<createDocument var="doc" obj="domImpl"
+ namespaceURI="nullString"
+ qualifiedName="nullString"
+ doctype="nullDoctype"/>
+<assertDOMException id="xml10InvalidName">
+ <INVALID_CHARACTER_ERR>
+ <createElementNS var="elem" obj="doc"
+ namespaceURI='"http://www.example.org/domts/wellformed02"'
+ qualifiedName='"LegalName&#2190;"'/>
+ </INVALID_CHARACTER_ERR>
+</assertDOMException>
+<try>
+ <xmlVersion obj="doc" value='"1.1"' interface="Document"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<createElementNS var="elem" obj="doc"
+ namespaceURI='"http://www.example.org/domts/wellformed02"'
+ qualifiedName='"LegalName&#2190;"'/>
+<appendChild var="retval" obj="doc" newChild="elem"/>
+<xmlVersion obj="doc" value='"1.0"' interface="Document"/>
+<domConfig var="domConfig" obj="doc" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"well-formed"' value="false"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"well-formed"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<assertSize size="0" collection="errors" id="noError"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/wellformed03.xml b/test/testcases/tests/level3/core/wellformed03.xml
new file mode 100644
index 0000000..2c9f10d
--- /dev/null
+++ b/test/testcases/tests/level3/core/wellformed03.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="wellformed03">
+<metadata>
+<title>wellformed03</title>
+<creator>Curt Arnold</creator>
+<description>
+Create a document with an XML 1.1 valid but XML 1.0 invalid attribute and
+normalize document with well-formed set to true.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-well-formed"/>
+</metadata>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullDoctype" type="DocumentType" isNull="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="retval" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="locator" type="DOMLocator"/>
+<var name="relatedNode" type="Node"/>
+<implementation var="domImpl"/>
+<createDocument var="doc" obj="domImpl"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ qualifiedName='"html"'
+ doctype="nullDoctype"/>
+<documentElement var="docElem" obj="doc"/>
+<assertDOMException id="xml10InvalidName">
+ <INVALID_CHARACTER_ERR>
+ <createAttribute var="attr" obj="doc"
+ name='"LegalName&#2190;"'/>
+ </INVALID_CHARACTER_ERR>
+</assertDOMException>
+<try>
+ <xmlVersion obj="doc" value='"1.1"' interface="Document"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<setAttribute obj="docElem" name='"LegalName&#2190;"' value='"foo"'/>
+<getAttributeNode var="attr" obj="docElem" name='"LegalName&#2190;"'/>
+<xmlVersion obj="doc" value='"1.0"' interface="Document"/>
+<domConfig var="domConfig" obj="doc" interface="Document"/>
+<setParameter obj="domConfig" name='"well-formed"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <assertEquals actual="severity" expected="2" ignoreCase="false" id="severity"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <assertEquals actual="type" expected='"wf-invalid-character-in-node-name"'
+ ignoreCase="false" id="type"/>
+ <location var="locator" obj="error" interface="DOMError"/>
+ <relatedNode var="relatedNode" obj="locator" interface="DOMLocator"/>
+ <assertSame actual="relatedNode" expected="attr" id="relatedNode"/>
+</for-each>
+<assertSize size="1" collection="errors" id="oneError"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/core/wellformed04.xml b/test/testcases/tests/level3/core/wellformed04.xml
new file mode 100644
index 0000000..f39f53c
--- /dev/null
+++ b/test/testcases/tests/level3/core/wellformed04.xml
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="wellformed04">
+<metadata>
+<title>wellformed04</title>
+<creator>Curt Arnold</creator>
+<description>
+Create a document with an XML 1.1 valid but XML 1.0 invalid attribute and
+normalize document with well-formed set to false.
+</description>
+<date qualifier="created">2004-02-24</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Document3-normalizeDocument"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-well-formed"/>
+</metadata>
+<var name="domImpl" type="DOMImplementation"/>
+<var name="nullDoctype" type="DocumentType" isNull="true"/>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="attr" type="Attr"/>
+<var name="retval" type="Node"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="canSet" type="boolean"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<implementation var="domImpl"/>
+<createDocument var="doc" obj="domImpl"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ qualifiedName='"html"'
+ doctype="nullDoctype"/>
+<documentElement var="docElem" obj="doc"/>
+<assertDOMException id="xml10InvalidName">
+ <INVALID_CHARACTER_ERR>
+ <createAttributeNS var="attr" obj="doc"
+ namespaceURI="nullNS"
+ qualifiedName='"LegalName&#2190;"'/>
+ </INVALID_CHARACTER_ERR>
+</assertDOMException>
+<try>
+ <xmlVersion obj="doc" value='"1.1"' interface="Document"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<setAttributeNS obj="docElem" namespaceURI="nullNS" qualifiedName='"LegalName&#2190;"' value='"foo"'/>
+<xmlVersion obj="doc" value='"1.0"' interface="Document"/>
+<domConfig var="domConfig" obj="doc" interface="Document"/>
+<canSetParameter var="canSet" obj="domConfig" name='"well-formed"' value="false"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"well-formed"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<normalizeDocument obj="doc"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <assertNull actual="error" id="noErrorsExpected"/>
+</for-each>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/events/.cvsignore b/test/testcases/tests/level3/events/.cvsignore
new file mode 100644
index 0000000..65d27fe
--- /dev/null
+++ b/test/testcases/tests/level3/events/.cvsignore
@@ -0,0 +1,3 @@
+dom3.dtd
+test-to-html.xsl
+dom3.xsd
diff --git a/test/testcases/tests/level3/events/CVS/Entries b/test/testcases/tests/level3/events/CVS/Entries
new file mode 100644
index 0000000..04b1f3f
--- /dev/null
+++ b/test/testcases/tests/level3/events/CVS/Entries
@@ -0,0 +1,5 @@
+D/files////
+/.cvsignore/1.2/Fri Apr 3 02:47:57 2009//
+/alltests.xml/1.3/Fri Apr 3 02:47:57 2009//
+/hasFeature01.xml/1.1/Fri Apr 3 02:47:57 2009//
+/metadata.xml/1.1/Fri Apr 3 02:47:56 2009//
diff --git a/test/testcases/tests/level3/events/CVS/Repository b/test/testcases/tests/level3/events/CVS/Repository
new file mode 100644
index 0000000..4fcba37
--- /dev/null
+++ b/test/testcases/tests/level3/events/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3/events
diff --git a/test/testcases/tests/level3/events/CVS/Root b/test/testcases/tests/level3/events/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/events/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/events/CVS/Template b/test/testcases/tests/level3/events/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/events/CVS/Template
diff --git a/test/testcases/tests/level3/events/alltests.xml b/test/testcases/tests/level3/events/alltests.xml
new file mode 100644
index 0000000..f73157d
--- /dev/null
+++ b/test/testcases/tests/level3/events/alltests.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+Copyright (c) 2003-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 suite SYSTEM "dom3.dtd">
+<suite xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="alltests">
+<metadata>
+<title>DOM Level 3 Events Test Suite</title>
+<creator>DOM Test Suite Project</creator>
+</metadata>
+ <suite.member href="hasFeature01.xml"/>
+</suite>
diff --git a/test/testcases/tests/level3/events/files/CVS/Entries b/test/testcases/tests/level3/events/files/CVS/Entries
new file mode 100644
index 0000000..d229dd6
--- /dev/null
+++ b/test/testcases/tests/level3/events/files/CVS/Entries
@@ -0,0 +1,3 @@
+/staff.dtd/1.1/Fri Apr 3 02:47:56 2009//
+/staff.xml/1.1/Fri Apr 3 02:47:57 2009//
+D
diff --git a/test/testcases/tests/level3/events/files/CVS/Repository b/test/testcases/tests/level3/events/files/CVS/Repository
new file mode 100644
index 0000000..c01a2e5
--- /dev/null
+++ b/test/testcases/tests/level3/events/files/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3/events/files
diff --git a/test/testcases/tests/level3/events/files/CVS/Root b/test/testcases/tests/level3/events/files/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/events/files/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/events/files/CVS/Template b/test/testcases/tests/level3/events/files/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/events/files/CVS/Template
diff --git a/test/testcases/tests/level3/events/files/staff.dtd b/test/testcases/tests/level3/events/files/staff.dtd
new file mode 100644
index 0000000..3f7dc86
--- /dev/null
+++ b/test/testcases/tests/level3/events/files/staff.dtd
@@ -0,0 +1,17 @@
+<!ELEMENT employeeId (#PCDATA)>
+<!ELEMENT name (#PCDATA)>
+<!ELEMENT position (#PCDATA)>
+<!ELEMENT salary (#PCDATA)>
+<!ELEMENT address (#PCDATA)>
+<!ELEMENT entElement ( #PCDATA ) >
+<!ELEMENT gender ( #PCDATA | entElement )* >
+<!ELEMENT employee (employeeId, name, position, salary, gender, address) >
+<!ELEMENT staff (employee)+>
+<!ATTLIST entElement
+ attr1 CDATA "Attr">
+<!ATTLIST address
+ domestic CDATA #IMPLIED
+ street CDATA "Yes">
+<!ATTLIST entElement
+ domestic CDATA "MALE" >
+
diff --git a/test/testcases/tests/level3/events/files/staff.xml b/test/testcases/tests/level3/events/files/staff.xml
new file mode 100644
index 0000000..f89c510
--- /dev/null
+++ b/test/testcases/tests/level3/events/files/staff.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE staff SYSTEM "staff.dtd" [
+ <!ENTITY ent1 "es">
+ <!ENTITY ent2 "1900 Dallas Road">
+ <!ENTITY ent3 "Texas">
+ <!ENTITY ent4 "<entElement domestic='Yes'>Element data</entElement><?PItarget PIdata?>">
+ <!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+ <!ENTITY ent1 "This entity should be discarded">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+]>
+<!-- This is comment number 1.-->
+<staff>
+ <employee>
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0002</employeeId>
+ <name>Martha Raynolds<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></name>
+ <position>Secretary</position>
+ <salary>35,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Yes">&ent2; Dallas, &ent3;
+ 98554</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0003</employeeId>
+ <name>Roger
+ Jones</name>
+ <position>Department Manager</position>
+ <salary>100,000</salary>
+ <gender>&ent4;</gender>
+ <address domestic="Yes" street="No">PO Box 27 Irving, texas 98553</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0004</employeeId>
+ <name>Jeny Oconnor</name>
+ <position>Personnel Director</position>
+ <salary>95,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Y&ent1;">27 South Road. Dallas, Texas 98556</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0005</employeeId>
+ <name>Robert Myers</name>
+ <position>Computer Specialist</position>
+ <salary>90,000</salary>
+ <gender>male</gender>
+ <address street="Yes">1821 Nordic. Road, Irving Texas 98558</address>
+ </employee>
+ </staff>
diff --git a/test/testcases/tests/level3/events/hasFeature01.xml b/test/testcases/tests/level3/events/hasFeature01.xml
new file mode 100644
index 0000000..da92b42
--- /dev/null
+++ b/test/testcases/tests/level3/events/hasFeature01.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2001-2003 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="hasFeature01">
+<metadata>
+<title>hasFeature01</title>
+<creator>Curt Arnold</creator>
+<description>
+DOMImplementation.hasFeature("eVenTs", "3.0") should return true.
+</description>
+<date qualifier="created">2003-12-03</date>
+</metadata>
+<var name="impl" type="DOMImplementation"/>
+<var name="state" type="boolean"/>
+<implementation var="impl"/>
+<hasFeature var="state" obj="impl" feature='"eVenTs"' version='"3.0"'/>
+<assertTrue id="hasEvents30" actual="state"/>
+</test>
diff --git a/test/testcases/tests/level3/events/metadata.xml b/test/testcases/tests/level3/events/metadata.xml
new file mode 100644
index 0000000..d3d2324
--- /dev/null
+++ b/test/testcases/tests/level3/events/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+Copyright (c) 2003 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 metadata SYSTEM "dom3.dtd">
+
+<!-- This file contains additional metadata about DOM L3 Events tests.
+ Allowing additional documentation without modifying the tests themselves. -->
+<metadata xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3">
+</metadata>
diff --git a/test/testcases/tests/level3/ls/.cvsignore b/test/testcases/tests/level3/ls/.cvsignore
new file mode 100644
index 0000000..65d27fe
--- /dev/null
+++ b/test/testcases/tests/level3/ls/.cvsignore
@@ -0,0 +1,3 @@
+dom3.dtd
+test-to-html.xsl
+dom3.xsd
diff --git a/test/testcases/tests/level3/ls/CVS/Entries b/test/testcases/tests/level3/ls/CVS/Entries
new file mode 100644
index 0000000..514635b
--- /dev/null
+++ b/test/testcases/tests/level3/ls/CVS/Entries
@@ -0,0 +1,180 @@
+D/files////
+/.cvsignore/1.1/Fri Apr 3 02:47:57 2009//
+/CertifiedText1.xml/1.3/Fri Apr 3 02:47:58 2009//
+/CharacterStream1.xml/1.4/Fri Apr 3 02:47:57 2009//
+/DOMBuilderFilterTest0.xml/1.10/Fri Apr 3 02:47:58 2009//
+/DOMBuilderFilterTest1.xml/1.9/Fri Apr 3 02:47:57 2009//
+/DOMBuilderFilterTest2.xml/1.9/Fri Apr 3 02:47:57 2009//
+/DOMBuilderTest0.xml/1.9/Fri Apr 3 02:47:58 2009//
+/DOMBuilderTest1.xml/1.10/Fri Apr 3 02:47:57 2009//
+/DOMBuilderTest2.xml/1.10/Fri Apr 3 02:47:58 2009//
+/DOMBuilderTest3.xml/1.11/Fri Apr 3 02:47:58 2009//
+/DOMBuilderTest4.xml/1.10/Fri Apr 3 02:47:57 2009//
+/DOMBuilderTest5.xml/1.12/Fri Apr 3 02:47:57 2009//
+/DOMBuilderTest6.xml/1.4/Fri Apr 3 02:47:57 2009//
+/DOMBuilderTest8.xml/1.4/Fri Apr 3 02:47:58 2009//
+/DOMEntityResolverTest0.xml/1.14/Fri Apr 3 02:47:57 2009//
+/DOMEntityResolverTest1.xml/1.13/Fri Apr 3 02:47:57 2009//
+/DOMEntityResolverTest2.xml/1.7/Fri Apr 3 02:47:58 2009//
+/DOMImplementationLSTest0.xml/1.6/Fri Apr 3 02:47:57 2009//
+/DOMImplementationLSTest1.xml/1.7/Fri Apr 3 02:47:57 2009//
+/DOMImplementationLSTest2.xml/1.4/Fri Apr 3 02:47:58 2009//
+/DOMImplementationLSTest3.xml/1.5/Fri Apr 3 02:47:57 2009//
+/DOMImplementationLSTest4.xml/1.4/Fri Apr 3 02:47:58 2009//
+/DOMImplementationLSTest5.xml/1.4/Fri Apr 3 02:47:57 2009//
+/DOMInputSourceTest0.xml/1.8/Fri Apr 3 02:47:58 2009//
+/DOMInputSourceTest1.xml/1.8/Fri Apr 3 02:47:58 2009//
+/DOMInputSourceTest2.xml/1.7/Fri Apr 3 02:47:57 2009//
+/DOMInputSourceTest3.xml/1.9/Fri Apr 3 02:47:57 2009//
+/DOMInputSourceTest4.xml/1.7/Fri Apr 3 02:47:58 2009//
+/DOMInputSourceTest5.xml/1.11/Fri Apr 3 02:47:57 2009//
+/DOMInputSourceTest6.xml/1.4/Fri Apr 3 02:47:58 2009//
+/DOMWriterFilterTest0.xml/1.9/Fri Apr 3 02:47:57 2009//
+/DOMWriterFilterTest1.xml/1.10/Fri Apr 3 02:47:57 2009//
+/DOMWriterFilterTest2.xml/1.12/Fri Apr 3 02:47:57 2009//
+/DOMWriterFilterTest3.xml/1.9/Fri Apr 3 02:47:57 2009//
+/DOMWriterTest0.xml/1.8/Fri Apr 3 02:47:57 2009//
+/DOMWriterTest1.xml/1.8/Fri Apr 3 02:47:58 2009//
+/DOMWriterTest2.xml/1.8/Fri Apr 3 02:47:58 2009//
+/DOMWriterTest3.xml/1.4/Fri Apr 3 02:47:58 2009//
+/DOMWriterTest4.xml/1.4/Fri Apr 3 02:47:57 2009//
+/DOMWriterTest5.xml/1.3/Fri Apr 3 02:47:57 2009//
+/DOMWriterTest6.xml/1.3/Fri Apr 3 02:47:58 2009//
+/GetFeature1.xml/1.3/Fri Apr 3 02:47:58 2009//
+/GetFeature2.xml/1.3/Fri Apr 3 02:47:57 2009//
+/HasFeature01.xml/1.3/Fri Apr 3 02:47:57 2009//
+/HasFeature02.xml/1.3/Fri Apr 3 02:47:57 2009//
+/HasFeature03.xml/1.3/Fri Apr 3 02:47:57 2009//
+/HasFeature04.xml/1.4/Fri Apr 3 02:47:57 2009//
+/HasFeature05.xml/1.5/Fri Apr 3 02:47:57 2009//
+/LSParserConfig1.xml/1.5/Fri Apr 3 02:47:57 2009//
+/LSParserConfig2.xml/1.5/Fri Apr 3 02:47:57 2009//
+/LSParserConfig3.xml/1.5/Fri Apr 3 02:47:57 2009//
+/LSParserConfig4.xml/1.5/Fri Apr 3 02:47:57 2009//
+/LSParserConfig5.xml/1.5/Fri Apr 3 02:47:58 2009//
+/LSParserConfig6.xml/1.6/Fri Apr 3 02:47:57 2009//
+/LSParserConfig7.xml/1.6/Fri Apr 3 02:47:57 2009//
+/LSParserConfig8.xml/1.7/Fri Apr 3 02:47:58 2009//
+/LSParserConfig9.xml/1.5/Fri Apr 3 02:47:58 2009//
+/LSSerializerConfig1.xml/1.6/Fri Apr 3 02:47:57 2009//
+/LSSerializerConfig10.xml/1.6/Fri Apr 3 02:47:58 2009//
+/LSSerializerConfig2.xml/1.7/Fri Apr 3 02:47:58 2009//
+/LSSerializerConfig3.xml/1.5/Fri Apr 3 02:47:57 2009//
+/LSSerializerConfig4.xml/1.5/Fri Apr 3 02:47:57 2009//
+/LSSerializerConfig5.xml/1.5/Fri Apr 3 02:47:57 2009//
+/LSSerializerConfig6.xml/1.6/Fri Apr 3 02:47:57 2009//
+/LSSerializerConfig7.xml/1.5/Fri Apr 3 02:47:57 2009//
+/LSSerializerConfig8.xml/1.7/Fri Apr 3 02:47:58 2009//
+/LSSerializerConfig9.xml/1.6/Fri Apr 3 02:47:58 2009//
+/SystemId1.xml/1.3/Fri Apr 3 02:47:57 2009//
+/SystemId2.xml/1.3/Fri Apr 3 02:47:57 2009//
+/alltests.xml/1.22/Fri Apr 3 02:47:57 2009//
+/canonicalform01.xml/1.4/Fri Apr 3 02:47:57 2009//
+/canonicalform03.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canonicalform04.xml/1.4/Fri Apr 3 02:47:57 2009//
+/canonicalform05.xml/1.4/Fri Apr 3 02:47:57 2009//
+/canonicalform06.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canonicalform08.xml/1.4/Fri Apr 3 02:47:57 2009//
+/canonicalform09.xml/1.4/Fri Apr 3 02:47:57 2009//
+/canonicalform10.xml/1.4/Fri Apr 3 02:47:57 2009//
+/canonicalform11.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canonicalform12.xml/1.4/Fri Apr 3 02:47:57 2009//
+/canonicalform13.xml/1.4/Fri Apr 3 02:47:58 2009//
+/cdatasections01.xml/1.4/Fri Apr 3 02:47:57 2009//
+/cdatasections02.xml/1.4/Fri Apr 3 02:47:58 2009//
+/cdatasections03.xml/1.4/Fri Apr 3 02:47:58 2009//
+/cdatasections04.xml/1.5/Fri Apr 3 02:47:58 2009//
+/checkcharacternormalization01.xml/1.4/Fri Apr 3 02:47:57 2009//
+/checkcharacternormalization02.xml/1.5/Fri Apr 3 02:47:58 2009//
+/checkcharacternormalization03.xml/1.4/Fri Apr 3 02:47:58 2009//
+/checkcharacternormalization04.xml/1.4/Fri Apr 3 02:47:58 2009//
+/comments01.xml/1.5/Fri Apr 3 02:47:57 2009//
+/comments02.xml/1.5/Fri Apr 3 02:47:57 2009//
+/comments03.xml/1.4/Fri Apr 3 02:47:57 2009//
+/comments04.xml/1.4/Fri Apr 3 02:47:57 2009//
+/datatypenormalization01.xml/1.4/Fri Apr 3 02:47:57 2009//
+/datatypenormalization02.xml/1.4/Fri Apr 3 02:47:57 2009//
+/datatypenormalization03.xml/1.4/Fri Apr 3 02:47:58 2009//
+/datatypenormalization04.xml/1.4/Fri Apr 3 02:47:58 2009//
+/datatypenormalization05.xml/1.4/Fri Apr 3 02:47:58 2009//
+/datatypenormalization06.xml/1.4/Fri Apr 3 02:47:57 2009//
+/datatypenormalization07.xml/1.4/Fri Apr 3 02:47:58 2009//
+/datatypenormalization08.xml/1.4/Fri Apr 3 02:47:58 2009//
+/datatypenormalization09.xml/1.4/Fri Apr 3 02:47:58 2009//
+/datatypenormalization10.xml/1.4/Fri Apr 3 02:47:57 2009//
+/datatypenormalization11.xml/1.4/Fri Apr 3 02:47:57 2009//
+/datatypenormalization12.xml/1.4/Fri Apr 3 02:47:57 2009//
+/datatypenormalization13.xml/1.5/Fri Apr 3 02:47:58 2009//
+/datatypenormalization14.xml/1.5/Fri Apr 3 02:47:58 2009//
+/datatypenormalization15.xml/1.5/Fri Apr 3 02:47:57 2009//
+/datatypenormalization16.xml/1.5/Fri Apr 3 02:47:57 2009//
+/datatypenormalization17.xml/1.4/Fri Apr 3 02:47:57 2009//
+/disallowdoctype01.xml/1.5/Fri Apr 3 02:47:57 2009//
+/discarddefaultcontent01.xml/1.3/Fri Apr 3 02:47:58 2009//
+/discarddefaultcontent02.xml/1.3/Fri Apr 3 02:47:57 2009//
+/dom3tests.ent/1.15/Fri Apr 3 02:47:57 2009//
+/elementcontentwhitespace01.xml/1.4/Fri Apr 3 02:47:58 2009//
+/elementcontentwhitespace02.xml/1.5/Fri Apr 3 02:47:58 2009//
+/elementcontentwhitespace03.xml/1.3/Fri Apr 3 02:47:58 2009//
+/encoding01.xml/1.2/Fri Apr 3 02:47:57 2009//
+/entities01.xml/1.4/Fri Apr 3 02:47:57 2009//
+/entities02.xml/1.4/Fri Apr 3 02:47:57 2009//
+/entities03.xml/1.4/Fri Apr 3 02:47:57 2009//
+/entities04.xml/1.4/Fri Apr 3 02:47:58 2009//
+/entities05.xml/1.4/Fri Apr 3 02:47:57 2009//
+/entities06.xml/1.4/Fri Apr 3 02:47:57 2009//
+/entities07.xml/1.5/Fri Apr 3 02:47:57 2009//
+/entities08.xml/1.5/Fri Apr 3 02:47:57 2009//
+/entities09.xml/1.4/Fri Apr 3 02:47:57 2009//
+/infoset01.xml/1.3/Fri Apr 3 02:47:57 2009//
+/infoset02.xml/1.3/Fri Apr 3 02:47:58 2009//
+/infoset03.xml/1.3/Fri Apr 3 02:47:57 2009//
+/infoset04.xml/1.3/Fri Apr 3 02:47:58 2009//
+/infoset05.xml/1.3/Fri Apr 3 02:47:57 2009//
+/infoset06.xml/1.3/Fri Apr 3 02:47:57 2009//
+/infoset07.xml/1.3/Fri Apr 3 02:47:57 2009//
+/infoset08.xml/1.3/Fri Apr 3 02:47:58 2009//
+/metadata.xml/1.1/Fri Apr 3 02:47:57 2009//
+/namespacedeclarations01.xml/1.4/Fri Apr 3 02:47:58 2009//
+/namespacedeclarations02.xml/1.4/Fri Apr 3 02:47:57 2009//
+/namespaces01.xml/1.3/Fri Apr 3 02:47:57 2009//
+/namespaces02.xml/1.3/Fri Apr 3 02:47:57 2009//
+/newline01.xml/1.3/Fri Apr 3 02:47:57 2009//
+/newline02.xml/1.3/Fri Apr 3 02:47:58 2009//
+/newline03.xml/1.3/Fri Apr 3 02:47:58 2009//
+/noinputspecified01.xml/1.4/Fri Apr 3 02:47:57 2009//
+/nooutputspecified01.xml/1.4/Fri Apr 3 02:47:57 2009//
+/normalizecharacters01.xml/1.3/Fri Apr 3 02:47:58 2009//
+/normalizecharacters02.xml/1.3/Fri Apr 3 02:47:57 2009//
+/normalizecharacters03.xml/1.3/Fri Apr 3 02:47:58 2009//
+/normalizecharacters04.xml/1.4/Fri Apr 3 02:47:58 2009//
+/schemalocation01.xml/1.6/Fri Apr 3 02:47:58 2009//
+/schemalocation02.xml/1.5/Fri Apr 3 02:47:58 2009//
+/schemalocation03.xml/1.4/Fri Apr 3 02:47:58 2009//
+/schemalocation04.xml/1.4/Fri Apr 3 02:47:57 2009//
+/schematype01.xml/1.5/Fri Apr 3 02:47:58 2009//
+/schematype02.xml/1.5/Fri Apr 3 02:47:57 2009//
+/schematype03.xml/1.5/Fri Apr 3 02:47:57 2009//
+/schematype04.xml/1.4/Fri Apr 3 02:47:57 2009//
+/splitcdatasections01.xml/1.4/Fri Apr 3 02:47:57 2009//
+/splitcdatasections02.xml/1.4/Fri Apr 3 02:47:57 2009//
+/unsupportedencoding01.xml/1.4/Fri Apr 3 02:47:58 2009//
+/validate01.xml/1.4/Fri Apr 3 02:47:57 2009//
+/validate02.xml/1.4/Fri Apr 3 02:47:57 2009//
+/validate03.xml/1.5/Fri Apr 3 02:47:58 2009//
+/validate04.xml/1.4/Fri Apr 3 02:47:57 2009//
+/validate05.xml/1.4/Fri Apr 3 02:47:57 2009//
+/validate06.xml/1.4/Fri Apr 3 02:47:57 2009//
+/validate07.xml/1.4/Fri Apr 3 02:47:58 2009//
+/validate08.xml/1.4/Fri Apr 3 02:47:58 2009//
+/validateifschema01.xml/1.4/Fri Apr 3 02:47:58 2009//
+/validateifschema02.xml/1.4/Fri Apr 3 02:47:57 2009//
+/validateifschema03.xml/1.5/Fri Apr 3 02:47:57 2009//
+/validateifschema04.xml/1.4/Fri Apr 3 02:47:58 2009//
+/wellformed01.xml/1.4/Fri Apr 3 02:47:57 2009//
+/wellformed02.xml/1.4/Fri Apr 3 02:47:57 2009//
+/wellformed03.xml/1.5/Fri Apr 3 02:47:58 2009//
+/writeToURI1.xml/1.2/Fri Apr 3 02:47:57 2009//
+/writeToURI2.xml/1.2/Fri Apr 3 02:47:58 2009//
+/xmldeclaration01.xml/1.3/Fri Apr 3 02:47:57 2009//
+/xmldeclaration02.xml/1.3/Fri Apr 3 02:47:57 2009//
diff --git a/test/testcases/tests/level3/ls/CVS/Repository b/test/testcases/tests/level3/ls/CVS/Repository
new file mode 100644
index 0000000..59add56
--- /dev/null
+++ b/test/testcases/tests/level3/ls/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3/ls
diff --git a/test/testcases/tests/level3/ls/CVS/Root b/test/testcases/tests/level3/ls/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/ls/CVS/Template b/test/testcases/tests/level3/ls/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/ls/CVS/Template
diff --git a/test/testcases/tests/level3/ls/CertifiedText1.xml b/test/testcases/tests/level3/ls/CertifiedText1.xml
new file mode 100644
index 0000000..f1dd2a6
--- /dev/null
+++ b/test/testcases/tests/level3/ls/CertifiedText1.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="CertifiedText1">
+ <metadata>
+ <title>CertifiedText1</title>
+ <creator>Curt Arnold</creator>
+ <description>Changes certifiedText on LSInput.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSInput"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-certifiedText"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="input" type="LSInput"/>
+ <var name="certifiedText" type="boolean"/>
+
+ <implementation var="domImpl"/>
+ <createLSInput var="input" obj="domImpl"/>
+ <certifiedText var="certifiedText" obj="input"/>
+ <assertFalse actual="certifiedText" id="initiallyFalse"/>
+ <certifiedText obj="input" value="true"/>
+ <certifiedText var="certifiedText" obj="input"/>
+ <assertTrue actual="certifiedText" id="setTrue"/>
+
+ <certifiedText obj="input" value="false"/>
+ <certifiedText var="certifiedText" obj="input"/>
+ <assertFalse actual="certifiedText" id="setFalse"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/CharacterStream1.xml b/test/testcases/tests/level3/ls/CharacterStream1.xml
new file mode 100644
index 0000000..f0c7043
--- /dev/null
+++ b/test/testcases/tests/level3/ls/CharacterStream1.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="CharacterStream1">
+ <metadata>
+ <title>CharacterStream1</title>
+ <creator>Curt Arnold</creator>
+ <description>Writes a document to a character stream and rereads the document.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSInput"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-characterStream"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSOutput-characterStream"/>
+ </metadata>
+ <implementationAttribute name="validating" value="false"/>
+
+ <var name="testDoc" type="Document"/>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="output" type="LSOutput"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="writer" type="LSWriter"/>
+ <var name="checkWriter" type="LSWriter"/>
+ <var name="reader" type="LSReader"/>
+ <var name="checkReader" type="LSReader"/>
+ <var name="status" type="boolean"/>
+ <var name="input" type="LSInput"/>
+ <var name="parser" type="LSParser"/>
+ <var name="checkDoc" type="Document"/>
+ <var name="docElem" type="Element"/>
+ <var name="docElemName" type="DOMString"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+
+ <load var="testDoc" href="test0" willBeModified="false"/>
+ <implementation var="domImpl"/>
+
+ <!-- create an LSOutput and connect it to an stock LSWriter -->
+ <createLSOutput var="output" obj="domImpl"/>
+ <!-- check that it was initially null -->
+ <characterStream var="checkWriter" obj="output" interface="LSOutput"/>
+ <assertNull actual="checkWriter" id="writerInitiallyNull"/>
+ <characterStream obj="output" value="writer" interface="LSOutput"/>
+ <characterStream var="checkWriter" obj="output" interface="LSOutput"/>
+ <assertNotNull actual="checkWriter" id="writerNotNull"/>
+
+ <!-- create a serializer and write a test document -->
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <write var="status" obj="serializer" destination="output" nodeArg="testDoc"/>
+ <assertTrue actual="status" id="writeStatus"/>
+
+ <!-- read the serialized document -->
+ <assign var="reader" value="writer"/>
+ <createLSInput var="input" obj="domImpl"/>
+ <characterStream var="checkReader" obj="input" interface="LSInput"/>
+ <assertNull actual="checkReader" id="readerInitiallyNull"/>
+ <characterStream obj="input" value="reader" interface="LSInput"/>
+ <characterStream var="checkReader" obj="input" interface="LSInput"/>
+ <assertNotNull actual="checkReader" id="readerNotNull"/>
+ <createLSParser var="parser" obj="domImpl" schemaType="NULL_SCHEMA_TYPE" mode="1"/>
+ <parse var="checkDoc" obj="parser" input="input"/>
+ <assertNotNull actual="checkDoc" id="checkNotNull"/>
+ <documentElement var="docElem" obj="checkDoc"/>
+ <nodeName var="docElemName" obj="docElem"/>
+ <assertEquals expected='"elt0"' actual="docElemName" id="checkDocElemName" ignoreCase="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMBuilderFilterTest0.xml b/test/testcases/tests/level3/ls/DOMBuilderFilterTest0.xml
new file mode 100644
index 0000000..37191ed
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMBuilderFilterTest0.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMBuilderFilterTest0">
+ <metadata>
+ <title>DOMBuilderFilterTest0</title>
+ &creator;
+ <description>Parses a document twice, once using a filter to reject all elt1 elements.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-filter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParserFilter-startElement"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParserFilter-whatToShow"/>
+ </metadata>
+
+
+ <var name="myfilter" type="LSParserFilter">
+ <var name="name" type="DOMString"/>
+ &filterVars;
+
+
+ <startElement>
+ <nodeName var="name" obj="elementArg"/>
+ <if>
+ <equals actual="name" expected='"elt1"' ignoreCase="false"/>
+ <return value="&FILTER_REJECT;"/>
+ <else>
+ <return value="&FILTER_ACCEPT;"/>
+ </else>
+ </if>
+ </startElement>
+
+ <acceptNode>
+ <return value="&FILTER_ACCEPT;"/>
+ </acceptNode>
+
+ <whatToShow>
+ <get>
+ <return value="&SHOW_ELEMENT;"/>
+ </get>
+ </whatToShow>
+
+ </var>
+
+ <var name="list" type="NodeList"/>
+ <var name="count" type="int"/>
+ <var name="resourceURI" type="DOMString"/>
+ &vars;
+ &init;
+
+ <getResourceURI var="resourceURI" href="TEST1"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <getElementsByTagName var="list" obj="document" tagname="&quot;elt1&quot;" interface="Document"/>
+ <length var="count" obj="list" interface="NodeList"/>
+ <assertEquals actual="count" expected="1" ignoreCase="false" id="filter_count_1"/>
+
+ &parser.setFilter_myfilter;
+
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <assertNotNull actual="document" id="secondParseDocumentNotNull"/>
+ <getElementsByTagName var="list" obj="document" tagname="&quot;elt1&quot;" interface="Document"/>
+ <length var="count" obj="list" interface="NodeList"/>
+ <assertEquals actual="count" expected="0" ignoreCase="false" id="filter_count_2"/>
+
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMBuilderFilterTest1.xml b/test/testcases/tests/level3/ls/DOMBuilderFilterTest1.xml
new file mode 100644
index 0000000..226efc0
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMBuilderFilterTest1.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMBuilderFilterTest1">
+ <metadata>
+ <title>DOMBuilderFilterTest1</title>
+ &creator;
+ <description>DOM Builder Filter test, test whether incorrect node types are never passed to the filter.</description>
+ &contributor; &date;
+ <subject resource="&spec;#LS-Interfaces-LSParserFilter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-filter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParserFilter-acceptNode"/>
+ </metadata>
+
+ <var name="resourceURI" type="DOMString"/>
+ <var name="myfilter" type="LSParserFilter">
+ &filterVars;
+
+ <startElement>
+ <return value="&FILTER_ACCEPT;"/>
+ </startElement>
+
+ <acceptNode>
+ <var name="type" type="int"/>
+ <nodeType obj="nodeArg" var="type"/>
+
+ <assertNotEquals actual="type" expected="2" id="attribute_node_test" ignoreCase="false"/>
+ <assertNotEquals actual="type" expected="6" id="entity_node_test" ignoreCase="false"/>
+ <assertNotEquals actual="type" expected="9" id="document_node_test" ignoreCase="false"/>
+ <assertNotEquals actual="type" expected="10" id="document_type_node_test" ignoreCase="false"/>
+ <assertNotEquals actual="type" expected="12" id="notation_node_test" ignoreCase="false"/>
+
+ <return value="&FILTER_ACCEPT;"/>
+ </acceptNode>
+
+ <whatToShow>
+ <get>
+ <return value="&SHOW_ALL;"/>
+ </get>
+ </whatToShow>
+
+ </var>
+
+ &vars;
+ &init;
+
+ &parser.setFilter_myfilter;
+
+ <getResourceURI var="resourceURI" href="TEST7"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <assertNotNull actual="document" id="documentNotNull"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMBuilderFilterTest2.xml b/test/testcases/tests/level3/ls/DOMBuilderFilterTest2.xml
new file mode 100644
index 0000000..1456009
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMBuilderFilterTest2.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMBuilderFilterTest2">
+ <metadata>
+ <title>DOMBuilderFilterTest2</title>
+ &creator;
+ <description>Checks that attributes are visible when elements are passed to LSParserFilter.startElement.</description>
+ &contributor; &date;
+ <subject resource="&spec;#LS-Interfaces-LSParserFilter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParserFilter-startElement"/>
+ </metadata>
+ <var name="resourceURI" type="DOMString"/>
+
+ <var name="myfilter" type="LSParserFilter">
+ &filterVars;
+ <var name="name" type="DOMString"/>
+ <var name="hasattribute" type="boolean"/>
+
+ <startElement>
+
+ <nodeName var="name" obj="elementArg"/>
+ <if>
+ <equals actual="name" expected='"elt1"' ignoreCase="false"/>
+ <hasAttribute var="hasattribute" obj="elementArg" name='"attr1"'/>
+ <assertTrue actual="hasattribute" id="default_content_check"/>
+ </if>
+
+ <return value="&FILTER_ACCEPT;"/>
+ </startElement>
+
+ <acceptNode>
+ <return value="&FILTER_ACCEPT;"/>
+ </acceptNode>
+
+ <whatToShow>
+ <get>
+ <return value="&SHOW_ALL;"/>
+ </get>
+ </whatToShow>
+
+ </var>
+
+ &vars;
+ &init;
+
+ &parser.setFilter_myfilter;
+
+ <getResourceURI var="resourceURI" href="TEST3"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMBuilderTest0.xml b/test/testcases/tests/level3/ls/DOMBuilderTest0.xml
new file mode 100644
index 0000000..dd65d25
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMBuilderTest0.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+<test xmlns="&level3;" name="DOMBuilderTest0">
+ <metadata>
+ <title>DOMBuilderTest0</title>
+ &creator;
+ <description>Parses a document, writes it to string, parses the string and checks that the number of elt1 elements is as expected.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parse"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-stringData"/>
+ </metadata>
+
+ <var name="elementList" type="NodeList"/>
+ <var name="stringDoc" type="DOMString"/>
+ <var name="resourceURI" type="DOMString"/>
+
+ &vars;
+
+ &init;
+
+ <getResourceURI var="resourceURI" href="TEST0" contentType="text/xml"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt1&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="2" id="count_elt1_1"/>
+
+ <writeToString var="stringDoc" obj="writer" nodeArg="document"/>
+ <stringData obj="inputSource" value="stringDoc"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt1&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="2" id="count_elt1_2"/>
+
+</test>
+
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMBuilderTest1.xml b/test/testcases/tests/level3/ls/DOMBuilderTest1.xml
new file mode 100644
index 0000000..e0f54b1
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMBuilderTest1.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM 'dom3.dtd' [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="DOMBuilderTest1">
+ <metadata>
+ <title>DOMBuilderTest1</title>
+ &creator;
+ <description>Uses LSParser.parseWithContext to replace a node in an existing document.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseWithContext"/>
+ </metadata>
+ <var name="elementList" type="NodeList"/>
+ <var name="stringDoc" type="DOMString"/>
+ <var name="firstElt2" type="Element"/>
+ <var name="returnNode" type="Node"/>
+ <var name="resourceURI" type="DOMString"/>
+ &vars;
+
+ &init;
+ <getResourceURI var="resourceURI" href="TEST0" contentType="text/xml"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt2&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="elt2Count_1"/>
+
+ <item interface="NodeList" obj="elementList" var="firstElt2" index="0"/>
+
+ <getResourceURI var="resourceURI" href="TEST2" contentType="text/xml"/>
+ <systemId obj="inputSource" value="resourceURI" interface="LSInput"/>
+ <try>
+ <parseWithContext obj="parser" input="inputSource"
+ contextArg="firstElt2" action="ACTION_REPLACE" var="returnNode"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+ </try>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt2&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="elt2Count_2"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt3&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="elt3Count"/>
+
+</test>
+
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMBuilderTest2.xml b/test/testcases/tests/level3/ls/DOMBuilderTest2.xml
new file mode 100644
index 0000000..6de856a
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMBuilderTest2.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+<test xmlns="&level3;" name="DOMBuilderTest2">
+ <metadata>
+ <title>DOMBuilderTest2</title>
+ &creator;
+ <description>Uses LSParser.parseWithContext to append a document as a child of an existing node.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseWithContext"/>
+ </metadata>
+
+ <var name="elementList" type="NodeList"/>
+ <var name="stringDoc" type="DOMString"/>
+ <var name="firstElt0" type="Element"/>
+ <var name="returnNode" type="Node"/>
+ <var name="resourceURI" type="DOMString"/>
+
+ &vars;
+ &init;
+
+ <getResourceURI var="resourceURI" href="TEST0" contentType="text/xml"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt0&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="count_elt0"/>
+
+ <item interface="NodeList" obj="elementList" var="firstElt0" index="0"/>
+
+ <getResourceURI var="resourceURI" href="TEST2" contentType="text/xml"/>
+ <systemId obj="inputSource" value="resourceURI" interface="LSInput"/>
+ <try>
+ <parseWithContext obj="parser" input="inputSource" contextArg="firstElt0" action="ACTION_APPEND_AS_CHILDREN" var="returnNode"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+ </try>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt2&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="2" id="count_elt2"/>
+
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt3&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="count_elt3"/>
+
+</test>
+
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMBuilderTest3.xml b/test/testcases/tests/level3/ls/DOMBuilderTest3.xml
new file mode 100644
index 0000000..c1a6e78
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMBuilderTest3.xml
@@ -0,0 +1,79 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+<test xmlns="&level3;" name="DOMBuilderTest3">
+ <metadata>
+ <title>DOMBuilderTest3</title>
+ &creator;
+ <description>Uses LSParser.parseWithContext to insert a document after a node.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseWithContext"/>
+ </metadata>
+
+ <var name="elementList" type="NodeList"/>
+ <var name="stringDoc" type="DOMString"/>
+
+ <var name="firstElt1" type="Element"/>
+ <var name="secondElt1" type="Element"/>
+ <var name="thirdElt" type="Element"/>
+ <var name="nodeName" type="DOMString"/>
+ <var name="returnNode" type="Node"/>
+ <var name="resourceURI" type="DOMString"/>
+
+ &vars;
+
+ &init;
+
+ <getResourceURI var="resourceURI" href="TEST0" contentType="text/xml"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt1&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="2" id="count_elt1"/>
+
+
+ <item interface="NodeList" obj="elementList" var="firstElt1" index="0"/>
+
+ <nextSibling interface="Node" obj="firstElt1" var="secondElt1"/>
+ <nodeName obj="secondElt1" var="nodeName"/>
+ <assertEquals actual="nodeName" expected="&quot;elt1&quot;" id="nextSibling_before_add" ignoreCase="false"/>
+
+ <getResourceURI var="resourceURI" href="TEST2" contentType="text/xml"/>
+ <systemId obj="inputSource" value="resourceURI" interface="LSInput"/>
+ <try>
+ <parseWithContext obj="parser" input="inputSource" contextArg="firstElt1" action="ACTION_INSERT_AFTER" var="returnNode"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+ </try>
+ <nextSibling interface="Node" obj="firstElt1" var="secondElt1"/>
+ <nodeName obj="secondElt1" var="nodeName"/>
+ <assertEquals actual="nodeName" expected="&quot;elt2&quot;" id="nextSibling_after_add" ignoreCase="false"/>
+
+ <nextSibling interface="Node" obj="secondElt1" var="thirdElt"/>
+ <nodeName obj="thirdElt" var="nodeName"/>
+ <assertEquals actual="nodeName" expected="&quot;elt1&quot;" id="nextSiblings_sibling_after_add" ignoreCase="false"/>
+
+</test>
+
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMBuilderTest4.xml b/test/testcases/tests/level3/ls/DOMBuilderTest4.xml
new file mode 100644
index 0000000..ee557d3
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMBuilderTest4.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+<test xmlns="&level3;" name="DOMBuilderTest4">
+ <metadata>
+ <title>DOMBuilderTest4</title>
+ &creator;
+ <description>Uses LSParser.parseWithContext to insert a document before a node.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseWithContext"/>
+ </metadata>
+
+ <var name="elementList" type="NodeList"/>
+ <var name="stringDoc" type="DOMString"/>
+
+ <var name="firstElt1" type="Element"/>
+ <var name="secondElt1" type="Element"/>
+ <var name="thirdElt" type="Element"/>
+ <var name="nodeName" type="DOMString"/>
+ <var name="returnNode" type="Node"/>
+ <var name="resourceURI" type="DOMString"/>
+
+ &vars;
+ &init;
+ <getResourceURI var="resourceURI" href="TEST0" contentType="text/xml"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt1&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="2" id="count_elt1"/>
+
+
+ <item interface="NodeList" obj="elementList" var="secondElt1" index="1"/>
+
+ <previousSibling interface="Node" obj="secondElt1" var="firstElt1"/>
+ <nodeName obj="firstElt1" var="nodeName"/>
+ <assertEquals actual="nodeName" expected="&quot;elt1&quot;" id="previousSibling_before_insert_before" ignoreCase="false"/>
+
+ <getResourceURI var="resourceURI" href="TEST2" contentType="text/xml"/>
+ <systemId obj="inputSource" value="resourceURI" interface="LSInput"/>
+ <try>
+ <parseWithContext obj="parser" input="inputSource" contextArg="secondElt1" action="ACTION_INSERT_BEFORE" var="returnNode"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+ </try>
+ <previousSibling interface="Node" obj="secondElt1" var="firstElt1"/>
+ <nodeName obj="firstElt1" var="nodeName"/>
+ <assertEquals actual="nodeName" expected="&quot;elt2&quot;" id="previousSibling_after_insert_before" ignoreCase="false"/>
+
+
+</test>
+
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMBuilderTest5.xml b/test/testcases/tests/level3/ls/DOMBuilderTest5.xml
new file mode 100644
index 0000000..fd212c9
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMBuilderTest5.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003-2004 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd"[
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+<test xmlns="&level3;" name="DOMBuilderTest5">
+ <metadata>
+ <title>DOMBuilderTest5</title>
+ &creator;
+ <description>supported-media-types-only is set to true if supported and
+ an XML file with an unsupported media type from an HTTP server
+ on the local machine is retrieved.</description>
+ &contributor; &date;
+ <subject resource="&spec;#LS-LSParser-parseURI"/>
+ <subject resource="&spec;#parameter-supported-media-types-only"/>
+ </metadata>
+
+
+ <var name="elementList" type="NodeList"/>
+ <var name="stringDoc" type="DOMString"/>
+ <var name="configuration" type="DOMConfiguration"/>
+
+ <var name="ERROR_HANDLER" type="DOMString" value='"error-handler"'/>
+ <var name="SUPPORTED_MEDIATYPES_ONLY" type="DOMString" value='"supported-media-types-only"'/>
+ <var name="mediaTypesSupported" type="boolean"/>
+ <var name="resourceURI" type="DOMString"/>
+
+ <var name="errorHandler" type="DOMErrorHandler">
+ <handleError>
+ <var name="type" type="DOMString"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <assertEquals id="handler_1" actual="type" expected='"unsupported-media-type"' ignoreCase="false"/>
+ <return value="false"/>
+ </handleError>
+ </var>
+ &vars;
+
+ &init;
+
+ <domConfig var="configuration" obj="parser" interface="LSParser"/>
+
+ <getResourceURI var="resourceURI" href="TESTPDF" scheme="http" contentType="application/pdf"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <!--
+ document should successfully parse since, properly configured,
+ testpdf.pdf is a valid XML file on the http server.
+ -->
+ <assertNotNull actual="document" id="testpdf_parsed"/>
+
+ <canSetParameter var="mediaTypesSupported" obj="configuration" name="SUPPORTED_MEDIATYPES_ONLY" value="true"/>
+ <if>
+ <isTrue value="mediaTypesSupported"/>
+ <setParameter obj="configuration" name="SUPPORTED_MEDIATYPES_ONLY" value="true"/>
+ <setParameter obj="configuration" name="ERROR_HANDLER" value="errorHandler"/>
+ <assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ </PARSE_ERR>
+ </assertLSException>
+ </if>
+
+</test>
+
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMBuilderTest6.xml b/test/testcases/tests/level3/ls/DOMBuilderTest6.xml
new file mode 100644
index 0000000..7462529
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMBuilderTest6.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 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="DOMBuilderTest6">
+ <metadata>
+ <title>DOMBuilderTest6</title>
+ <creator>Curt Arnold</creator>
+ <description>Parses from an uninitialized LSInput.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parse"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="parser" type="LSParser"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+ <var name="input" type="LSInput"/>
+ <var name="document" type="Document"/>
+
+ <implementation var="domImpl"/>
+ <createLSParser var="parser" obj="domImpl" schemaType="NULL_SCHEMA_TYPE" mode="1"/>
+ <createLSInput var="input" obj="domImpl"/>
+ <assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parse var="document" obj="parser" input="input"/>
+ </PARSE_ERR>
+ </assertLSException>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMBuilderTest8.xml b/test/testcases/tests/level3/ls/DOMBuilderTest8.xml
new file mode 100644
index 0000000..ec943b6
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMBuilderTest8.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003-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="DOMBuilderTest8">
+ <metadata>
+ <title>DOMBuilderTest8</title>
+ <creator>Curt Arnold</creator>
+ <description>Parses an unresolvable System ID.</description>
+ <date qualifier="created">2003-12-19</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parse"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="parser" type="LSParser"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+ <var name="input" type="LSInput"/>
+ <var name="document" type="Document"/>
+ <var name="resourceURI" type="DOMString"/>
+
+ <implementation var="domImpl"/>
+ <createLSParser var="parser" obj="domImpl" schemaType="NULL_SCHEMA_TYPE" mode="1"/>
+ <createLSInput var="input" obj="domImpl"/>
+ <getResourceURI var="resourceURI" href='"test0"' contentType="text/xml"/>
+ <plus var="resourceURI" op1="resourceURI" op2='"_missing"'/>
+ <systemId obj="input" value="resourceURI" interface="LSInput"/>
+ <assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parse var="document" obj="parser" input="input"/>
+ </PARSE_ERR>
+ </assertLSException>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMEntityResolverTest0.xml b/test/testcases/tests/level3/ls/DOMEntityResolverTest0.xml
new file mode 100644
index 0000000..33922c3
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMEntityResolverTest0.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMEntityResolverTest0">
+ <metadata>
+ <title>DOMEntityResolverTest0</title>
+ &creator;
+ <description>Checks parameters on call to resolve resource are
+ as expected and redirects to parse a different resource.</description>
+ &contributor; &date;
+ <subject resource="&spec;#LS-LSResourceResolver-resolveResource"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-resource-resolver"/>
+ </metadata>
+
+ <var name="resourceURI" type="DOMString"/>
+ <var name="elt2List" type="NodeList"/>
+ <var name="elt2Count" type="int"/>
+ <var name="myentityresolver" type="LSResourceResolver">
+ <resolveResource>
+ <var name="domImplLS" type="DOMImplementationLS"/>
+ <var name="redirectedInput" type="LSInput"/>
+ <var name="resourceURI" type="DOMString"/>
+ <var name="source" type="DOMString" value='"&lt;elt2/&gt;"'/>
+
+ <!-- check that parameters on call to resolveSource are correct -->
+ <assertNull actual="publicId" id="rr_publicId"/>
+ <assertEquals actual="systemId" expected='"test5.xml"' ignoreCase="false" id="rr_systemId"/>
+ <assertURIEquals actual="baseURI" isAbsolute='true' name='"test4"' id="rr_baseURI"/>
+
+ <!-- redirect so that test5 is loaded -->
+ <implementation var="domImplLS"/>
+ <createLSInput var="redirectedInput" obj="domImplLS"/>
+ <stringData obj="redirectedInput" value="source" interface="LSInput"/>
+ <return value="redirectedInput"/>
+ </resolveResource>
+
+ </var>
+
+ <var name="configuration" type="DOMConfiguration"/>
+
+ &vars;
+ &init;
+
+ <domConfig var="configuration" obj="parser" interface="LSParser"/>
+ <setParameter obj="configuration" name='"resource-resolver"' value="myentityresolver"/>
+
+ <getResourceURI var="resourceURI" href="TEST4" contentType="text/xml"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <getElementsByTagName var="elt2List" obj="document"
+ tagname='"elt2"' interface="Document"/>
+ <length var="elt2Count" obj="elt2List" interface="NodeList"/>
+ <assertEquals actual="elt2Count" expected="1" id="elt2Count" ignoreCase="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMEntityResolverTest1.xml b/test/testcases/tests/level3/ls/DOMEntityResolverTest1.xml
new file mode 100644
index 0000000..16851cc
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMEntityResolverTest1.xml
@@ -0,0 +1,79 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMEntityResolverTest1">
+ <metadata>
+ <title>DOMEntityResolverTest1</title>
+ &creator;
+ <description>Tests a custom entity resolver. The entity resolver creates an input source that supplies 2 elt1 elements. The original entity reference referes to 1 elt1</description>
+ &contributor; &date;
+ <subject resource="&spec;#LS-LSResourceResolver-resolveResource"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-resource-resolver"/>
+ </metadata>
+ <implementationAttribute name="validating" value="true"/>
+
+
+ <var name="myentityresolver" type="LSResourceResolver">
+ <resolveResource>
+ <var name="erInputSource" type="LSInput"/>
+ <var name='implementation' type='DOMImplementation'/>
+ <var name='lsImplementation' type='DOMImplementationLS'/>
+ <var name="substitute" type="DOMString" value='"&lt;elt1&gt;second elt1&lt;/elt1&gt;&lt;elt1&gt;third elt1&lt;/elt1&gt;"'/>
+
+ <implementation var='implementation'/>
+ <assign var='lsImplementation' value='implementation'/>
+
+ <createLSInput var='erInputSource' obj='lsImplementation'/>
+ <stringData obj="erInputSource" value="substitute" interface="LSInput"/>
+
+ <return value="erInputSource"/>
+ </resolveResource>
+
+ </var>
+
+ <var name="elementList" type="NodeList"/>
+ <var name="configuration" type="DOMConfiguration"/>
+ <var name="resourceURI" type="DOMString"/>
+
+ &vars;
+ &init;
+
+ <domConfig var="configuration" obj="parser" interface="LSParser"/>
+
+ <getResourceURI var="resourceURI" href="TEST4" contentType="text/xml"/>
+
+ <!-- before applying the entity resolver there should be 2 elt1 in this document -->
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt1&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="2" id="count_elt1_before_applying_entity_resolver"/>
+
+ <setParameter obj="configuration" name='"resource-resolver"' value="myentityresolver"/>
+
+ <!-- after applying the entity resolver there should be 3 elt1 in this document -->
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt1&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="3" id="count_elt1_after_applying_entity_resolver"/>
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMEntityResolverTest2.xml b/test/testcases/tests/level3/ls/DOMEntityResolverTest2.xml
new file mode 100644
index 0000000..ce72982
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMEntityResolverTest2.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMEntityResolverTest2">
+ <metadata>
+ <title>DOMEntityResolverTest2</title>
+ &creator;
+ <description>Resource resolvers do not participate in resolving the top-level document entity.
+ This test attempts to redirect any resource and then checks that the
+ requested document was not affected.</description>
+ &contributor; &date;
+ <subject resource="&spec;#LS-LSResourceResolver-resolveResource"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-resource-resolver"/>
+ </metadata>
+
+ <var name="resourceURI" type="DOMString"/>
+ <var name="docElem" type="Element"/>
+ <var name="docElemName" type="DOMString"/>
+ <var name="myentityresolver" type="LSResourceResolver">
+ <resolveResource>
+ <var name="domImplLS" type="DOMImplementationLS"/>
+ <var name="redirectedInput" type="LSInput"/>
+ <var name="source" type="DOMString" value='"&lt;!DOCTYPE failure [&lt;!ELEMENT failure EMPTY&gt;]&gt;&lt;failure/&gt;"'/>
+
+ <!--
+ The resolveResource should not be invoked,
+ but if it is substitute a failure document -->
+ <implementation var="domImplLS"/>
+ <createLSInput var="redirectedInput" obj="domImplLS"/>
+ <stringData obj="redirectedInput" value="source" interface="LSInput"/>
+ <return value="redirectedInput"/>
+ </resolveResource>
+ </var>
+
+ <var name="configuration" type="DOMConfiguration"/>
+
+ &vars;
+ &init;
+
+ <domConfig var="configuration" obj="parser" interface="LSParser"/>
+ <setParameter obj="configuration" name='"resource-resolver"' value="myentityresolver"/>
+
+ <getResourceURI var="resourceURI" href="TEST0" contentType="text/xml"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <assertNotNull actual="document" id="documentNotNull"/>
+ <documentElement var="docElem" obj="document"/>
+ <nodeName var="docElemName" obj="docElem"/>
+ <assertEquals actual="docElemName" expected='"elt0"'
+ id="docElemName" ignoreCase="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMImplementationLSTest0.xml b/test/testcases/tests/level3/ls/DOMImplementationLSTest0.xml
new file mode 100644
index 0000000..e008fcc
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMImplementationLSTest0.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMImplementationLSTest0">
+ <metadata>
+ <title>DOMImplementationLSTest0</title>
+ &creator;
+ <description>Uses DOMImplementationLS.createLSParser to create a synchronous parser with an unspecified schema type.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSParser"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-async"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-busy"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-filter"/>
+ </metadata>
+ <var name="isAsync" type="boolean"/>
+ <var name="isBusy" type="boolean"/>
+ <var name="filter" type="LSParserFilter"/>
+ &vars;
+
+ <createLSParser var='parser' obj='lsImplementation' mode='MODE_SYNCHRONOUS' schemaType='NULL_SCHEMATYPE'/>
+ <assertNotNull actual="parser" id="parserNotNull"/>
+ <async var="isAsync" obj="parser"/>
+ <assertFalse actual="isAsync" id="notAsync"/>
+ <busy var="isBusy" obj="parser"/>
+ <assertFalse actual="isBusy" id="notBusy"/>
+ <filter var="filter" obj="parser" interface="LSParser"/>
+ <assertNull actual="filter" id="nullFilter"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMImplementationLSTest1.xml b/test/testcases/tests/level3/ls/DOMImplementationLSTest1.xml
new file mode 100644
index 0000000..3447a76
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMImplementationLSTest1.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMImplementationLSTest1">
+ <metadata>
+ <title>DOMImplementationLSTest1</title>
+ &creator;
+ <description>Calls DOMImplementationLS.createLSParser(MODE_ASYNCHRONOUS, null) and
+ checks the return value is not null. Only applicable if DOMImplementation.hasFeature("LS-ASync", null) is true.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSParser"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-async"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-busy"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-filter"/>
+ </metadata>
+ <hasFeature feature='"LS-Async"'/>
+ <var name="isAsync" type="boolean"/>
+ <var name="isBusy" type="boolean"/>
+ <var name="filter" type="LSParserFilter"/>
+ &vars;
+
+ <createLSParser var='parser' obj='lsImplementation' mode='MODE_ASYNCHRONOUS' schemaType='NULL_SCHEMATYPE'/>
+ <assertNotNull actual="parser" id="parserNotNull"/>
+ <async var="isAsync" obj="parser"/>
+ <assertTrue actual="isAsync" id="notAsync"/>
+ <busy var="isBusy" obj="parser"/>
+ <assertFalse actual="isBusy" id="notBusy"/>
+ <filter var="filter" obj="parser" interface="LSParser"/>
+ <assertNull actual="filter" id="nullFilter"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMImplementationLSTest2.xml b/test/testcases/tests/level3/ls/DOMImplementationLSTest2.xml
new file mode 100644
index 0000000..5327a9c
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMImplementationLSTest2.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMImplementationLSTest2">
+ <metadata>
+ <title>DOMImplementationLSTest2</title>
+ &creator;
+ <description>Calls DOMImplementationLS.createLSParser(MODE_SYNCHRONOUS, "http://www.w3.org/TR/REC-xml") and checks the return value is not null.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSParser"/>
+ </metadata>
+ &vars;
+
+ <createLSParser var='parser' obj='lsImplementation' mode='MODE_SYNCHRONOUS' schemaType='DTD_SCHEMATYPE'/>
+ <assertNotNull actual="parser" id="parserNotNull"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMImplementationLSTest3.xml b/test/testcases/tests/level3/ls/DOMImplementationLSTest3.xml
new file mode 100644
index 0000000..f2480b1
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMImplementationLSTest3.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMImplementationLSTest3">
+ <metadata>
+ <title>DOMImplementationLSTest3</title>
+ &creator;
+ <description>Calls DOMImplementationLS.createLSParser(MODE_SYNCHRONOUS, "http://www.w3.org/2001/XMLSchema").
+ Should either throw a NOT_SUPPORTED_ERR or return a non-null parser.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSParser"/>
+ </metadata>
+ &vars;
+
+ <try>
+ <createLSParser var='parser' obj='lsImplementation' mode='MODE_SYNCHRONOUS' schemaType='SCHEMA_SCHEMATYPE'/>
+ <assertNotNull actual="parser" id="parserNotNull"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR"/>
+ </catch>
+ </try>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMImplementationLSTest4.xml b/test/testcases/tests/level3/ls/DOMImplementationLSTest4.xml
new file mode 100644
index 0000000..447e8a2
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMImplementationLSTest4.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMImplementationLSTest4">
+ <metadata>
+ <title>DOMImplementationLSTest4</title>
+ &creator;
+ <description>Calls DOMImplementationLS.createLSParser(MODE_SYNCHRONOUS, "http://nobody...err") expecting that a
+ NOT_SUPPORTED_ERR would be raised.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSParser"/>
+ </metadata>
+ &vars;
+
+ <assertDOMException id="NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <createLSParser var='parser' obj='lsImplementation'
+ mode='MODE_SYNCHRONOUS'
+ schemaType='"http://nobody_should_support_this_schematype_this_should_throw_a_not_supported_err"'/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMImplementationLSTest5.xml b/test/testcases/tests/level3/ls/DOMImplementationLSTest5.xml
new file mode 100644
index 0000000..e9344fc
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMImplementationLSTest5.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMImplementationLSTest5">
+ <metadata>
+ <title>DOMImplementationLSTest0</title>
+ &creator;
+ <description>Calls DOMImplementationLS.createLSParser(MODE_SYNCHRONOUS, "http://nobody...err") expecting that a
+ NOT_SUPPORTED_ERR would be raised.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSParser"/>
+ </metadata>
+ &vars;
+ <assertDOMException id="NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <createLSParser var='parser' obj='lsImplementation'
+ mode='17'
+ schemaType='NULL_SCHEMATYPE'/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMInputSourceTest0.xml b/test/testcases/tests/level3/ls/DOMInputSourceTest0.xml
new file mode 100644
index 0000000..113e645
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMInputSourceTest0.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMInputSourceTest0">
+ <metadata>
+ <title>DOMInputSourceTest0</title>
+ &creator;
+ <description>Parses a document from a byte stream.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-byteStream"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parse"/>
+ </metadata>
+
+ <!-- stream value is <elt0/> in UTF-8 -->
+ <var name="myByteStream" type="LSInputStream" value='"3C656C74302F3E"'/>
+ <var name="elementList" type="NodeList"/>
+
+ &vars;
+ &init;
+
+
+ <byteStream obj="inputSource" value="myByteStream" interface="LSInput"/>
+
+ <parse var="document" obj="parser" input="inputSource"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt0&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="count_elt0"/>
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMInputSourceTest1.xml b/test/testcases/tests/level3/ls/DOMInputSourceTest1.xml
new file mode 100644
index 0000000..6d490eb
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMInputSourceTest1.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMInputSourceTest1">
+ <metadata>
+ <title>DOMInputSourceTest1</title>
+ &creator;
+ <description>Parses a document from a character stream.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-characterStream"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parse"/>
+ </metadata>
+ <var name="myReader" type="LSReader" value='"&lt;elt0/&gt;"'/>
+ <var name="elementList" type="NodeList"/>
+ &vars;
+
+
+ &init;
+
+
+ <characterStream obj="inputSource" value="myReader" interface="LSInput"/>
+
+ <parse var="document" obj="parser" input="inputSource"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt0&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="count_elt0"/>
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMInputSourceTest2.xml b/test/testcases/tests/level3/ls/DOMInputSourceTest2.xml
new file mode 100644
index 0000000..3a5cff0
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMInputSourceTest2.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMInputSourceTest2">
+ <metadata>
+ <title>DOMInputSourceTest2</title>
+ &creator;
+ <description>test the parser by using a string inputsource</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-stringData"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parse"/>
+ </metadata>
+
+ <var name="elementList" type="NodeList"/>
+ <var name="myString" type="DOMString" value="&quot;&lt;elt0&gt;elt0&lt;/elt0&gt;&quot;"/>
+ &vars;
+ &init;
+
+ <stringData obj="inputSource" value="myString" interface="LSInput"/>
+
+ <parse var="document" obj="parser" input="inputSource"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt0&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="count_elt0"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMInputSourceTest3.xml b/test/testcases/tests/level3/ls/DOMInputSourceTest3.xml
new file mode 100644
index 0000000..af25ac1
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMInputSourceTest3.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMInputSourceTest3">
+ <metadata>
+ <title>DOMInputSourceTest3</title>
+ &creator;
+ <description>Specify encodings for LSInput with string data. The
+ setting should have no effect and the inputEncoding of the resulting document should be UTF-16.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-encoding"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parse"/>
+ </metadata>
+ <hasFeature feature='"Core"' version='"3.0"'/>
+ <var name="myString" type="DOMString" value="&quot;&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;elt0&gt;elt0&lt;/elt0&gt;&quot;"/>
+ <var name="encodingString" type="DOMString"/>
+ &vars;
+ &init;
+
+ <!-- initialize an input source with a string and a misleading encoding -->
+ <stringData obj="inputSource" value="myString" interface="LSInput"/>
+ <encoding obj="inputSource" value='"UTF-8"' interface="LSInput"/>
+ <!-- parse -->
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- check inputEncoding, should be UTF-16 -->
+ <inputEncoding var="encodingString" obj="document" interface="Document"/>
+ <assertEquals actual="encodingString" expected='"UTF-16"' ignoreCase="true" id="encodingstringcheck0"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMInputSourceTest4.xml b/test/testcases/tests/level3/ls/DOMInputSourceTest4.xml
new file mode 100644
index 0000000..945ed57
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMInputSourceTest4.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMInputSourceTest4">
+ <metadata>
+ <title>DOMInputSourceTest4</title>
+ &creator;
+ <description>tests whether DOMInput whether abort can be called even if loading is finished already</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-abort"/>
+ </metadata>
+
+ <var name="elementList" type="NodeList"/>
+ <var name="myString" type="DOMString" value="&quot;&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;elt0&gt;elt0&lt;/elt0&gt;&quot;"/>
+
+ &vars;
+ &init;
+
+ <stringData obj="inputSource" value="myString" interface="LSInput"/>
+
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- abort should be possible even in synchronous load -->
+ <abort obj="parser" interface="LSParser"/>
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMInputSourceTest5.xml b/test/testcases/tests/level3/ls/DOMInputSourceTest5.xml
new file mode 100644
index 0000000..34bff24
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMInputSourceTest5.xml
@@ -0,0 +1,88 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMInputSourceTest5">
+ <metadata>
+ <title>DOMInputSourceTest5</title>
+ &creator;
+ <description>Parses a document containing an external entity and checks
+ that resource resolver is passed the baseURI value specified on LSInput.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-systemId"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-publicId"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-baseURI"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSResourceResolver-resolveResource"/>
+ </metadata>
+
+
+ <var name="myentityresolver" type="LSResourceResolver">
+ <resolveResource>
+ <var name="domImplLS" type="DOMImplementationLS"/>
+ <var name="input" type="LSInput"/>
+ <assertEquals actual="baseURI" expected='"http://www.example.com/new_base"' ignoreCase="false" id="er_base"/>
+ <assertEquals actual="publicId" expected='"-//X-Hive//native xml storage//EN"' ignoreCase="false" id="er_public"/>
+ <assertURIEquals actual="systemId" isAbsolute="true" name='"test5"' id="er_system"/>
+
+ <!-- create an empty string input so we can detect
+ that resource resolver was used -->
+ <implementation var="domImplLS"/>
+ <createLSInput var="input" obj="domImplLS"/>
+ <stringData obj="input" value='""' interface="LSInput"/>
+ <return value="input"/>
+ </resolveResource>
+
+ </var>
+
+ <var name="configuration" type="DOMConfiguration"/>
+ <var name="resourceURI" type="DOMString"/>
+ <var name="nodeList" type="NodeList"/>
+ &vars;
+ &init;
+
+ <domConfig var="configuration" obj="parser" interface="LSParser"/>
+
+ <setParameter obj="configuration" name='"resource-resolver"' value="myentityresolver"/>
+ <setParameter obj="configuration" name='"entities"' value="false"/>
+
+ <getResourceURI var="resourceURI" href="TEST4" contentType="text/xml"/>
+ <systemId obj="inputSource" value="resourceURI" interface="LSInput"/>
+ <publicId obj="inputSource" value='"-//X-Hive//native xml storage//DE"' interface="LSInput"/>
+ <baseURI obj="inputSource" value='"http://www.example.com/new_base"' interface="LSInput"/>
+
+
+ <parse var="document" obj="parser" input="inputSource"/>
+ <!-- should parse successfully -->
+ <assertNotNull actual="document" id="documentNotNull"/>
+
+ <!-- resource resolver should have suppressed elt2 from the
+ external entity -->
+ <getElementsByTagName var="nodeList" obj="document" tagname='"elt2"' interface="Document"/>
+ <assertSize size="0" collection="nodeList" id="noElt2"/>
+
+ <!-- check that there is an elt1 -->
+ <getElementsByTagName var="nodeList" obj="document" tagname='"elt1"' interface="Document"/>
+ <assertSize size="1" collection="nodeList" id="hasElt1"/>
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMInputSourceTest6.xml b/test/testcases/tests/level3/ls/DOMInputSourceTest6.xml
new file mode 100644
index 0000000..9c896a8
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMInputSourceTest6.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMInputSourceTest6">
+ <metadata>
+ <title>DOMInputSourceTest6</title>
+ &creator;
+ <description>Specify encodings for LSInput with a character stream. The
+ setting should have no effect and the inputEncoding of the resulting document should be UTF-16.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-encoding"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parse"/>
+ </metadata>
+ <hasFeature feature='"Core"' version='"3.0"'/>
+
+ <var name="encodingString" type="DOMString"/>
+
+ <var name="myReader" type="LSReader" value="&quot;&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;elt0&gt;elt0&lt;/elt0&gt;&quot;"/>
+
+ &vars;
+ &init;
+
+ <!-- initialize an input source with a string and a misleading encoding -->
+ <encoding obj="inputSource" value='"UTF-8"' interface="LSInput"/>
+ <characterStream obj="inputSource" value="myReader" interface="LSInput"/>
+ <!-- parse -->
+ <parse var="document" obj="parser" input="inputSource"/>
+ <assertNotNull actual="document" id="documentNotNull"/>
+
+ <!-- check inputEncoding, should be UTF-16 -->
+ <inputEncoding var="encodingString" obj="document" interface="Document"/>
+ <assertEquals actual="encodingString" expected='"UTF-16"' ignoreCase="true" id="encodingstringcheck0"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMWriterFilterTest0.xml b/test/testcases/tests/level3/ls/DOMWriterFilterTest0.xml
new file mode 100644
index 0000000..09030c6
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMWriterFilterTest0.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMWriterFilterTest0">
+ <metadata>
+ <title>DOMWriterFilterTest0</title>
+ &creator;
+ <description>DOMSerializerFilter test, a simple test eliminating a subtree</description>
+ &contributor; &date;
+ <subject resource="&spec;#LS-Interfaces-LSSerializerFilter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-LSSerializerFilter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializerFilter-acceptNode"/>
+ </metadata>
+
+
+ <var name="myfilter" type="LSSerializerFilter">
+ <var name="name" type="DOMString"/>
+ &filterVars;
+
+
+ <acceptNode>
+
+ <nodeName obj="n" var="name"/>
+ <if>
+ <equals actual="name" expected='"elt1"' ignoreCase="false"/>
+ <return value="&FILTER_ACCEPT;"/>
+ </if>
+
+ <return value="&FILTER_REJECT;"/>
+ </acceptNode>
+
+ <whatToShow>
+ <get>
+ <return value="&SHOW_ALL;"/>
+ </get>
+ </whatToShow>
+
+ </var>
+
+
+
+
+ <var name="configuration" type="DOMConfiguration"/>
+ <var name="stringDoc" type="DOMString" value='"&lt;elt1&gt;first elt1&lt;elt2&gt;elt2&lt;/elt2&gt;&lt;/elt1&gt;"'/>
+ <var name="writeResult" type="DOMString"/>
+ <var name="length" type="int"/>
+ <var name="elementList" type="NodeList"/>
+
+ &vars;
+ &init;
+
+ <!-- parse the string -->
+ <stringData obj="inputSource" value="stringDoc"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- apply the filter -->
+ <filter obj="writer" value="myfilter" interface="LSSerializer"/>
+
+ <!-- serialize result -->
+ <writeToString var="writeResult" obj="writer" nodeArg="document"/>
+
+ <!-- parse result -->
+ <stringData obj="inputSource" value="writeResult" interface="LSInput"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- tests elt1 should be in the result, elt2 should be filtered out -->
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt2&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="0" id="count_elt2"/>
+
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt1&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="count_elt1"/>
+
+
+</test>
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMWriterFilterTest1.xml b/test/testcases/tests/level3/ls/DOMWriterFilterTest1.xml
new file mode 100644
index 0000000..1dc0140
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMWriterFilterTest1.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMWriterFilterTest1">
+ <metadata>
+ <title>DOMWriterFilterTest1</title>
+ &creator;
+ <description>Uses a serializer filter to eliminate attributes, parses the output and checks if the attribute is not there.</description>
+ &contributor; &date;
+ <subject resource="&spec;#LS-Interfaces-LSSerializerFilter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-LSSerializerFilter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializerFilter-acceptNode"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializerFilter-whatToShow"/>
+ </metadata>
+
+
+ <var name="myfilter" type="LSSerializerFilter">
+ &filterVars;
+ <acceptNode>
+ <return value="&FILTER_REJECT;"/>
+ </acceptNode>
+
+ <whatToShow>
+ <get>
+ <return value="&SHOW_ATTRIBUTE;"/>
+ </get>
+ </whatToShow>
+
+ </var>
+
+
+
+
+ <var name="configuration" type="DOMConfiguration"/>
+ <var name="stringDoc" type="DOMString" value="&quot;&lt;elt1 attr1='attr1'&gt;first elt1&lt;/elt1&gt;&quot;"/>
+ <var name="writeResult" type="DOMString"/>
+ <var name="length" type="int"/>
+ <var name="elementList" type="NodeList"/>
+ <var name="elt1" type="Element"/>
+ <var name="attrNode" type="Attr"/>
+
+ &vars;
+ &init;
+
+ <!-- parse the string -->
+ <stringData obj="inputSource" value="stringDoc"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- apply the filter -->
+ <filter obj="writer" value="myfilter" interface="LSSerializer"/>
+
+ <!-- serialize result -->
+ <writeToString var="writeResult" obj="writer" nodeArg="document"/>
+
+ <!-- parse result -->
+ <stringData obj="inputSource" value="writeResult" interface="LSInput"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- tests elt1 should be in the result-->
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt1&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="count_elt2"/>
+
+ <!-- attr1 of elt1 should have been suppressed -->
+ <item interface="NodeList" obj="elementList" index="0" var="elt1"/>
+ <getAttributeNode obj="elt1" var="attrNode" name="&quot;attr1&quot;"/>
+ <assertNull actual="attrNode" id="attrib1"/>
+
+
+</test>
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMWriterFilterTest2.xml b/test/testcases/tests/level3/ls/DOMWriterFilterTest2.xml
new file mode 100644
index 0000000..6f2be15
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMWriterFilterTest2.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMWriterFilterTest2">
+ <metadata>
+ <title>DOMWriterFilterTest2</title>
+ &creator;
+ <description>Uses a filter to strip text during serialization
+ parsers to check expections.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-LSSerializerFilter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializerFilter-acceptNode"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializerFilter-whatToShow"/>
+ <subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=643"/>
+ </metadata>
+
+
+ <var name="myfilter" type="LSSerializerFilter">
+ <var name="name" type="DOMString"/>
+ &filterVars;
+
+ <acceptNode>
+ <return value="&FILTER_REJECT;"/>
+ </acceptNode>
+
+ <whatToShow>
+ <get>
+ <return value="&SHOW_TEXT;"/>
+ </get>
+ </whatToShow>
+
+ </var>
+
+
+
+
+ <var name="stringDoc" type="DOMString" value="&quot;&lt;elt1 attr1='attr1'&gt;first elt1&lt;/elt1&gt;&quot;"/>
+ <var name="writeResult" type="DOMString"/>
+ <var name="length" type="int"/>
+ <var name="elementList" type="NodeList"/>
+ <var name="elt1" type="Element"/>
+ <var name="childs" type="boolean"/>
+ <var name="attrNode" type="Attr"/>
+ <var name="attr1" type="DOMString"/>
+
+ &vars;
+ &init;
+
+ <!-- parse the string -->
+ <stringData obj="inputSource" value="stringDoc"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- apply the filter -->
+ <filter obj="writer" value="myfilter" interface="LSSerializer"/>
+
+ <!-- serialize result -->
+ <writeToString var="writeResult" obj="writer" nodeArg="document"/>
+
+ <!-- parse result -->
+ <stringData obj="inputSource" value="writeResult" interface="LSInput"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- tests no child of elt1-->
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt1&quot;" var="elementList"/>
+ <item interface="NodeList" obj="elementList" index="0" var="elt1"/>
+
+ <!-- attr not effected since children of attribute nodes not passed to filter -->
+ <getAttributeNode var="attrNode" obj="elt1" name='"attr1"'/>
+ <assertNotNull actual="attrNode" id="attrExists"/>
+ <nodeValue var="attr1" obj="attrNode"/>
+ <assertEquals actual="attr1" expected='"attr1"' ignoreCase="false" id="attrUnchanged"/>
+
+ <!-- elt1 should be empty -->
+ <hasChildNodes obj="elt1" var="childs"/>
+ <assertFalse actual="childs" id="nodeHasChilds_elt1"/>
+
+
+</test>
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMWriterFilterTest3.xml b/test/testcases/tests/level3/ls/DOMWriterFilterTest3.xml
new file mode 100644
index 0000000..0af3c38
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMWriterFilterTest3.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMWriterFilterTest3">
+ <metadata>
+ <title>DOMWriterFilterTest3</title>
+ &creator;
+ <description>Eliminates comments on serialization, parses results and checks for comments.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-LSSerializerFilter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializerFilter-acceptNode"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializerFilter-whatToShow"/>
+ </metadata>
+
+
+ <var name="myfilter" type="LSSerializerFilter">
+ &filterVars;
+ <acceptNode>
+ <return value="&FILTER_REJECT;"/>
+ </acceptNode>
+
+ <whatToShow>
+ <get>
+ <return value="&SHOW_COMMENT;"/>
+ </get>
+ </whatToShow>
+ </var>
+
+
+
+
+ <var name="configuration" type="DOMConfiguration"/>
+ <var name="stringDoc" type="DOMString" value="&quot;&lt;elt1&gt;&lt;elt2&gt;elt2&lt;/elt2&gt;&lt;!--comment1--&gt;&lt;/elt1&gt;&quot;"/>
+ <var name="writeResult" type="DOMString"/>
+ <var name="length" type="int"/>
+ <var name="elementList" type="NodeList"/>
+ <var name="children" type="NodeList"/>
+ <var name="elt1" type="Element"/>
+
+ &vars;
+ &init;
+
+ <!-- parse the string -->
+ <stringData obj="inputSource" value="stringDoc"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- apply the filter -->
+ <filter obj="writer" value="myfilter" interface="LSSerializer"/>
+
+ <!-- serialize result -->
+ <writeToString var="writeResult" obj="writer" nodeArg="document"/>
+
+ <!-- parse result -->
+ <stringData obj="inputSource" value="writeResult" interface="LSInput"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- test comments should be deleted, one child left of elt1 -->
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt1&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="count_elt1"/>
+
+ <item interface="NodeList" obj="elementList" index="0" var="elt1"/>
+ <childNodes obj="elt1" var="children"/>
+ <assertSize collection="children" size="1" id="count_children"/>
+
+
+</test>
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMWriterTest0.xml b/test/testcases/tests/level3/ls/DOMWriterTest0.xml
new file mode 100644
index 0000000..0832a4c
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMWriterTest0.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMWriterTest0">
+ <metadata>
+ <title>DOMWriterTest0</title>
+ &creator;
+ <description>Calls LSSerializer.writeToString and checks result.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+ </metadata>
+ <var name="stringDoc" type="DOMString"/>
+ <var name="writeResult" type="DOMString"/>
+ <var name="elementList" type="NodeList"/>
+ <var name="resourceURI" type="DOMString"/>
+
+ &vars;
+ &init;
+ <getResourceURI var="resourceURI" href="TEST0"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <writeToString var="writeResult" obj="writer" nodeArg="document"/>
+
+ <stringData obj="inputSource" value="writeResult"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt2&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="1" id="elt2Count_1"/>
+
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMWriterTest1.xml b/test/testcases/tests/level3/ls/DOMWriterTest1.xml
new file mode 100644
index 0000000..178fe88
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMWriterTest1.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMWriterTest1">
+ <metadata>
+ <title>DOMWriterTest1</title>
+ &creator;
+ <description>Writes an element node to a byte stream.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSOutput-byteStream"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-write"/>
+ </metadata>
+ <var name="stringDoc" type="DOMString"/>
+ <var name="writeResult" type="boolean"/>
+ <var name="elementList" type="NodeList"/>
+ <var name="firstElt3" type="Node"/>
+ <var name="output" type="LSOutput"/>
+ <var name="outputStream" type="LSOutputStream"/>
+ <var name="inputStream" type="LSInputStream" isNull="true"/>
+ <var name="resourceURI" type="DOMString"/>
+
+ &vars;
+
+ &init;
+ <!-- write out only subtree with elt3-->
+ <getResourceURI var="resourceURI" href="TEST2"/>
+ <parseURI var="document" obj="parser" uri="resourceURI"/>
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt3&quot;" var="elementList"/>
+ <item interface="NodeList" obj="elementList" var="firstElt3" index="0"/>
+ <createLSOutput var="output" obj="lsImplementation"/>
+ <byteStream obj="output" value="outputStream" interface="LSOutput"/>
+
+ <write var="writeResult" obj="writer" destination="output" nodeArg="firstElt3"/>
+ <assign var="inputStream" value="outputStream"/>
+ <byteStream obj="inputSource" value="inputStream" interface="LSInput"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- no elt2 may be found -->
+ <getElementsByTagName interface="Document" obj="document" tagname="&quot;elt2&quot;" var="elementList"/>
+ <assertSize collection="elementList" size="0" id="elt2Count_1"/>
+
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMWriterTest2.xml b/test/testcases/tests/level3/ls/DOMWriterTest2.xml
new file mode 100644
index 0000000..1b1cb82
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMWriterTest2.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMWriterTest2">
+ <metadata>
+ <title>DOMWriterTest2</title>
+ &creator;
+ <description>Serializes a document without a XML declaration for both for 'xml-declaration' configuration values.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-canSetParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+
+ <var name="configuration" type="DOMConfiguration"/>
+ <var name="XML_DECLARATION" type="DOMString" value='"xml-declaration"'/>
+ <var name="stringDoc" type="DOMString" value='"&lt;hello&gt;me again&lt;/hello&gt;"'/>
+ <var name="writeResult" type="DOMString"/>
+ <var name="xmlDecl" type="DOMString"/>
+
+ &vars;
+ &init;
+
+ <!-- parse the string -->
+ <stringData obj="inputSource" value="stringDoc"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- include xml declaration on serialization -->
+ <domConfig var="configuration" obj="writer" interface="LSSerializer"/>
+
+ <setParameter obj="configuration" name="XML_DECLARATION" value="false"/>
+ <writeToString var="writeResult" obj="writer" nodeArg="document"/>
+ <assertEquals actual="writeResult" expected="stringDoc" id="without_xml_declaration" ignoreCase="false"/>
+
+ <setParameter obj="configuration" name="XML_DECLARATION" value="true"/>
+ <writeToString var="writeResult" obj="writer" nodeArg="document"/>
+ <substring var="xmlDecl" obj="writeResult" beginIndex="0" endIndex="6"/>
+ <assertEquals actual="xmlDecl" expected='"&lt;?xml "' id="with_xml_declaration" ignoreCase="false"/>
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMWriterTest3.xml b/test/testcases/tests/level3/ls/DOMWriterTest3.xml
new file mode 100644
index 0000000..720a64d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMWriterTest3.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3tests.ent">
+ %entities;
+]>
+
+
+<test xmlns="&level3;" name="DOMWriterTest3">
+ <metadata>
+ <title>DOMWriterTest3</title>
+ &creator;
+ <description>Serializes a document with a XML declaration for both for 'xml-declaration' configuration values.</description>
+ &contributor; &date;
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMConfiguration-canSetParameter"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+
+ <var name="configuration" type="DOMConfiguration"/>
+ <var name="XML_DECLARATION" type="DOMString" value='"xml-declaration"'/>
+ <var name="stringDoc" type="DOMString" value='"&lt;?xml version=&apos;1.0&apos;?&gt;&lt;hello&gt;me again&lt;/hello&gt;"'/>
+ <var name="writeResult" type="DOMString"/>
+ <var name="xmlDecl" type="DOMString"/>
+
+ &vars;
+ &init;
+
+ <!-- parse the string -->
+ <stringData obj="inputSource" value="stringDoc"/>
+ <parse var="document" obj="parser" input="inputSource"/>
+
+ <!-- include xml declaration on serialization -->
+ <domConfig var="configuration" obj="writer" interface="LSSerializer"/>
+
+ <setParameter obj="configuration" name="XML_DECLARATION" value="false"/>
+ <writeToString var="writeResult" obj="writer" nodeArg="document"/>
+ <assertEquals actual="writeResult" expected='"&lt;hello&gt;me again&lt;/hello&gt;"' id="without_xml_declaration" ignoreCase="false"/>
+
+ <setParameter obj="configuration" name="XML_DECLARATION" value="true"/>
+ <writeToString var="writeResult" obj="writer" nodeArg="document"/>
+ <substring var="xmlDecl" obj="writeResult" beginIndex="0" endIndex="6"/>
+ <assertEquals actual="xmlDecl" expected='"&lt;?xml "' id="with_xml_declaration" ignoreCase="false"/>
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMWriterTest4.xml b/test/testcases/tests/level3/ls/DOMWriterTest4.xml
new file mode 100644
index 0000000..3d45e5f
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMWriterTest4.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003-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="DOMWriterTest4">
+ <metadata>
+ <title>DOMWriterTest4</title>
+ <creator>Curt Arnold</creator>
+ <description>Writes a document to an uninitialized LSOutput.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-write"/>
+ </metadata>
+ <implementationAttribute name="validating" value="false"/>
+
+ <var name="testDoc" type="Document"/>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="output" type="LSOutput"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="status" type="boolean"/>
+
+ <load var="testDoc" href="test0" willBeModified="false"/>
+ <implementation var="domImpl"/>
+
+ <!-- create an LSOutput -->
+ <createLSOutput var="output" obj="domImpl"/>
+
+ <!-- create a serializer and write a test document -->
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <assertLSException id="throw_SERIALIZE_ERR">
+ <SERIALIZE_ERR>
+ <write var="status" obj="serializer" destination="output" nodeArg="testDoc"/>
+ </SERIALIZE_ERR>
+ </assertLSException>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMWriterTest5.xml b/test/testcases/tests/level3/ls/DOMWriterTest5.xml
new file mode 100644
index 0000000..0fafb5d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMWriterTest5.xml
@@ -0,0 +1,88 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="DOMWriterTest5">
+ <metadata>
+ <title>DOMWriterTest5</title>
+ <creator>Curt Arnold</creator>
+ <description>Creates an document containing a namespaced attribute node without
+ user-specified prefix and checks that it is serialized properly.</description>
+ <date qualifier="created">2003-12-22</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-write"/>
+ <subject resource="http://lists.w3.org/Archives/Public/www-dom/2003OctDec/0062.html"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="origDoc" type="Document"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="namespaceURI" type="DOMString" value='"http://www.example.com/DOMWriterTest5"'/>
+ <var name="docElem" type="Element"/>
+ <var name="outputString" type="DOMString"/>
+ <var name="input" type="LSInput"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="parser" type="LSParser"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+ <var name="attrValue" type="DOMString"/>
+ <var name="parsedDoc" type="Document"/>
+ <var name="docElemLocalName" type="DOMString"/>
+ <var name="docElemNS" type="DOMString"/>
+
+ <implementation var="domImpl"/>
+ <createDocument var="origDoc" obj="domImpl"
+ namespaceURI="namespaceURI"
+ qualifiedName='"test"'
+ doctype="nullDocType"/>
+ <documentElement var="docElem" obj="origDoc"/>
+ <setAttributeNS obj="docElem" namespaceURI="namespaceURI" qualifiedName='"attr"' value='"test value"'/>
+
+
+ <!-- create a serializer and write the document -->
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <writeToString var="outputString" obj="serializer" nodeArg="origDoc"/>
+
+ <!-- create an LSInput -->
+ <createLSInput var="input" obj="domImpl"/>
+ <stringData obj="input" value="outputString"/>
+
+ <!-- create parser -->
+ <createLSParser var="parser" obj="domImpl" mode="1" schemaType="NULL_SCHEMA_TYPE"/>
+ <parse var="parsedDoc" obj="parser" input="input"/>
+
+ <documentElement var="docElem" obj="parsedDoc"/>
+
+ <!-- check local name of document element -->
+ <localName var="docElemLocalName" obj="docElem"/>
+ <assertEquals actual="docElemLocalName" expected='"test"' ignoreCase="false" id="docElemLocalName"/>
+
+ <!-- namespace of document element -->
+ <namespaceURI var="docElemNS" obj="docElem" interface="Node"/>
+ <assertEquals actual="docElemNS" expected="namespaceURI" ignoreCase="false" id="docElemNS"/>
+
+ <!-- attribute with namespaceURI namespace -->
+ <getAttributeNS var="attrValue" obj="docElem" namespaceURI="namespaceURI" localName='"attr"'/>
+ <assertEquals actual="attrValue" expected='"test value"' ignoreCase="false" id="properNSAttrValue"/>
+
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/DOMWriterTest6.xml b/test/testcases/tests/level3/ls/DOMWriterTest6.xml
new file mode 100644
index 0000000..e562b13
--- /dev/null
+++ b/test/testcases/tests/level3/ls/DOMWriterTest6.xml
@@ -0,0 +1,89 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="DOMWriterTest6">
+ <metadata>
+ <title>DOMWriterTest6</title>
+ <creator>Curt Arnold</creator>
+ <description>Creates an document containing a namespaced attribute node with
+ user-specified prefix and checks that it is serialized properly.</description>
+ <date qualifier="created">2003-12-22</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-write"/>
+ <subject resource="http://lists.w3.org/Archives/Public/www-dom/2003OctDec/0062.html"/>
+ </metadata>
+ <implementationAttribute name="namespaceAware" value="true"/>
+
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="origDoc" type="Document"/>
+ <var name="nullDocType" type="DocumentType" isNull="true"/>
+ <var name="namespaceURI" type="DOMString" value='"http://www.example.com/DOMWriterTest5"'/>
+ <var name="docElem" type="Element"/>
+ <var name="outputString" type="DOMString"/>
+ <var name="input" type="LSInput"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="parser" type="LSParser"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+ <var name="attrValue" type="DOMString"/>
+ <var name="parsedDoc" type="Document"/>
+ <var name="docElemLocalName" type="DOMString"/>
+ <var name="docElemNS" type="DOMString"/>
+
+ <implementation var="domImpl"/>
+ <createDocument var="origDoc" obj="domImpl"
+ namespaceURI="namespaceURI"
+ qualifiedName='"test"'
+ doctype="nullDocType"/>
+ <documentElement var="docElem" obj="origDoc"/>
+ <setAttributeNS obj="docElem" namespaceURI="namespaceURI" qualifiedName='"test:attr"' value='"test value"'/>
+
+
+ <!-- create a serializer and write the document -->
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <writeToString var="outputString" obj="serializer" nodeArg="origDoc"/>
+
+ <!-- create an LSInput -->
+ <createLSInput var="input" obj="domImpl"/>
+ <stringData obj="input" value="outputString"/>
+
+ <!-- create parser -->
+ <createLSParser var="parser" obj="domImpl" mode="1" schemaType="NULL_SCHEMA_TYPE"/>
+ <parse var="parsedDoc" obj="parser" input="input"/>
+
+ <documentElement var="docElem" obj="parsedDoc"/>
+
+ <!-- check local name of document element -->
+ <localName var="docElemLocalName" obj="docElem"/>
+ <assertEquals actual="docElemLocalName" expected='"test"' ignoreCase="false" id="docElemLocalName"/>
+
+ <!-- namespace of document element -->
+ <namespaceURI var="docElemNS" obj="docElem" interface="Node"/>
+ <assertEquals actual="docElemNS" expected="namespaceURI" ignoreCase="false" id="docElemNS"/>
+
+ <!-- attribute with namespaceURI namespace -->
+ <getAttributeNS var="attrValue" obj="docElem" namespaceURI="namespaceURI" localName='"attr"'/>
+ <assertEquals actual="attrValue" expected='"test value"' ignoreCase="false" id="properNSAttrValue"/>
+
+
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/GetFeature1.xml b/test/testcases/tests/level3/ls/GetFeature1.xml
new file mode 100644
index 0000000..04a6c12
--- /dev/null
+++ b/test/testcases/tests/level3/ls/GetFeature1.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="GetFeature1">
+ <metadata>
+ <title>GetFeature1</title>
+ <creator>Curt Arnold</creator>
+ <description>DOMImplementationLS can be obtained by DOMImplementation.getFeature("LS", "3.0").</description>
+ <date qualifier="created">2003-12-09</date>
+ <!-- DOMImplementation.getFeature -->
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMImplementation3-getFeature"/>
+ </metadata>
+ <hasFeature feature='"Core"' version='"3.0"'/>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="domImplLS" type="DOMImplementationLS"/>
+ <var name="output" type="LSOutput"/>
+ <implementation var="domImpl"/>
+ <getFeature var="domImplLS" obj="domImpl"
+ feature='"LS"' version='"3.0"' interface="DOMImplementation"/>
+ <assertNotNull actual="domImplLS" id="domImplLSNotNull"/>
+ <createLSOutput var="output" obj="domImplLS"/>
+ <assertNotNull actual="output" id="outputNotNull"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/GetFeature2.xml b/test/testcases/tests/level3/ls/GetFeature2.xml
new file mode 100644
index 0000000..bf2755f
--- /dev/null
+++ b/test/testcases/tests/level3/ls/GetFeature2.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="GetFeature2">
+ <metadata>
+ <title>GetFeature2</title>
+ <creator>Curt Arnold</creator>
+ <description>DOMImplementationLS can be obtained by DOMImplementation.getFeature("+lS", "3.0").</description>
+ <date qualifier="created">2003-12-09</date>
+ <!-- DOMImplementation.getFeature -->
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#DOMImplementation3-getFeature"/>
+ </metadata>
+ <hasFeature feature='"Core"' version='"3.0"'/>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="domImplLS" type="DOMImplementationLS"/>
+ <var name="output" type="LSOutput"/>
+ <implementation var="domImpl"/>
+ <getFeature var="domImplLS" obj="domImpl" feature='"+lS"'
+ version='"3.0"' interface="DOMImplementation"/>
+ <assertNotNull actual="domImplLS" id="domImplLSNotNull"/>
+ <createLSOutput var="output" obj="domImplLS"/>
+ <assertNotNull actual="output" id="outputNotNull"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/HasFeature01.xml b/test/testcases/tests/level3/ls/HasFeature01.xml
new file mode 100644
index 0000000..f98d962
--- /dev/null
+++ b/test/testcases/tests/level3/ls/HasFeature01.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="HasFeature01">
+ <metadata>
+ <title>HasFeature01</title>
+ <creator>Curt Arnold</creator>
+ <description>Implementations should return true for hasFeature("LS", "3.0").</description>
+ <date qualifier="created">2003-12-01</date>
+ <!-- DOMImplementation.hasFeature -->
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-5CED94D7"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="hasLS" type="boolean"/>
+ <implementation var="domImpl"/>
+ <hasFeature var="hasLS" obj="domImpl" feature='"LS"' version='"3.0"'/>
+ <assertTrue actual="hasLS" id="hasFeature_LS3"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/HasFeature02.xml b/test/testcases/tests/level3/ls/HasFeature02.xml
new file mode 100644
index 0000000..7eac1f6
--- /dev/null
+++ b/test/testcases/tests/level3/ls/HasFeature02.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="HasFeature02">
+ <metadata>
+ <title>HasFeature02</title>
+ <creator>Curt Arnold</creator>
+ <description>Implementations should return true for hasFeature("LS", null).</description>
+ <date qualifier="created">2003-12-01</date>
+ <!-- DOMImplementation.hasFeature -->
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-5CED94D7"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="hasLS" type="boolean"/>
+ <var name="version" type="DOMString" isNull="true"/>
+ <implementation var="domImpl"/>
+ <hasFeature var="hasLS" obj="domImpl" feature='"LS"' version="version"/>
+ <assertTrue actual="hasLS" id="hasFeature_LS"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/HasFeature03.xml b/test/testcases/tests/level3/ls/HasFeature03.xml
new file mode 100644
index 0000000..68cf44b
--- /dev/null
+++ b/test/testcases/tests/level3/ls/HasFeature03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="HasFeature03">
+ <metadata>
+ <title>HasFeature03</title>
+ <creator>Curt Arnold</creator>
+ <description>Implementations should return true for hasFeature("Core", "2.0") and hasFeature("Core", null).</description>
+ <date qualifier="created">2003-12-01</date>
+ <!-- DOMImplementation.hasFeature -->
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-5CED94D7"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="hasLS" type="boolean"/>
+ <var name="NULL_VERSION" type="DOMString" isNull="true"/>
+ <implementation var="domImpl"/>
+ <hasFeature var="hasLS" obj="domImpl" feature='"cOrE"' version='"2.0"'/>
+ <assertTrue actual="hasLS" id="hasFeature_Core2"/>
+ <hasFeature var="hasLS" obj="domImpl" feature='"cOrE"' version="NULL_VERSION"/>
+ <assertTrue actual="hasLS" id="hasFeature_Core"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/HasFeature04.xml b/test/testcases/tests/level3/ls/HasFeature04.xml
new file mode 100644
index 0000000..a091cb4
--- /dev/null
+++ b/test/testcases/tests/level3/ls/HasFeature04.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="HasFeature04">
+ <metadata>
+ <title>HasFeature04</title>
+ <creator>Curt Arnold</creator>
+ <description>Implementations should return true for hasFeature("+lS", "3.0").</description>
+ <date qualifier="created">2003-12-09</date>
+ <!-- DOMImplementation.hasFeature -->
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-5CED94D7"/>
+ </metadata>
+ <!-- + on feature names requires L3 Core -->
+ <hasFeature feature='"Core"' version='"3.0"'/>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="hasLS" type="boolean"/>
+ <implementation var="domImpl"/>
+ <hasFeature var="hasLS" obj="domImpl" feature='"+lS"' version='"3.0"'/>
+ <assertTrue actual="hasLS" id="hasFeature_LS3"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/HasFeature05.xml b/test/testcases/tests/level3/ls/HasFeature05.xml
new file mode 100644
index 0000000..a3ba3af
--- /dev/null
+++ b/test/testcases/tests/level3/ls/HasFeature05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="HasFeature05">
+ <metadata>
+ <title>HasFeature05</title>
+ <creator>Curt Arnold</creator>
+ <description>The return values of hasFeature("lS-aSynC", "3.0") and hasFeature("+Ls-AsYNc", "3.0") should be equal.</description>
+ <date qualifier="created">2003-12-09</date>
+ <!-- DOMImplementation.hasFeature -->
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-5CED94D7"/>
+ </metadata>
+ <!-- + on feature names requires L3 Core -->
+ <hasFeature feature='"Core"' version='"3.0"'/>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="hasLS1" type="boolean"/>
+ <var name="hasLS2" type="boolean"/>
+ <implementation var="domImpl"/>
+ <hasFeature var="hasLS1" obj="domImpl" feature='"lS-aSynC"' version='"3.0"'/>
+ <hasFeature var="hasLS2" obj="domImpl" feature='"+Ls-AsYNc"' version='"3.0"'/>
+ <assertEquals actual="hasLS2" expected="hasLS1" id="featuresEqual" ignoreCase="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSParserConfig1.xml b/test/testcases/tests/level3/ls/LSParserConfig1.xml
new file mode 100644
index 0000000..643faf8
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSParserConfig1.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSParserConfig1">
+ <metadata>
+ <title>LSParserConfig1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks initial state of parser configuration.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="parser" type="LSParser"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="resolver" type="LSResourceResolver"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+
+ <implementation var="domImpl"/>
+ <createLSParser var="parser" obj="domImpl" schemaType="NULL_SCHEMA_TYPE" mode="1"/>
+ <domConfig var="config" obj="parser" interface="LSParser"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name='"cHarset-overrides-xml-encoding"'/>
+ <assertTrue actual="state" id="charset-overrides-xml-encoding-is-true"/>
+ <getParameter var="state" obj="config" name='"dIsallow-doctype"'/>
+ <assertFalse actual="state" id="disallow-doctype-is-false"/>
+ <getParameter var="state" obj="config" name='"iGnore-unknown-character-denormalizations"'/>
+ <assertTrue actual="state" id="ignore-unknown-character-denormalizations-is-true"/>
+ <getParameter var="state" obj="config" name='"iNfoset"'/>
+ <assertTrue actual="state" id="infoset-is-true"/>
+ <getParameter var="state" obj="config" name='"nAmespaces"'/>
+ <assertTrue actual="state" id="namespaces-is-true"/>
+ <getParameter var="resolver" obj="config" name='"rEsource-resolver"'/>
+ <assertNull actual="resolver" id="resource-resolver-is-null"/>
+ <getParameter var="state" obj="config" name='"sUpported-media-types-only"'/>
+ <assertFalse actual="state" id="supported-media-types-only-is-false"/>
+ <getParameter var="state" obj="config" name='"wEll-formed"'/>
+ <assertTrue actual="state" id="well-formed-is-true"/>
+
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSParserConfig2.xml b/test/testcases/tests/level3/ls/LSParserConfig2.xml
new file mode 100644
index 0000000..88a87a9
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSParserConfig2.xml
@@ -0,0 +1,88 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSParserConfig2">
+ <metadata>
+ <title>LSParserConfig2</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks getParameterNames and canSetParameter.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="parser" type="LSParser"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="resolver" type="LSResourceResolver"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+ <var name="parameterNames" type="DOMStringList"/>
+ <var name="parameterName" type="DOMString"/>
+ <var name="matchCount" type="int" value="0"/>
+ <var name="paramValue" type="DOMUserData"/>
+ <var name="canSet" type="boolean"/>
+
+ <implementation var="domImpl"/>
+ <createLSParser var="parser" obj="domImpl" schemaType="NULL_SCHEMA_TYPE" mode="1"/>
+ <domConfig var="config" obj="parser" interface="LSParser"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <parameterNames var="parameterNames" obj="config"/>
+ <assertNotNull actual="parameterNames" id="parameterNamesNotNull"/>
+ <for-each collection="parameterNames" member="parameterName">
+ <!-- get the default value of this parameter -->
+ <getParameter var="paramValue" obj="config" name="parameterName"/>
+ <!-- should be able to set to default value -->
+ <canSetParameter var="canSet" obj="config" name="parameterName" value="paramValue"/>
+ <assertTrue actual="canSet" id="canSetToDefaultValue"/>
+ <setParameter obj="config" name="parameterName" value="paramValue"/>
+ <if>
+ <or>
+ <equals actual="parameterName" expected='"canonical-form"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"cdata-sections"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"check-character-normalization"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"comments"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"datatype-normalization"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"entities"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"error-handler"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"infoset"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"namespaces"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"namespace-declarations"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"normalize-characters"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"schema-location"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"schema-type"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"split-cdata-sections"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"validate"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"validate-if-schema"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"well-formed"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"element-content-whitespace"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"charset-overrides-xml-encoding"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"disallow-doctype"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"ignore-unknown-character-denormalizations"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"resource-resolver"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"supported-media-types-only"' ignoreCase="true"/>
+ </or>
+ <increment var="matchCount" value="1"/>
+ </if>
+ </for-each>
+ <assertEquals actual="matchCount" expected="23" id="definedParameterCount" ignoreCase="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSParserConfig3.xml b/test/testcases/tests/level3/ls/LSParserConfig3.xml
new file mode 100644
index 0000000..9c5df82
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSParserConfig3.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSParserConfig3">
+ <metadata>
+ <title>LSParserConfig3</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of charset-overrides-xml-encoding.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="parser" type="LSParser"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+ <var name="propertyName" type="DOMString" value='"cHarset-overrides-xml-encoding"'/>
+
+ <implementation var="domImpl"/>
+ <createLSParser var="parser" obj="domImpl" schemaType="NULL_SCHEMA_TYPE" mode="1"/>
+ <domConfig var="config" obj="parser" interface="LSParser"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalse"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrue"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSParserConfig4.xml b/test/testcases/tests/level3/ls/LSParserConfig4.xml
new file mode 100644
index 0000000..9c4efc8
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSParserConfig4.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSParserConfig4">
+ <metadata>
+ <title>LSParserConfig4</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of disallow-doctype.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="parser" type="LSParser"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"dIsAllow-doctype"'/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+
+ <implementation var="domImpl"/>
+ <createLSParser var="parser" obj="domImpl" mode="1" schemaType="NULL_SCHEMA_TYPE"/>
+ <domConfig var="config" obj="parser" interface="LSParser"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrueIsEffective"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalseIsEffective"/>
+ <else>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR_if_canSetParameter_false">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ </else>
+ </if>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSParserConfig5.xml b/test/testcases/tests/level3/ls/LSParserConfig5.xml
new file mode 100644
index 0000000..633b908
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSParserConfig5.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSParserConfig5">
+ <metadata>
+ <title>LSParserConfig5</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of ignore-unknown-character-denormalizations.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="parser" type="LSParser"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"iGnOre-unknown-character-denormalizations"'/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+
+ <implementation var="domImpl"/>
+ <createLSParser var="parser" obj="domImpl" mode="1" schemaType="NULL_SCHEMA_TYPE"/>
+ <domConfig var="config" obj="parser" interface="LSParser"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="false"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalseIsEffective"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setTrueIsEffective"/>
+ <else>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR_if_not_canSetParameter">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ </else>
+ </if>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSParserConfig6.xml b/test/testcases/tests/level3/ls/LSParserConfig6.xml
new file mode 100644
index 0000000..5ef31ce
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSParserConfig6.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSParserConfig6">
+ <metadata>
+ <title>LSParserConfig6</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of infoset.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="parser" type="LSParser"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+ <var name="propertyName" type="DOMString" value='"iNfoset"'/>
+
+ <implementation var="domImpl"/>
+ <createLSParser var="parser" obj="domImpl" schemaType="NULL_SCHEMA_TYPE" mode="1"/>
+ <domConfig var="config" obj="parser" interface="LSParser"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <!-- setting infoset to false should have no effect
+ that is infoset will still be true -->
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setFalse"/>
+
+ <!-- setting comments to false should change value of
+ infoset to false -->
+ <setParameter obj="config" name='"comments"' value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="falseWhenCommentsFalse"/>
+
+ <!-- setting infoset to true should cause infoset to be true
+ and comments to be true -->
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="resetTrue"/>
+
+ <getParameter var="state" obj="config" name='"comments"'/>
+ <assertTrue actual="state" id="resetTrueComments"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSParserConfig7.xml b/test/testcases/tests/level3/ls/LSParserConfig7.xml
new file mode 100644
index 0000000..fbac979
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSParserConfig7.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSParserConfig7">
+ <metadata>
+ <title>LSParserConfig7</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of namespaces.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="parser" type="LSParser"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"nAmespaces"'/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+
+ <implementation var="domImpl"/>
+ <createLSParser var="parser" obj="domImpl" mode="1" schemaType="NULL_SCHEMA_TYPE"/>
+ <domConfig var="config" obj="parser" interface="LSParser"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="false"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalseIsEffective"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrueIsEffective"/>
+ <else>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR_if_not_canSetParameter">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ </else>
+ </if>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSParserConfig8.xml b/test/testcases/tests/level3/ls/LSParserConfig8.xml
new file mode 100644
index 0000000..2c33caa
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSParserConfig8.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSParserConfig8">
+ <metadata>
+ <title>LSParserConfig8</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of well-formed.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="parser" type="LSParser"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+ <var name="propertyName" type="DOMString" value='"wEll-formed"'/>
+
+ <implementation var="domImpl"/>
+ <createLSParser var="parser" obj="domImpl" mode="1" schemaType="NULL_SCHEMA_TYPE"/>
+ <domConfig var="config" obj="parser" interface="LSParser"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="false"/>
+ <assertFalse actual="canSet" id="canSetFalse"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_EXCEPTION">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSParserConfig9.xml b/test/testcases/tests/level3/ls/LSParserConfig9.xml
new file mode 100644
index 0000000..146c84e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSParserConfig9.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSParserConfig9">
+ <metadata>
+ <title>LSParserConfig9</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of supported-media-types-only.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="parser" type="LSParser"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"sUpported-media-types-only"'/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+
+ <implementation var="domImpl"/>
+ <createLSParser var="parser" obj="domImpl" mode="1" schemaType="NULL_SCHEMA_TYPE"/>
+ <domConfig var="config" obj="parser" interface="LSParser"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrueIsEffective"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalseIsEffective"/>
+ <else>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR_if_canSetParameter_false">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ </else>
+ </if>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSSerializerConfig1.xml b/test/testcases/tests/level3/ls/LSSerializerConfig1.xml
new file mode 100644
index 0000000..5681b30
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSSerializerConfig1.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSSerializerConfig1">
+ <metadata>
+ <title>LSSerializerConfig1</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks initial state of serializer configuration.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+
+ <implementation var="domImpl"/>
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <domConfig var="config" obj="serializer" interface="LSSerializer"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name='"cAnonical-form"'/>
+ <assertFalse actual="state" id="canonical-form-is-false"/>
+ <getParameter var="state" obj="config" name='"dIscard-default-content"'/>
+ <assertTrue actual="state" id="discard-default-content-is-true"/>
+ <getParameter var="state" obj="config" name='"fOrmat-pretty-print"'/>
+ <assertFalse actual="state" id="format-pretty-print-is-false"/>
+ <getParameter var="state" obj="config" name='"iGnore-unknown-character-denormalizations"'/>
+ <assertTrue actual="state" id="ignore-unknown-character-denormalizations-is-true"/>
+
+ <!-- normalize characters is supposed to be true if
+ the implementation supports true -->
+ <getParameter var="state" obj="config" name='"nOrmalize-characters"'/>
+ <canSetParameter var="canSet" obj="config" name='"normalize-characters"' value="true"/>
+ <assertTrue id="normalize-characters-default">
+ <or>
+ <isTrue value="state"/>
+ <isFalse value="canSet"/>
+ </or>
+ </assertTrue>
+
+ <getParameter var="state" obj="config" name='"xMl-declaration"'/>
+ <assertTrue actual="state" id="xml-declaration-is-true"/>
+ <getParameter var="state" obj="config" name='"wEll-formed"'/>
+ <assertTrue actual="state" id="well-formed-is-true"/>
+ <getParameter var="state" obj="config" name='"nAmespaces"'/>
+ <assertTrue actual="state" id="namespaces-is-true"/>
+ <getParameter var="state" obj="config" name='"nAmespace-declarations"'/>
+ <assertTrue actual="state" id="namespace-declarations-is-true"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSSerializerConfig10.xml b/test/testcases/tests/level3/ls/LSSerializerConfig10.xml
new file mode 100644
index 0000000..29b8145
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSSerializerConfig10.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSSerializerConfig10">
+ <metadata>
+ <title>LSSerializerConfig10</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of namespace-declarations.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"nAmespace-declarations"'/>
+
+ <implementation var="domImpl"/>
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <domConfig var="config" obj="serializer" interface="LSSerializer"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalseIsEffective"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrueIsEffective"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSSerializerConfig2.xml b/test/testcases/tests/level3/ls/LSSerializerConfig2.xml
new file mode 100644
index 0000000..8ed0a3c
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSSerializerConfig2.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSSerializerConfig2">
+ <metadata>
+ <title>LSSerializerConfig2</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks getParameterNames and canSetParameter.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="parameterNames" type="DOMStringList"/>
+ <var name="parameterName" type="DOMString"/>
+ <var name="matchCount" type="int" value="0"/>
+ <var name="paramValue" type="DOMUserData"/>
+ <var name="canSet" type="boolean"/>
+
+ <implementation var="domImpl"/>
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <domConfig var="config" obj="serializer" interface="LSSerializer"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <parameterNames var="parameterNames" obj="config"/>
+ <assertNotNull actual="parameterNames" id="parameterNamesNotNull"/>
+ <for-each collection="parameterNames" member="parameterName">
+ <!-- get the default value of this parameter -->
+ <getParameter var="paramValue" obj="config" name="parameterName"/>
+ <!-- should be able to set to default value -->
+ <canSetParameter var="canSet" obj="config" name="parameterName" value="paramValue"/>
+ <assertTrue actual="canSet" id="canSetToDefaultValue"/>
+ <setParameter obj="config" name="parameterName" value="paramValue"/>
+ <if>
+ <or>
+ <equals actual="parameterName" expected='"canonical-form"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"cdata-sections"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"check-character-normalization"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"comments"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"datatype-normalization"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"entities"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"error-handler"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"infoset"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"namespaces"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"namespace-declarations"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"normalize-characters"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"split-cdata-sections"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"validate"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"validate-if-schema"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"well-formed"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"element-content-whitespace"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"discard-default-content"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"format-pretty-print"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"ignore-unknown-character-denormalizations"' ignoreCase="true"/>
+ <equals actual="parameterName" expected='"xml-declaration"' ignoreCase="true"/>
+ </or>
+ <increment var="matchCount" value="1"/>
+ </if>
+ </for-each>
+ <assertEquals actual="matchCount" expected="20" id="definedParameterCount" ignoreCase="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSSerializerConfig3.xml b/test/testcases/tests/level3/ls/LSSerializerConfig3.xml
new file mode 100644
index 0000000..2e5c3cf
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSSerializerConfig3.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSSerializerConfig3">
+ <metadata>
+ <title>LSSerializerConfig3</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of canonical-form.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"cAnonical-form"'/>
+
+ <implementation var="domImpl"/>
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <domConfig var="config" obj="serializer" interface="LSSerializer"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrueIsEffective"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalseIsEffective"/>
+ <else>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR_if_canSetParameter_false">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ </else>
+ </if>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSSerializerConfig4.xml b/test/testcases/tests/level3/ls/LSSerializerConfig4.xml
new file mode 100644
index 0000000..c6b155d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSSerializerConfig4.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSSerializerConfig4">
+ <metadata>
+ <title>LSSerializerConfig4</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of discard-default-content.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"dIscard-default-content"'/>
+
+ <implementation var="domImpl"/>
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <domConfig var="config" obj="serializer" interface="LSSerializer"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalse"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrue"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSSerializerConfig5.xml b/test/testcases/tests/level3/ls/LSSerializerConfig5.xml
new file mode 100644
index 0000000..d6d4ec1
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSSerializerConfig5.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSSerializerConfig5">
+ <metadata>
+ <title>LSSerializerConfig5</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of format-pretty-print.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"fOrmat-pretty-print"'/>
+
+ <implementation var="domImpl"/>
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <domConfig var="config" obj="serializer" interface="LSSerializer"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrueIsEffective"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalseIsEffective"/>
+ <else>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR_if_canSetParameter_false">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ </else>
+ </if>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSSerializerConfig6.xml b/test/testcases/tests/level3/ls/LSSerializerConfig6.xml
new file mode 100644
index 0000000..0e506bf
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSSerializerConfig6.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSSerializerConfig6">
+ <metadata>
+ <title>LSSerializerConfig6</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of ignore-unknown-character-denormalizations.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"iGnore-unknown-character-denormalizations"'/>
+
+ <implementation var="domImpl"/>
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <domConfig var="config" obj="serializer" interface="LSSerializer"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="false"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalseIsEffective"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrueIsEffective"/>
+ <else>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR_if_canSetParameter_false">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ </else>
+ </if>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSSerializerConfig7.xml b/test/testcases/tests/level3/ls/LSSerializerConfig7.xml
new file mode 100644
index 0000000..17f5393
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSSerializerConfig7.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSSerializerConfig7">
+ <metadata>
+ <title>LSSerializerConfig7</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of xml-declaration.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"xMl-declaration"'/>
+
+ <implementation var="domImpl"/>
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <domConfig var="config" obj="serializer" interface="LSSerializer"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="false"/>
+ <assertTrue actual="canSet" id="canSetFalse"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalse"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrue"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSSerializerConfig8.xml b/test/testcases/tests/level3/ls/LSSerializerConfig8.xml
new file mode 100644
index 0000000..6ab2b0b
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSSerializerConfig8.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003-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="LSSerializerConfig8">
+ <metadata>
+ <title>LSSerializerConfig8</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of well-formed.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"wEll-formed"'/>
+
+ <implementation var="domImpl"/>
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <domConfig var="config" obj="serializer" interface="LSSerializer"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="false"/>
+ <if><isTrue value="canSet"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalseIsEffective"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrueIsEffective"/>
+ <else>
+ <assertDOMException id="throw_NOT_SUPPORTED_EXCEPTION">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ </else>
+ </if>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/LSSerializerConfig9.xml b/test/testcases/tests/level3/ls/LSSerializerConfig9.xml
new file mode 100644
index 0000000..ff42555
--- /dev/null
+++ b/test/testcases/tests/level3/ls/LSSerializerConfig9.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="LSSerializerConfig9">
+ <metadata>
+ <title>LSSerializerConfig9</title>
+ <creator>Curt Arnold</creator>
+ <description>Checks support of namespaces.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-config"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="config" type="DOMConfiguration"/>
+ <var name="state" type="boolean"/>
+ <var name="canSet" type="boolean"/>
+ <var name="propertyName" type="DOMString" value='"nAmespaces"'/>
+
+ <implementation var="domImpl"/>
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <domConfig var="config" obj="serializer" interface="LSSerializer"/>
+ <assertNotNull actual="config" id="configNotNull"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="defaultValue"/>
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="true"/>
+ <assertTrue actual="canSet" id="canSetTrue"/>
+ <!-- TODO: Changed in anticipation of forthcoming spec change
+ will need to review final wording -->
+ <canSetParameter var="canSet" obj="config" name="propertyName" value="false"/>
+ <if>
+ <isTrue value="canSet"/>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertFalse actual="state" id="setFalseIsEffective"/>
+ <setParameter obj="config" name="propertyName" value="true"/>
+ <getParameter var="state" obj="config" name="propertyName"/>
+ <assertTrue actual="state" id="setTrueIsEffective"/>
+ <else>
+ <assertDOMException id="settingFalseWhenNotSupported">
+ <NOT_SUPPORTED_ERR>
+ <setParameter obj="config" name="propertyName" value="false"/>
+ </NOT_SUPPORTED_ERR>
+ </assertDOMException>
+ </else>
+ </if>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/SystemId1.xml b/test/testcases/tests/level3/ls/SystemId1.xml
new file mode 100644
index 0000000..ee463c6
--- /dev/null
+++ b/test/testcases/tests/level3/ls/SystemId1.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="SystemId1">
+ <metadata>
+ <title>SystemId1</title>
+ <creator>Curt Arnold</creator>
+ <description>Writes a document to a URL for a temporary file and rereads the document.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-systemId"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSOutput-systemId"/>
+ </metadata>
+ <implementationAttribute name="validating" value="false"/>
+
+ <var name="testDoc" type="Document"/>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="output" type="LSOutput"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="systemId" type="DOMString"/>
+ <var name="checkSystemId" type="DOMString"/>
+ <var name="status" type="boolean"/>
+ <var name="input" type="LSInput"/>
+ <var name="parser" type="LSParser"/>
+ <var name="checkDoc" type="Document"/>
+ <var name="docElem" type="Element"/>
+ <var name="docElemName" type="DOMString"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+
+ <load var="testDoc" href="test0" willBeModified="false"/>
+ <implementation var="domImpl"/>
+
+ <!-- create an LSOutput and connect it to an stock LSWriter -->
+ <createLSOutput var="output" obj="domImpl"/>
+ <!-- check that it was initially null -->
+ <systemId var="checkSystemId" obj="output" interface="LSOutput"/>
+ <assertNull actual="checkSystemId" id="LSOutputSystemIdInitiallyNull"/>
+ <createTempURI var="systemId" scheme="file"/>
+ <systemId obj="output" value="systemId" interface="LSOutput"/>
+ <systemId var="checkSystemId" obj="output" interface="LSOutput"/>
+ <assertEquals expected="systemId"
+ actual="checkSystemId"
+ ignoreCase="false"
+ id="LSOutputSystemIdMatch"/>
+
+ <!-- create a serializer and write a test document -->
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <write var="status" obj="serializer" destination="output" nodeArg="testDoc"/>
+ <assertTrue actual="status" id="writeStatus"/>
+
+ <!-- read the serialized document -->
+ <createLSInput var="input" obj="domImpl"/>
+ <systemId var="checkSystemId" obj="input" interface="LSInput"/>
+ <assertNull actual="checkSystemId" id="LSInputSystemIdInitiallyNull"/>
+ <systemId obj="input" value="systemId" interface="LSInput"/>
+ <systemId var="checkSystemId" obj="input" interface="LSInput"/>
+ <assertEquals expected="systemId"
+ actual="checkSystemId"
+ ignoreCase="false"
+ id="LSInputSystemIdMatch"/>
+ <createLSParser var="parser" obj="domImpl" schemaType="NULL_SCHEMA_TYPE" mode="1"/>
+ <parse var="checkDoc" obj="parser" input="input"/>
+ <assertNotNull actual="checkDoc" id="checkNotNull"/>
+ <documentElement var="docElem" obj="checkDoc"/>
+ <nodeName var="docElemName" obj="docElem"/>
+ <assertEquals expected='"elt0"' actual="docElemName" id="checkDocElemName" ignoreCase="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/SystemId2.xml b/test/testcases/tests/level3/ls/SystemId2.xml
new file mode 100644
index 0000000..2447617
--- /dev/null
+++ b/test/testcases/tests/level3/ls/SystemId2.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="SystemId2">
+ <metadata>
+ <title>SystemId2</title>
+ <creator>Curt Arnold</creator>
+ <description>Writes a document to a URL for a temporary http document and rereads the document.</description>
+ <date qualifier="created">2003-12-08</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSInput-systemId"/>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSOutput-systemId"/>
+ </metadata>
+ <implementationAttribute name="validating" value="false"/>
+
+ <var name="testDoc" type="Document"/>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="output" type="LSOutput"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="systemId" type="DOMString"/>
+ <var name="checkSystemId" type="DOMString"/>
+ <var name="status" type="boolean"/>
+ <var name="input" type="LSInput"/>
+ <var name="parser" type="LSParser"/>
+ <var name="checkDoc" type="Document"/>
+ <var name="docElem" type="Element"/>
+ <var name="docElemName" type="DOMString"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+
+ <load var="testDoc" href="test0" willBeModified="false"/>
+ <implementation var="domImpl"/>
+
+ <!-- create an LSOutput and connect it to an stock LSWriter -->
+ <createLSOutput var="output" obj="domImpl"/>
+ <!-- check that it was initially null -->
+ <systemId var="checkSystemId" obj="output" interface="LSOutput"/>
+ <assertNull actual="checkSystemId" id="LSOutputSystemIdInitiallyNull"/>
+ <createTempURI var="systemId" scheme="http"/>
+ <systemId obj="output" value="systemId" interface="LSOutput"/>
+ <systemId var="checkSystemId" obj="output" interface="LSOutput"/>
+ <assertEquals expected="systemId"
+ actual="checkSystemId"
+ ignoreCase="false"
+ id="LSOutputSystemIdMatch"/>
+
+ <!-- create a serializer and write a test document -->
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <write var="status" obj="serializer" destination="output" nodeArg="testDoc"/>
+ <assertTrue actual="status" id="writeStatus"/>
+
+ <!-- read the serialized document -->
+ <createLSInput var="input" obj="domImpl"/>
+ <systemId var="checkSystemId" obj="input" interface="LSInput"/>
+ <assertNull actual="checkSystemId" id="LSInputSystemIdInitiallyNull"/>
+ <systemId obj="input" value="systemId" interface="LSInput"/>
+ <systemId var="checkSystemId" obj="input" interface="LSInput"/>
+ <assertEquals expected="systemId"
+ actual="checkSystemId"
+ ignoreCase="false"
+ id="LSInputSystemIdMatch"/>
+ <createLSParser var="parser" obj="domImpl" schemaType="NULL_SCHEMA_TYPE" mode="1"/>
+ <parse var="checkDoc" obj="parser" input="input"/>
+ <assertNotNull actual="checkDoc" id="checkNotNull"/>
+ <documentElement var="docElem" obj="checkDoc"/>
+ <nodeName var="docElemName" obj="docElem"/>
+ <assertEquals expected='"elt0"' actual="docElemName" id="checkDocElemName" ignoreCase="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/alltests.xml b/test/testcases/tests/level3/ls/alltests.xml
new file mode 100644
index 0000000..13d2353
--- /dev/null
+++ b/test/testcases/tests/level3/ls/alltests.xml
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003-2004 X-Hive Corporation
+
+ All Rights Reserved. This work is distributed under the W3C(r)
+ Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE suite SYSTEM "dom3.dtd">
+
+<suite xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="alltests">
+ <metadata>
+ <title>DOM Level 3 LS Test Suite</title>
+ <creator>X-Hive Corporation</creator>
+ </metadata>
+ <suite.member href="DOMBuilderFilterTest0.xml"/>
+ <suite.member href="DOMBuilderFilterTest1.xml"/>
+ <suite.member href="DOMBuilderFilterTest2.xml"/>
+ <suite.member href="DOMBuilderTest0.xml"/>
+ <suite.member href="DOMBuilderTest1.xml"/>
+ <suite.member href="DOMBuilderTest2.xml"/>
+ <suite.member href="DOMBuilderTest3.xml"/>
+ <suite.member href="DOMBuilderTest4.xml"/>
+ <suite.member href="DOMBuilderTest5.xml"/>
+ <suite.member href="DOMBuilderTest6.xml"/>
+ <suite.member href="DOMBuilderTest8.xml"/>
+ <suite.member href="DOMEntityResolverTest0.xml"/>
+ <suite.member href="DOMEntityResolverTest1.xml"/>
+ <suite.member href="DOMEntityResolverTest2.xml"/>
+ <suite.member href="DOMImplementationLSTest0.xml"/>
+ <suite.member href="DOMImplementationLSTest1.xml"/>
+ <suite.member href="DOMImplementationLSTest2.xml"/>
+ <suite.member href="DOMImplementationLSTest3.xml"/>
+ <suite.member href="DOMImplementationLSTest4.xml"/>
+ <suite.member href="DOMImplementationLSTest5.xml"/>
+ <suite.member href="DOMInputSourceTest0.xml"/>
+ <suite.member href="DOMInputSourceTest1.xml"/>
+ <suite.member href="DOMInputSourceTest2.xml"/>
+ <suite.member href="DOMInputSourceTest3.xml"/>
+ <suite.member href="DOMInputSourceTest4.xml"/>
+ <suite.member href="DOMInputSourceTest5.xml"/>
+ <suite.member href="DOMInputSourceTest6.xml"/>
+ <suite.member href="DOMWriterFilterTest0.xml"/>
+ <suite.member href="DOMWriterFilterTest1.xml"/>
+ <suite.member href="DOMWriterFilterTest2.xml"/>
+ <suite.member href="DOMWriterFilterTest3.xml"/>
+ <suite.member href="DOMWriterTest0.xml"/>
+ <suite.member href="DOMWriterTest1.xml"/>
+ <suite.member href="DOMWriterTest2.xml"/>
+ <suite.member href="DOMWriterTest3.xml"/>
+ <suite.member href="DOMWriterTest4.xml"/>
+ <suite.member href="DOMWriterTest5.xml"/>
+ <suite.member href="DOMWriterTest6.xml"/>
+
+ <suite.member href="encoding01.xml"/>
+ <suite.member href="GetFeature1.xml"/>
+ <suite.member href="GetFeature2.xml"/>
+ <suite.member href="HasFeature01.xml"/>
+ <suite.member href="HasFeature02.xml"/>
+ <suite.member href="HasFeature03.xml"/>
+ <suite.member href="HasFeature04.xml"/>
+ <suite.member href="HasFeature05.xml"/>
+ <suite.member href="CharacterStream1.xml"/>
+ <suite.member href="SystemId1.xml"/>
+ <suite.member href="SystemId2.xml"/>
+ <suite.member href="CertifiedText1.xml"/>
+ <suite.member href="LSParserConfig1.xml"/>
+ <suite.member href="LSParserConfig2.xml"/>
+ <suite.member href="LSParserConfig3.xml"/>
+ <suite.member href="LSParserConfig4.xml"/>
+ <suite.member href="LSParserConfig5.xml"/>
+ <suite.member href="LSParserConfig6.xml"/>
+ <suite.member href="LSParserConfig7.xml"/>
+ <suite.member href="LSParserConfig8.xml"/>
+ <suite.member href="LSParserConfig9.xml"/>
+ <suite.member href="LSSerializerConfig1.xml"/>
+ <suite.member href="LSSerializerConfig2.xml"/>
+ <suite.member href="LSSerializerConfig3.xml"/>
+ <suite.member href="LSSerializerConfig4.xml"/>
+ <suite.member href="LSSerializerConfig5.xml"/>
+ <suite.member href="LSSerializerConfig6.xml"/>
+ <suite.member href="LSSerializerConfig7.xml"/>
+ <suite.member href="LSSerializerConfig8.xml"/>
+ <suite.member href="LSSerializerConfig9.xml"/>
+ <suite.member href="LSSerializerConfig10.xml"/>
+ <suite.member href="writeToURI1.xml"/>
+ <suite.member href="writeToURI2.xml"/>
+
+ <suite.member href="canonicalform01.xml"/>
+ <suite.member href="canonicalform03.xml"/>
+ <suite.member href="canonicalform04.xml"/>
+ <suite.member href="canonicalform05.xml"/>
+ <suite.member href="canonicalform06.xml"/>
+ <suite.member href="canonicalform08.xml"/>
+ <suite.member href="canonicalform09.xml"/>
+ <suite.member href="canonicalform10.xml"/>
+ <suite.member href="canonicalform11.xml"/>
+ <suite.member href="canonicalform12.xml"/>
+ <suite.member href="canonicalform13.xml"/>
+
+ <suite.member href="cdatasections01.xml"/>
+ <suite.member href="cdatasections02.xml"/>
+ <suite.member href="cdatasections03.xml"/>
+ <suite.member href="cdatasections04.xml"/>
+ <suite.member href="checkcharacternormalization01.xml"/>
+ <suite.member href="checkcharacternormalization02.xml"/>
+ <suite.member href="checkcharacternormalization03.xml"/>
+ <suite.member href="checkcharacternormalization04.xml"/>
+ <suite.member href="comments01.xml"/>
+ <suite.member href="comments02.xml"/>
+ <suite.member href="comments03.xml"/>
+ <suite.member href="comments04.xml"/>
+
+ <suite.member href="datatypenormalization01.xml"/>
+ <suite.member href="datatypenormalization02.xml"/>
+<suite.member href="datatypenormalization03.xml"/>
+<suite.member href="datatypenormalization04.xml"/>
+<suite.member href="datatypenormalization05.xml"/>
+<suite.member href="datatypenormalization06.xml"/>
+<suite.member href="datatypenormalization07.xml"/>
+<suite.member href="datatypenormalization08.xml"/>
+<suite.member href="datatypenormalization09.xml"/>
+<suite.member href="datatypenormalization10.xml"/>
+<suite.member href="datatypenormalization11.xml"/>
+<suite.member href="datatypenormalization12.xml"/>
+<suite.member href="datatypenormalization13.xml"/>
+<suite.member href="datatypenormalization14.xml"/>
+<suite.member href="datatypenormalization15.xml"/>
+<suite.member href="datatypenormalization16.xml"/>
+<suite.member href="datatypenormalization17.xml"/>
+
+<suite.member href="disallowdoctype01.xml"/>
+<suite.member href="discarddefaultcontent01.xml"/>
+<suite.member href="discarddefaultcontent02.xml"/>
+
+ <suite.member href="elementcontentwhitespace01.xml"/>
+ <suite.member href="elementcontentwhitespace02.xml"/>
+ <suite.member href="elementcontentwhitespace03.xml"/>
+ <suite.member href="entities01.xml"/>
+ <suite.member href="entities02.xml"/>
+ <suite.member href="entities03.xml"/>
+ <suite.member href="entities04.xml"/>
+ <suite.member href="entities05.xml"/>
+ <suite.member href="entities06.xml"/>
+ <suite.member href="entities07.xml"/>
+ <suite.member href="entities08.xml"/>
+ <suite.member href="entities09.xml"/>
+
+ <suite.member href="infoset01.xml"/>
+ <suite.member href="infoset02.xml"/>
+ <suite.member href="infoset03.xml"/>
+ <suite.member href="infoset04.xml"/>
+ <suite.member href="infoset05.xml"/>
+ <suite.member href="infoset06.xml"/>
+ <suite.member href="infoset07.xml"/>
+ <suite.member href="infoset08.xml"/>
+
+ <suite.member href="namespacedeclarations01.xml"/>
+ <suite.member href="namespacedeclarations02.xml"/>
+ <suite.member href="namespaces01.xml"/>
+ <suite.member href="namespaces02.xml"/>
+
+ <suite.member href="newline01.xml"/>
+ <suite.member href="newline02.xml"/>
+ <suite.member href="newline03.xml"/>
+
+ <suite.member href="noinputspecified01.xml"/>
+ <suite.member href="nooutputspecified01.xml"/>
+
+ <suite.member href="normalizecharacters01.xml"/>
+ <suite.member href="normalizecharacters02.xml"/>
+ <suite.member href="normalizecharacters03.xml"/>
+ <suite.member href="normalizecharacters04.xml"/>
+
+ <suite.member href="schemalocation01.xml"/>
+ <suite.member href="schemalocation02.xml"/>
+ <suite.member href="schemalocation03.xml"/>
+ <suite.member href="schemalocation04.xml"/>
+ <suite.member href="schematype01.xml"/>
+ <suite.member href="schematype02.xml"/>
+ <suite.member href="schematype03.xml"/>
+ <suite.member href="schematype04.xml"/>
+
+ <suite.member href="splitcdatasections01.xml"/>
+ <suite.member href="splitcdatasections02.xml"/>
+
+ <suite.member href="unsupportedencoding01.xml"/>
+ <suite.member href="validate01.xml"/>
+ <suite.member href="validate02.xml"/>
+ <suite.member href="validate03.xml"/>
+ <suite.member href="validate04.xml"/>
+ <suite.member href="validate05.xml"/>
+ <suite.member href="validate06.xml"/>
+ <suite.member href="validate07.xml"/>
+ <suite.member href="validate08.xml"/>
+ <suite.member href="validateifschema01.xml"/>
+ <suite.member href="validateifschema02.xml"/>
+ <suite.member href="validateifschema03.xml"/>
+ <suite.member href="validateifschema04.xml"/>
+
+ <suite.member href="wellformed01.xml"/>
+ <suite.member href="wellformed02.xml"/>
+ <suite.member href="wellformed03.xml"/>
+
+ <suite.member href="xmldeclaration01.xml"/>
+ <suite.member href="xmldeclaration02.xml"/>
+
+</suite>
diff --git a/test/testcases/tests/level3/ls/canonicalform01.xml b/test/testcases/tests/level3/ls/canonicalform01.xml
new file mode 100644
index 0000000..3c7d4a2
--- /dev/null
+++ b/test/testcases/tests/level3/ls/canonicalform01.xml
@@ -0,0 +1,58 @@
+<?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="canonicalform01">
+<metadata>
+<title>canonicalform01</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with canonical-form = true and see that entity references are not present in
+the element content.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="1" interface="NodeList"/>
+<firstChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="3" ignoreCase="false" id="acrContentIsText"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/canonicalform03.xml b/test/testcases/tests/level3/ls/canonicalform03.xml
new file mode 100644
index 0000000..6646b0e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/canonicalform03.xml
@@ -0,0 +1,57 @@
+<?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="canonicalform03">
+<metadata>
+<title>canonicalform03</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with canonical-form = true and see that CDATASection are not present in
+the parsed document.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="pList" type="NodeList"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="pList" index="1" interface="NodeList"/>
+<lastChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="3" ignoreCase="false" id="childIsText"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/canonicalform04.xml b/test/testcases/tests/level3/ls/canonicalform04.xml
new file mode 100644
index 0000000..1107bfa
--- /dev/null
+++ b/test/testcases/tests/level3/ls/canonicalform04.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform04">
+<metadata>
+<title>canonicalform04</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempt to load a namespace invalid document with canonical-form = true.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<getResourceURI var="resourceURI" href='"namespaces1"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/canonicalform05.xml b/test/testcases/tests/level3/ls/canonicalform05.xml
new file mode 100644
index 0000000..7ccc87d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/canonicalform05.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform05">
+<metadata>
+<title>canonicalform05</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with canonical-form = true and see that attributes for namespace declarations are present.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespace-declarations"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="canSet" type="boolean"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="node" obj="elem" name='"xmlns:dmstc"'/>
+<assertNotNull actual="node" id="nsAttrNotNull"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/canonicalform06.xml b/test/testcases/tests/level3/ls/canonicalform06.xml
new file mode 100644
index 0000000..9a3999d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/canonicalform06.xml
@@ -0,0 +1,61 @@
+<?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="canonicalform06">
+<metadata>
+<title>canonicalform06</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with canonical-form and validate = true and check that
+element content whitespace is not eliminated.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetCanonicalForm" type="boolean"/>
+<var name="elemList" type="NodeList"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetCanonicalForm" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><and><isTrue value="canSetValidate"/><isTrue value="canSetCanonicalForm"/></and>
+<setParameter obj="domConfig" name='"validate"' value="true"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<firstChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="3" ignoreCase="false" id="nodeIsText"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/canonicalform08.xml b/test/testcases/tests/level3/ls/canonicalform08.xml
new file mode 100644
index 0000000..6e76d6a
--- /dev/null
+++ b/test/testcases/tests/level3/ls/canonicalform08.xml
@@ -0,0 +1,113 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform08">
+<metadata>
+<title>canonicalform08</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document based on section 3.1 with canonical-form set to true and check normalized document.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="bodyList" type="NodeList"/>
+<var name="body" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="length" type="int"/>
+<var name="text" type="Text"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetCanonicalForm" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSetCanonicalForm" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSetCanonicalForm"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<getResourceURI var="resourceURI" href='"canonicalform01"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<firstChild var="node" obj="doc" interface="Node"/>
+<nodeType var="nodeType" obj="node" interface="Node"/>
+<assertEquals expected="7" actual="nodeType" ignoreCase="false" id="PIisFirstChild"/>
+<data var="nodeValue" obj="node" interface="ProcessingInstruction"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="36" ignoreCase="false" id="piDataLength"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisSecondChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="secondChildLength"/>
+<!-- next sibling is document element -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="1" actual="nodeType" ignoreCase="false" id="ElementisThirdChild"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisFourthChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="fourthChildLength"/>
+<!-- next sibling is a processing instruction -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="7" actual="nodeType" ignoreCase="false" id="PIisFifthChild"/>
+<data var="nodeValue" obj="node" interface="ProcessingInstruction"/>
+<assertEquals actual="nodeValue" expected='""' ignoreCase="false" id="trailingPIData"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisSixthChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="sixthChildLength"/>
+<!-- next sibling is a comment -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="8" actual="nodeType" ignoreCase="false" id="CommentisSeventhChild"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisEighthChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="eighthChildLength"/>
+<!-- next sibling is a comment -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="8" actual="nodeType" ignoreCase="false" id="CommentisNinthChild"/>
+<!-- next sibling is a null -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<assertNull actual="node" id="TenthIsNull"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/canonicalform09.xml b/test/testcases/tests/level3/ls/canonicalform09.xml
new file mode 100644
index 0000000..035c499
--- /dev/null
+++ b/test/testcases/tests/level3/ls/canonicalform09.xml
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform09">
+<metadata>
+<title>canonicalform09</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document based on section 3.1 with canonical-form set to true
+and comments to false and check normalized document.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="bodyList" type="NodeList"/>
+<var name="body" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="canSet" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="nodeType" type="int"/>
+<var name="length" type="int"/>
+<var name="text" type="Text"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetCanonicalForm" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSetCanonicalForm" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSetCanonicalForm"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<setParameter obj="domConfig" name='"comments"' value="false"/>
+<getResourceURI var="resourceURI" href='"canonicalform01"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<firstChild var="node" obj="doc" interface="Node"/>
+<nodeType var="nodeType" obj="node" interface="Node"/>
+<assertEquals expected="7" actual="nodeType" ignoreCase="false" id="PIisFirstChild"/>
+<data var="nodeValue" obj="node" interface="ProcessingInstruction"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="36" ignoreCase="false" id="piDataLength"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisSecondChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="secondChildLength"/>
+<!-- next sibling is document element -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="1" actual="nodeType" ignoreCase="false" id="ElementisThirdChild"/>
+<!-- next sibling is a #0A line feed -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="3" actual="nodeType" ignoreCase="false" id="TextisFourthChild"/>
+<nodeValue var="nodeValue" obj="node"/>
+<length var="length" obj="nodeValue" interface="DOMString"/>
+<assertEquals actual="length" expected="1" ignoreCase="false" id="fourthChildLength"/>
+<!-- next sibling is a processing instruction -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals expected="7" actual="nodeType" ignoreCase="false" id="PIisFifthChild"/>
+<data var="nodeValue" obj="node" interface="ProcessingInstruction"/>
+<assertEquals actual="nodeValue" expected='""' ignoreCase="false" id="trailingPIData"/>
+<!-- next sibling is a null -->
+<nextSibling interface="Node" var="node" obj="node"/>
+<assertNull actual="node" id="SixthIsNull"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/canonicalform10.xml b/test/testcases/tests/level3/ls/canonicalform10.xml
new file mode 100644
index 0000000..6149186
--- /dev/null
+++ b/test/testcases/tests/level3/ls/canonicalform10.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform10">
+<metadata>
+<title>canonicalform10</title>
+<creator>Curt Arnold</creator>
+<description>
+Check elimination of unnecessary namespace prefixes when
+normalized with canonical-form = true.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="false"/>
+<var name="doc" type="Document"/>
+<var name="divList" type="NodeList"/>
+<var name="div" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="node" type="Node"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetCanonicalForm" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSetCanonicalForm" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSetCanonicalForm"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<getResourceURI var="resourceURI" href='"canonicalform03"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="divList" obj="doc"
+ tagname='"div"' interface="Document"/>
+<item var="div" obj="divList" index="5" interface="NodeList"/>
+<getAttributeNode var="node" obj="div" name='"xmlns"'/>
+<assertNotNull actual="node" id="xmlnsPresent"/>
+<getAttributeNode var="node" obj="div" name='"xmlns:a"'/>
+<assertNull actual="node" id="xmlnsANotPresent"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/canonicalform11.xml b/test/testcases/tests/level3/ls/canonicalform11.xml
new file mode 100644
index 0000000..126ac06
--- /dev/null
+++ b/test/testcases/tests/level3/ls/canonicalform11.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform11">
+<metadata>
+<title>canonicalform11</title>
+<creator>Curt Arnold</creator>
+<description>
+Check that default attributes are made explicitly specified.
+</description>
+<date qualifier="created">2004-02-26</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<implementationAttribute name="validating" value="false"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="attr" type="Attr"/>
+<var name="attrValue" type="DOMString"/>
+<var name="attrSpecified" type="boolean"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetCanonicalForm" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSetCanonicalForm" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSetCanonicalForm"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<getResourceURI var="resourceURI" href='"canonicalform03"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc"
+ tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="attr" obj="elem" name='"title"'/>
+<assertNotNull actual="attr" id="titlePresent"/>
+<specified var="attrSpecified" obj="attr"/>
+<assertTrue actual="attrSpecified" id="titleSpecified"/>
+<nodeValue var="attrValue" obj="attr"/>
+<assertEquals actual="attrValue" expected='"default"' ignoreCase="false"
+ id="titleValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/canonicalform12.xml b/test/testcases/tests/level3/ls/canonicalform12.xml
new file mode 100644
index 0000000..5a4e6aa
--- /dev/null
+++ b/test/testcases/tests/level3/ls/canonicalform12.xml
@@ -0,0 +1,50 @@
+<?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="canonicalform12">
+<metadata>
+<title>canonicalform12</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with canonical-form = true and see that the DocumentType node is eliminated.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="doctype" type="DocumentType"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"canonical-form"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<doctype var="doctype" obj="doc"/>
+<assertNull actual="doctype" id="doctypeIsNull"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/canonicalform13.xml b/test/testcases/tests/level3/ls/canonicalform13.xml
new file mode 100644
index 0000000..6399714
--- /dev/null
+++ b/test/testcases/tests/level3/ls/canonicalform13.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="canonicalform13">
+<metadata>
+<title>canonicalform13</title>
+<creator>Curt Arnold</creator>
+<description>
+Serializing an XML 1.1 document when canonical-form raises a SERIALIZE_ERR.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-canonical-form"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="output" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<canSetParameter var="canSet" obj="domConfig" name='"canonical-form"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='""' value="true"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"test"' doctype="docType"/>
+<try>
+ <xmlVersion obj="doc" value='"1.1"' interface="Document"/>
+ <catch>
+ <DOMException code="NOT_SUPPORTED_ERR">
+ <return/>
+ </DOMException>
+ </catch>
+</try>
+<assertLSException id="throw_SERIALIZE_ERR">
+ <SERIALIZE_ERR>
+ <writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+ </SERIALIZE_ERR>
+</assertLSException>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/cdatasections01.xml b/test/testcases/tests/level3/ls/cdatasections01.xml
new file mode 100644
index 0000000..133c753
--- /dev/null
+++ b/test/testcases/tests/level3/ls/cdatasections01.xml
@@ -0,0 +1,53 @@
+<?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="cdatasections01">
+<metadata>
+<title>cdatasections01</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with cdata-sections = false and see that CDATASection are not present in
+the parsed document.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-cdata-sections"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="pList" type="NodeList"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="false"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="pList" index="1" interface="NodeList"/>
+<lastChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="3" ignoreCase="false" id="childIsText"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/cdatasections02.xml b/test/testcases/tests/level3/ls/cdatasections02.xml
new file mode 100644
index 0000000..aa60454
--- /dev/null
+++ b/test/testcases/tests/level3/ls/cdatasections02.xml
@@ -0,0 +1,53 @@
+<?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="cdatasections02">
+<metadata>
+<title>cdatasections02</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with cdata-sections = true and see that CDATASection are present in
+the parsed document.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-cdata-sections"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="pList" type="NodeList"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="pList" index="1" interface="NodeList"/>
+<lastChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="4" ignoreCase="false" id="childIsCDATA"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/cdatasections03.xml b/test/testcases/tests/level3/ls/cdatasections03.xml
new file mode 100644
index 0000000..0e03e82
--- /dev/null
+++ b/test/testcases/tests/level3/ls/cdatasections03.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="cdatasections03">
+<metadata>
+<title>cdatasections03</title>
+<creator>Curt Arnold</creator>
+<description>
+CDATASections should be preserved when cdata-sections is true.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-cdata-sections"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="newNode" type="Node"/>
+<var name="output" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"test"' doctype="docType"/>
+<documentElement var="docElem" obj="doc"/>
+<createCDATASection var="newNode" obj="doc" data='"foo"'/>
+<appendChild var="retNode" obj="docElem" newChild="newNode"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="true"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<assertTrue id="containsCDATA"><contains obj="output" str='"![CDATA[foo]]"' interface="DOMString"/></assertTrue>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/cdatasections04.xml b/test/testcases/tests/level3/ls/cdatasections04.xml
new file mode 100644
index 0000000..78b9110
--- /dev/null
+++ b/test/testcases/tests/level3/ls/cdatasections04.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="cdatasections04">
+<metadata>
+<title>cdatasections04</title>
+<creator>Curt Arnold</creator>
+<description>
+CDATASections should be eliminated when cdata-sections is false.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-cdata-sections"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="newNode" type="Node"/>
+<var name="output" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"test"' doctype="docType"/>
+<documentElement var="docElem" obj="doc"/>
+<createCDATASection var="newNode" obj="doc" data='"foo"'/>
+<appendChild var="retNode" obj="docElem" newChild="newNode"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="false"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<assertTrue id="containsCDATA"><contains obj="output" str='"&gt;foo&lt;/"' interface="DOMString"/></assertTrue>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/checkcharacternormalization01.xml b/test/testcases/tests/level3/ls/checkcharacternormalization01.xml
new file mode 100644
index 0000000..4b55e4e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/checkcharacternormalization01.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="checkcharacternormalization01">
+<metadata>
+<title>checkcharacternormalization01</title>
+<creator>Curt Arnold</creator>
+<description>
+Parsing a non-Unicode normalized document should not raise an exception if check-character-normalization
+is false.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-check-character-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="nullSchemaLanguage" type="DOMString" isNull="true"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaLanguage"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"check-character-normalization"' value="false"/>
+<getResourceURI var="resourceURI" href='"characternormalization1"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<assertNotNull actual="doc" id="docNotNull"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/checkcharacternormalization02.xml b/test/testcases/tests/level3/ls/checkcharacternormalization02.xml
new file mode 100644
index 0000000..06217fa
--- /dev/null
+++ b/test/testcases/tests/level3/ls/checkcharacternormalization02.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="checkcharacternormalization02">
+<metadata>
+<title>checkcharacternormalization02</title>
+<creator>Curt Arnold</creator>
+<description>
+Parsing a non-Unicode normalized document should raise PARSE_ERR if check-character-normalization
+is false.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-check-character-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="nullSchemaLanguage" type="DOMString" isNull="true"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="errorCount" type="int" value="0"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaLanguage"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"check-character-normalization"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"check-character-normalization"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getResourceURI var="resourceURI" href='"characternormalization1"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <if><greater actual="severity" expected="1"/>
+ <assertEquals actual="severity" expected="2" id="isError" ignoreCase="false"/>
+ <assertEquals actual="type" expected='"check-character-normalization-failure"' id="isCheck_Failure" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneError"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/checkcharacternormalization03.xml b/test/testcases/tests/level3/ls/checkcharacternormalization03.xml
new file mode 100644
index 0000000..ae2012d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/checkcharacternormalization03.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="checkcharacternormalization03">
+<metadata>
+<title>checkcharacternormalization03</title>
+<creator>Curt Arnold</creator>
+<description>
+Characters should not be checked for normalization on serialization if check-character-normalization = false.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-check-character-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="newNode" type="Node"/>
+<var name="output" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"suc&#x327;on"' doctype="docType"/>
+<documentElement var="docElem" obj="doc"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"check-character-normalization"' value="false"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="false"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/checkcharacternormalization04.xml b/test/testcases/tests/level3/ls/checkcharacternormalization04.xml
new file mode 100644
index 0000000..b79fb89
--- /dev/null
+++ b/test/testcases/tests/level3/ls/checkcharacternormalization04.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="checkcharacternormalization04">
+<metadata>
+<title>checkcharacternormalization04</title>
+<creator>Curt Arnold</creator>
+<description>
+Characters should be checked for normalization on serialization if check-character-normalization = true.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-check-character-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="newNode" type="Node"/>
+<var name="output" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="errorCount" type="int" value="0"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"suc&#x327;on"' doctype="docType"/>
+<documentElement var="docElem" obj="doc"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<canSetParameter var="canSet" obj="domConfig" name='"check-character-normalization"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"check-character-normalization"' value="true"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<assertLSException id="throw_SERIALIZE_ERR">
+ <SERIALIZE_ERR>
+ <writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+ </SERIALIZE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <if><equals actual="type" expected='"check-character-normalization-failure"' ignoreCase="false"/>
+ <assertEquals actual="severity" expected="2" ignoreCase="false" id="severityError"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertTrue id="hasErrors"><greater actual="errorCount" expected="0"/></assertTrue>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/comments01.xml b/test/testcases/tests/level3/ls/comments01.xml
new file mode 100644
index 0000000..9fec420
--- /dev/null
+++ b/test/testcases/tests/level3/ls/comments01.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="comments01">
+<metadata>
+<title>comments01</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with comments = false and see that comments are not present in
+the parsed document.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-comments"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"comments"' value="false"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<documentElement var="docElem" obj="doc"/>
+<previousSibling var="node" obj="docElem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="10" ignoreCase="false" id="nodeIsDocType"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/comments02.xml b/test/testcases/tests/level3/ls/comments02.xml
new file mode 100644
index 0000000..1fc4a49
--- /dev/null
+++ b/test/testcases/tests/level3/ls/comments02.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="comments02">
+<metadata>
+<title>comments02</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with comments = true and see that comments are present in
+the parsed document.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-comments"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"comments"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<documentElement var="docElem" obj="doc"/>
+<previousSibling var="node" obj="docElem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="8" ignoreCase="false" id="nodeIsDocType"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/comments03.xml b/test/testcases/tests/level3/ls/comments03.xml
new file mode 100644
index 0000000..771d7fb
--- /dev/null
+++ b/test/testcases/tests/level3/ls/comments03.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="comments03">
+<metadata>
+<title>comments03</title>
+<creator>Curt Arnold</creator>
+<description>
+Comments should be preserved when comments is true.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-comments"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="newNode" type="Node"/>
+<var name="output" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"test"' doctype="docType"/>
+<documentElement var="docElem" obj="doc"/>
+<createComment var="newNode" obj="doc" data='"foo"'/>
+<appendChild var="retNode" obj="docElem" newChild="newNode"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"comments"' value="true"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<assertTrue id="hasComment"><contains obj="output" str='"&gt;&lt;!--foo--&gt;&lt;/"' interface="DOMString"/></assertTrue>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/comments04.xml b/test/testcases/tests/level3/ls/comments04.xml
new file mode 100644
index 0000000..e7d4686
--- /dev/null
+++ b/test/testcases/tests/level3/ls/comments04.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="comments04">
+<metadata>
+<title>comments04</title>
+<creator>Curt Arnold</creator>
+<description>
+Comments should be discarded when comments is false.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-comments"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="newNode" type="Node"/>
+<var name="output" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"test"' doctype="docType"/>
+<documentElement var="docElem" obj="doc"/>
+<createComment var="newNode" obj="doc" data='"foo"'/>
+<appendChild var="retNode" obj="docElem" newChild="newNode"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"comments"' value="false"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<assertFalse id="noComment"><contains obj="output" str='"&lt;!--"' interface="DOMString"/></assertFalse>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization01.xml b/test/testcases/tests/level3/ls/datatypenormalization01.xml
new file mode 100644
index 0000000..b2e70e8
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization01.xml
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization01">
+<metadata>
+<title>datatypenormalization01</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if double values were normalized.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"double"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"+0003.141592600E+0000"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"+0003.141592600E+0000"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"-31415926.00E-7 2.718"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"NaN"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"NaN"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"INF -INF"' ignoreCase="false" id="secondList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"1"' ignoreCase="false" id="thirdValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"1"' ignoreCase="false" id="thirdUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"-0"' ignoreCase="false" id="thirdList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization02.xml b/test/testcases/tests/level3/ls/datatypenormalization02.xml
new file mode 100644
index 0000000..6b386f6
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization02.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization02">
+<metadata>
+<title>datatypenormalization02</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if decimal values were normalized.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"decimal"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"+0003.141592600"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"+0003.141592600"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"+10 .1"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"01"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"01"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"-.001"' ignoreCase="false" id="secondList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization03.xml b/test/testcases/tests/level3/ls/datatypenormalization03.xml
new file mode 100644
index 0000000..6389807
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization03.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization03">
+<metadata>
+<title>datatypenormalization03</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if boolean values were whitespace normalized.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"boolean"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"true"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"false"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"false true false"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"1"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"0"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"0 1 0"' ignoreCase="false" id="secondList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization04.xml b/test/testcases/tests/level3/ls/datatypenormalization04.xml
new file mode 100644
index 0000000..951acc9
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization04.xml
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization04">
+<metadata>
+<title>datatypenormalization04</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if float values were normalized.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"float"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"+0003.141592600E+0000"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"+0003.141592600E+0000"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"-31415926.00E-7 2.718"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"NaN"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"NaN"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"INF -INF"' ignoreCase="false" id="secondList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"1"' ignoreCase="false" id="thirdValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"1"' ignoreCase="false" id="thirdUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"-0"' ignoreCase="false" id="thirdList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization05.xml b/test/testcases/tests/level3/ls/datatypenormalization05.xml
new file mode 100644
index 0000000..3c62344
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization05.xml
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization05">
+<metadata>
+<title>datatypenormalization05</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if dateTime values were correctly normalized.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"dateTime"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00-05:00"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"2004-01-21T20:30:00-05:00"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00 2004-01-21T15:30:00Z"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0000-05:00"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0000-05:00"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0000"' ignoreCase="false" id="secondList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0001-05:00"' ignoreCase="false" id="thirdValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0001-05:00"' ignoreCase="false" id="thirdUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"2004-01-21T15:30:00.0001"' ignoreCase="false" id="thirdList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization06.xml b/test/testcases/tests/level3/ls/datatypenormalization06.xml
new file mode 100644
index 0000000..ef03628
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization06.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization06">
+<metadata>
+<title>datatypenormalization06</title>
+<creator>Curt Arnold</creator>
+<description>
+Normalize document with datatype-normalization set to true.
+Check if time values were normalized.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"time"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"15:30:00-05:00"' ignoreCase="false" id="firstValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"15:30:00-05:00"' ignoreCase="false" id="firstUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"15:30:00"' ignoreCase="false" id="firstList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"15:30:00.0000-05:00"' ignoreCase="false" id="secondValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"15:30:00.0000-05:00"' ignoreCase="false" id="secondUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"15:30:00.0000"' ignoreCase="false" id="secondList"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <getAttribute var="str" obj="element" name='"value"'/>
+ <assertEquals actual="str" expected='"15:30:00.0001-05:00"' ignoreCase="false" id="thirdValue"/>
+ <getAttribute var="str" obj="element" name='"union"'/>
+ <assertEquals actual="str" expected='"15:30:00.0001-05:00"' ignoreCase="false" id="thirdUnion"/>
+ <textContent var="str" obj="element"/>
+ <assertEquals actual="str" expected='"15:30:00.0001"' ignoreCase="false" id="thirdList"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization07.xml b/test/testcases/tests/level3/ls/datatypenormalization07.xml
new file mode 100644
index 0000000..a2faadd
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization07.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization07">
+<metadata>
+<title>datatypenormalization07</title>
+<creator>Curt Arnold</creator>
+<description>
+The default value for the double element must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"double"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <assertEquals actual="str" expected='"3.1415926E0"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization08.xml b/test/testcases/tests/level3/ls/datatypenormalization08.xml
new file mode 100644
index 0000000..e16df49
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization08.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization08">
+<metadata>
+<title>datatypenormalization08</title>
+<creator>Curt Arnold</creator>
+<description>
+The default value for the decimal element must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<implementationAttribute name="namespaceAware" value="true"/>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"decimal"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <assertEquals actual="str" expected='"3.1415926"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization09.xml b/test/testcases/tests/level3/ls/datatypenormalization09.xml
new file mode 100644
index 0000000..8320ed2
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization09.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization09">
+<metadata>
+<title>datatypenormalization09</title>
+<creator>Curt Arnold</creator>
+<description>
+The default value for the boolean element must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"boolean"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <assertEquals actual="str" expected='"true"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization10.xml b/test/testcases/tests/level3/ls/datatypenormalization10.xml
new file mode 100644
index 0000000..f146b95
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization10.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization10">
+<metadata>
+<title>datatypenormalization10</title>
+<creator>Curt Arnold</creator>
+<description>
+The default value for the float element must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"float"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <assertEquals actual="str" expected='"3.1415926E0"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization11.xml b/test/testcases/tests/level3/ls/datatypenormalization11.xml
new file mode 100644
index 0000000..dee2231
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization11.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization11">
+<metadata>
+<title>datatypenormalization11</title>
+<creator>Curt Arnold</creator>
+<description>
+The default value for the dateTime element must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"dateTime"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <!-- .0 would not be correct, see http://www.w3.org/2001/05/xmlschema-errata#E2-63 -->
+ <assertEquals actual="str" expected='"2004-01-21T20:30:00Z"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization12.xml b/test/testcases/tests/level3/ls/datatypenormalization12.xml
new file mode 100644
index 0000000..9cc9132
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization12.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization12">
+<metadata>
+<title>datatypenormalization12</title>
+<creator>Curt Arnold</creator>
+<description>
+Default values must be provided in canonical lexical form.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"'
+ localName='"time"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <getAttribute var="str" obj="element" name='"default"'/>
+ <!-- .0 would not be correct, see http://www.w3.org/2001/05/xmlschema-errata#E2-63 -->
+ <assertEquals actual="str" expected='"20:30:00Z"' ignoreCase="false" id="firstValue"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization13.xml b/test/testcases/tests/level3/ls/datatypenormalization13.xml
new file mode 100644
index 0000000..efee98f
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization13.xml
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization13">
+<metadata>
+<title>datatypenormalization13</title>
+<creator>Curt Arnold</creator>
+<description>
+Parse document with datatype-normalization set to true.
+Check if string values were normalized per default whitespace
+facet of xsd:string.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization2"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization2"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"em"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <assertNotNull actual="childNode" id="childNodeNotNull"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='" EMP 0001 "' ignoreCase="false" id="content"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization14.xml b/test/testcases/tests/level3/ls/datatypenormalization14.xml
new file mode 100644
index 0000000..eca745a
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization14.xml
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization14">
+<metadata>
+<title>datatypenormalization14</title>
+<creator>Curt Arnold</creator>
+<description>
+Parse document with datatype-normalization set to true.
+Check if string values were normalized per explicit whitespace=preserve.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization2"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization2"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"acronym"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <assertNotNull actual="childNode" id="childNodeNotNull"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='" EMP 0001 "' ignoreCase="false" id="content"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization15.xml b/test/testcases/tests/level3/ls/datatypenormalization15.xml
new file mode 100644
index 0000000..f7bc3cf
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization15.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization15">
+<metadata>
+<title>datatypenormalization15</title>
+<creator>Curt Arnold</creator>
+<description>
+Parse document with datatype-normalization set to true.
+Check if string values were normalized per an explicit whitespace=collapse.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization2"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization2"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"code"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content1"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content2"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content3"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization16.xml b/test/testcases/tests/level3/ls/datatypenormalization16.xml
new file mode 100644
index 0000000..02af8ce
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization16.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization16">
+<metadata>
+<title>datatypenormalization16</title>
+<creator>Curt Arnold</creator>
+<description>
+Parse document with datatype-normalization set to true.
+Check if string values were normalized per explicit whitespace=replace.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetNormalization" type="boolean"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/><return/></if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetNormalization" obj="domConfig" name='"datatype-normalization2"' value="true"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if>
+ <and>
+ <isTrue value="canSetNormalization"/>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetXMLSchema"/>
+ </and>
+ <setParameter obj="domConfig" name='"datatype-normalization"' value="true"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"datatype_normalization2"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"sup"'
+ interface="Document"/>
+ <item var="element" obj="elemList" interface="NodeList" index="0"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='" EMP 0001 "' ignoreCase="false" id="content1"/>
+ <item var="element" obj="elemList" interface="NodeList" index="1"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content2"/>
+ <item var="element" obj="elemList" interface="NodeList" index="2"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content3"/>
+ <item var="element" obj="elemList" interface="NodeList" index="3"/>
+ <firstChild var="childNode" obj="element" interface="Node"/>
+ <nodeValue var="childValue" obj="childNode"/>
+ <assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content4"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/datatypenormalization17.xml b/test/testcases/tests/level3/ls/datatypenormalization17.xml
new file mode 100644
index 0000000..32918fc
--- /dev/null
+++ b/test/testcases/tests/level3/ls/datatypenormalization17.xml
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="datatypenormalization17">
+<metadata>
+<title>datatypenormalization17</title>
+<creator>Curt Arnold</creator>
+<description>
+Parse document with datatype-normalization set to false.
+Check if string values were not normalized per an explicit whitespace=collapse.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/>
+ <createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+</if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<if><isTrue value="canSetValidate"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+</if>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if><isTrue value="canSetXMLSchema"/>
+ <setParameter obj="domConfig" name='"schema-type"' value="xsdNS"/>
+</if>
+<setParameter obj="domConfig" name='"datatype-normalization"' value="false"/>
+<getResourceURI var="resourceURI" href='"datatype_normalization2"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"code"'
+ interface="Document"/>
+<item var="element" obj="elemList" interface="NodeList" index="1"/>
+<firstChild var="childNode" obj="element" interface="Node"/>
+<nodeValue var="childValue" obj="childNode"/>
+<assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content2"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/disallowdoctype01.xml b/test/testcases/tests/level3/ls/disallowdoctype01.xml
new file mode 100644
index 0000000..68da959
--- /dev/null
+++ b/test/testcases/tests/level3/ls/disallowdoctype01.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="disallowdoctype01">
+<metadata>
+<title>disallowdoctype01</title>
+<creator>Curt Arnold</creator>
+<description>
+Parsing a document with a doctype should throw a PARSE_ERR if disallow-doctype is true.
+is false.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-disallow-doctype"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="nullSchemaLanguage" type="DOMString" isNull="true"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="errorCount" type="int" value="0"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaLanguage"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"disallow-doctype"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"disallow-doctype"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getResourceURI var="resourceURI" href='"test3"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <if><greater actual="severity" expected="1"/>
+ <assertEquals actual="severity" expected="3" id="isFatalError" ignoreCase="false"/>
+ <assertEquals actual="type" expected='"doctype-not-allowed"' id="isDoctypeNotAllowed" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneError"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/discarddefaultcontent01.xml b/test/testcases/tests/level3/ls/discarddefaultcontent01.xml
new file mode 100644
index 0000000..9f363e7
--- /dev/null
+++ b/test/testcases/tests/level3/ls/discarddefaultcontent01.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="discarddefaultcontent01">
+<metadata>
+<title>discarddefaultcontent01</title>
+<creator>Curt Arnold</creator>
+<description>
+Default attributes should be not be serialized if discard-default-content is true.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-discard-default-content"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="newNode" type="Node"/>
+<var name="output" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"discard-default-content"' value="true"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<!-- explicit dir='rtl' should not appear in serialized document -->
+<assertFalse id="noDirAttr"><contains obj="output" str='"dir="' interface="DOMString"/></assertFalse>
+</test>
diff --git a/test/testcases/tests/level3/ls/discarddefaultcontent02.xml b/test/testcases/tests/level3/ls/discarddefaultcontent02.xml
new file mode 100644
index 0000000..f3d1bba
--- /dev/null
+++ b/test/testcases/tests/level3/ls/discarddefaultcontent02.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="discarddefaultcontent02">
+<metadata>
+<title>discarddefaultcontent02</title>
+<creator>Curt Arnold</creator>
+<description>
+Default attributes should be explicitly serialized if discard-default-content is false.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-discard-default-content"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="newNode" type="Node"/>
+<var name="output" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"discard-default-content"' value="false"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<!-- explicit dir='rtl' should appear in serialized document -->
+<assertTrue id="hasDirAttr"><contains obj="output" str='"dir="' interface="DOMString"/></assertTrue>
+</test>
diff --git a/test/testcases/tests/level3/ls/dom3tests.ent b/test/testcases/tests/level3/ls/dom3tests.ent
new file mode 100644
index 0000000..cfa23ad
--- /dev/null
+++ b/test/testcases/tests/level3/ls/dom3tests.ent
@@ -0,0 +1,78 @@
+<!ENTITY level3 "http://www.w3.org/2001/DOM-Test-Suite/Level-3">
+<!ENTITY spec "http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save">
+<!ENTITY date "<date qualifier='created'>2002-03-23</date>">
+<!ENTITY contributor "<contributor>X-Hive Corporation</contributor>">
+<!ENTITY creator "<creator>Jeroen van Rotterdam</creator>">
+
+<!ENTITY vars "
+ <var name='implementation' type='DOMImplementation'/>
+ <var name='lsImplementation' type='DOMImplementationLS'/>
+ <var name='inputSource' type='LSInput'/>
+ <var name='document' type='Document'/>
+ <var name='writer' type='LSSerializer'/>
+ <var name='parser' type='LSParser'/>
+
+ <!-- constants -->
+ <var name='MODE_SYNCHRONOUS' type='short' value='1'/>
+ <var name='MODE_ASYNCHRONOUS' type='short' value='2'/>
+ <var name='DTD_SCHEMATYPE' type='DOMString' value='&quot;http://www.w3.org/TR/REC-xml&quot;'/>
+ <var name='SCHEMA_SCHEMATYPE' type='DOMString' value='&quot;http://www.w3.org/2001/XMLSchema&quot;'/>
+ <var name='NULL_SCHEMATYPE' type='DOMString' isNull='true'/>
+
+ <!-- action types DOMParser.parseWithContext -->
+ <var name='ACTION_REPLACE_CHILDREN' type='short' value='2'/>
+ <var name='ACTION_APPEND_AS_CHILDREN' type='short' value='1'/>
+ <var name='ACTION_INSERT_AFTER' type='short' value='4'/>
+ <var name='ACTION_INSERT_BEFORE' type='short' value='3'/>
+ <var name='ACTION_REPLACE' type='short' value='5'/>
+
+
+ <!-- testfiles -->
+ <var name='TEST0' type='DOMString' value='&quot;test0&quot;'/>
+ <var name='TEST1' type='DOMString' value='&quot;test1&quot;'/>
+ <var name='TEST2' type='DOMString' value='&quot;test2&quot;'/>
+ <var name='TEST3' type='DOMString' value='&quot;test3&quot;'/>
+ <var name='TEST4' type='DOMString' value='&quot;test4&quot;'/>
+ <var name='TEST5' type='DOMString' value='&quot;test5&quot;'/>
+ <var name='TEST6' type='DOMString' value='&quot;test6&quot;'/>
+ <var name='TEST7' type='DOMString' value='&quot;test7&quot;'/>
+ <var name='TESTPDF' type='DOMString' value='&quot;testpdf&quot;'/>
+
+ <implementation var='implementation'/>
+ <assign var='lsImplementation' value='implementation'/>
+ ">
+
+<!ENTITY filterVars "">
+
+<!ENTITY errorHandlerVars "
+ <var name='error' type='DOMError'/>
+ <var name='severity' type='short'/>
+ <var name='message' type='DOMString'/>
+ <var name='type' type='DOMString'/>
+ <var name='location' type='DOMLocator'/>
+ ">
+
+<!ENTITY assignErrorHandlerVars "
+ <severity var='severity' obj='error' interface='DOMError'/>
+ <message var='message' obj='error' interface='DOMError'/>
+ <type var='type' obj='error' interface='DOMError'/>
+ <location var='location' obj='error' interface='DOMError'/>
+ ">
+
+
+<!ENTITY init "<createLSParser var='parser' obj='lsImplementation' mode='MODE_SYNCHRONOUS' schemaType='NULL_SCHEMATYPE'/>
+ <createLSSerializer var='writer' obj='lsImplementation'/>
+ <createLSInput var='inputSource' obj='lsImplementation'/>">
+
+<!ENTITY parser.setFilter_myfilter "<filter obj='parser' value='myfilter' interface='LSParser'/>">
+
+<!ENTITY SHOW_ELEMENT "1">
+<!ENTITY SHOW_TEXT '4'>
+<!ENTITY SHOW_ALL '65535'>
+<!ENTITY SHOW_ATTRIBUTE '2'>
+<!ENTITY SHOW_COMMENT '128'>
+<!ENTITY FILTER_ACCEPT '1'>
+<!ENTITY FILTER_REJECT '2'>
+<!ENTITY FILTER_SKIP '3'>
+
+
diff --git a/test/testcases/tests/level3/ls/elementcontentwhitespace01.xml b/test/testcases/tests/level3/ls/elementcontentwhitespace01.xml
new file mode 100644
index 0000000..75d286d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/elementcontentwhitespace01.xml
@@ -0,0 +1,60 @@
+<?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="elementcontentwhitespace01">
+<metadata>
+<title>elementcontentwhitespace01</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with element-content-whitespace = false and validation = true and check that
+element content whitespace is eliminated.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-element-content-whitespace"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetWhitespace" type="boolean"/>
+<var name="elemList" type="NodeList"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetWhitespace" obj="domConfig" name='"element-content-whitespace"' value="false"/>
+<if><and><isTrue value="canSetValidate"/><isTrue value="canSetWhitespace"/></and>
+<setParameter obj="domConfig" name='"validate"' value="true"/>
+<setParameter obj="domConfig" name='"element-content-whitespace"' value="false"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<firstChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="1" ignoreCase="false" id="nodeIsElem"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/elementcontentwhitespace02.xml b/test/testcases/tests/level3/ls/elementcontentwhitespace02.xml
new file mode 100644
index 0000000..48f1c0a
--- /dev/null
+++ b/test/testcases/tests/level3/ls/elementcontentwhitespace02.xml
@@ -0,0 +1,59 @@
+<?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="elementcontentwhitespace02">
+<metadata>
+<title>elementcontentwhitespace02</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with element-content-whitespace and validate = true and check that
+element content whitespace is not eliminated.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-element-content-whitespace"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="elemList" type="NodeList"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"validate"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"validate"' value="true"/>
+</if>
+<setParameter obj="domConfig" name='"element-content-whitespace"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<firstChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="3" ignoreCase="false" id="nodeIsText"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/elementcontentwhitespace03.xml b/test/testcases/tests/level3/ls/elementcontentwhitespace03.xml
new file mode 100644
index 0000000..0d6fb58
--- /dev/null
+++ b/test/testcases/tests/level3/ls/elementcontentwhitespace03.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="elementcontentwhitespace03">
+<metadata>
+<title>elementcontentwhitespace03</title>
+<creator>Curt Arnold</creator>
+<description>
+Serialize a document when element-content-whitespace is false, element content whitespace should be eliminated.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-element-content-whitespace"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="serializerDomConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="output" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetWhitespace" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig var="serializerDomConfig" obj="lsSerializer" interface="LSSerializer"/>
+<canSetParameter var="canSetWhitespace" obj="serializerDomConfig" name='"element-content-whitespace"' value="false"/>
+<if><and><isTrue value="canSetValidate"/><isTrue value="canSetWhitespace"/></and>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+ <domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+ <setParameter obj="domConfig" name='"validate"' value="false"/>
+ <getResourceURI var="resourceURI" href='"test3"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <setParameter obj="serializerDomConfig" name='"element-content-whitespace"' value="false"/>
+ <writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+ <assertTrue id="noWhitespace"><contains obj="output" str='"&lt;elt0&gt;&lt;elt1&gt;"' interface="DOMString"/></assertTrue>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/encoding01.xml b/test/testcases/tests/level3/ls/encoding01.xml
new file mode 100644
index 0000000..8456e38
--- /dev/null
+++ b/test/testcases/tests/level3/ls/encoding01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="encoding01">
+<metadata>
+<title>encoding01</title>
+<creator>Curt Arnold</creator>
+<description>
+createLSOutput should create an LSOutput, encoding should be mutable.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSOutput"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSOutput-encoding"/>
+</metadata>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsOutput" type="LSOutput"/>
+<var name="encoding" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSOutput var="lsOutput" obj="domImplLS"/>
+<encoding var="encoding" obj="lsOutput" interface="LSOutput"/>
+<!-- no definitive statement of expected default value -->
+<encoding obj="lsOutput" value='"ISO-8859-1"' interface="LSOutput"/>
+<encoding var="encoding" obj="lsOutput" interface="LSOutput"/>
+<assertEquals actual="encoding" expected='"ISO-8859-1"' id="isLatin1" ignoreCase="true"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/entities01.xml b/test/testcases/tests/level3/ls/entities01.xml
new file mode 100644
index 0000000..fdad0b7
--- /dev/null
+++ b/test/testcases/tests/level3/ls/entities01.xml
@@ -0,0 +1,54 @@
+<?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="entities01">
+<metadata>
+<title>entites01</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with entities = false and see that entity references are not present in
+the element content.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"entities"' value="false"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="1" interface="NodeList"/>
+<firstChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="3" ignoreCase="false" id="acrContentIsText"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/entities02.xml b/test/testcases/tests/level3/ls/entities02.xml
new file mode 100644
index 0000000..d3d6590
--- /dev/null
+++ b/test/testcases/tests/level3/ls/entities02.xml
@@ -0,0 +1,62 @@
+<?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="entities02">
+<metadata>
+<title>entites02</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with entities = false and see that entity references are not present in
+attribute content.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="classAttr" type="Attr"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"entities"' value="false"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<attributes var="attributes" obj="elem"/>
+<getNamedItem var="classAttr" obj="attributes" name='"class"'/>
+<lastChild var="node" obj="classAttr" interface="Node"/>
+<assertNotNull actual="classAttr" id="classAttrChildNotNull"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="3" ignoreCase="false" id="classAttrChildIsText"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/entities03.xml b/test/testcases/tests/level3/ls/entities03.xml
new file mode 100644
index 0000000..388abfe
--- /dev/null
+++ b/test/testcases/tests/level3/ls/entities03.xml
@@ -0,0 +1,53 @@
+<?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="entities03">
+<metadata>
+<title>entites03</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with entities = false and see that entity definitions are preserved.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"entities"' value="false"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<doctype var="docType" obj="doc"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities var="entities" obj="docType"/>
+<getNamedItem var="entity" obj="entities" name='"alpha"'/>
+<assertNotNull actual="entity" id="entityNotNull"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/entities04.xml b/test/testcases/tests/level3/ls/entities04.xml
new file mode 100644
index 0000000..acb0424
--- /dev/null
+++ b/test/testcases/tests/level3/ls/entities04.xml
@@ -0,0 +1,54 @@
+<?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="entities04">
+<metadata>
+<title>entites04</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with entities = true and see that entity references are present in
+the element content.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"entities"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="1" interface="NodeList"/>
+<firstChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="5" ignoreCase="false" id="acrContentIsEntRef"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/entities05.xml b/test/testcases/tests/level3/ls/entities05.xml
new file mode 100644
index 0000000..07be045
--- /dev/null
+++ b/test/testcases/tests/level3/ls/entities05.xml
@@ -0,0 +1,62 @@
+<?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="entities05">
+<metadata>
+<title>entites05</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with entities = true and see that entity references are present in
+attribute content.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<var name="classAttr" type="Attr"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"entities"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="3" interface="NodeList"/>
+<attributes var="attributes" obj="elem"/>
+<getNamedItem var="classAttr" obj="attributes" name='"class"'/>
+<lastChild var="node" obj="classAttr" interface="Node"/>
+<assertNotNull actual="classAttr" id="classAttrChildNotNull"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="5" ignoreCase="false" id="classAttrChildIsEntRef"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/entities06.xml b/test/testcases/tests/level3/ls/entities06.xml
new file mode 100644
index 0000000..f9649a6
--- /dev/null
+++ b/test/testcases/tests/level3/ls/entities06.xml
@@ -0,0 +1,53 @@
+<?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="entities06">
+<metadata>
+<title>entites06</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with entities = true and see that entity definitions are preserved.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="docType" type="DocumentType"/>
+<var name="entities" type="NamedNodeMap"/>
+<var name="entity" type="Entity"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"entities"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<doctype var="docType" obj="doc"/>
+<assertNotNull actual="docType" id="docTypeNotNull"/>
+<entities var="entities" obj="docType"/>
+<getNamedItem var="entity" obj="entities" name='"alpha"'/>
+<assertNotNull actual="entity" id="entityNotNull"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/entities07.xml b/test/testcases/tests/level3/ls/entities07.xml
new file mode 100644
index 0000000..79d5c40
--- /dev/null
+++ b/test/testcases/tests/level3/ls/entities07.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="entities07">
+<metadata>
+<title>entities07</title>
+<creator>Curt Arnold</creator>
+<description>
+A warning should be dispatched if the base URI of a processing instruction can not be preserved.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="nullSchemaLanguage" type="DOMString" isNull="true"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="warningCount" type="int" value="0"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaLanguage"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"entities"' value="false"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getResourceURI var="resourceURI" href='"pibase"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<assertNotNull actual="doc" id="docNotNull"/>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <if><equals actual="type" expected='"pi-base-uri-not-preserved"' ignoreCase="false"/>
+ <assertEquals actual="severity" expected="1" id="isError" ignoreCase="false"/>
+ <increment var="warningCount" value="1"/>
+ </if>
+</for-each>
+<assertEquals actual="warningCount" expected="1" ignoreCase="false" id="hadWarning"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/entities08.xml b/test/testcases/tests/level3/ls/entities08.xml
new file mode 100644
index 0000000..9b18c0a
--- /dev/null
+++ b/test/testcases/tests/level3/ls/entities08.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="entities08">
+<metadata>
+<title>entities08</title>
+<creator>Curt Arnold</creator>
+<description>
+Entity references should be preserved when entities is true.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="output" type="DOMString"/>
+<var name="varList" type="NodeList"/>
+<var name="varNode" type="Node"/>
+<var name="child" type="Node"/>
+<var name="childType" type="int"/>
+<var name="entRef" type="EntityReference"/>
+<var name="retNode" type="Node"/>
+<implementation var="domImplLS"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<!-- entity references may be expanded on load
+ if so, create and insert an entity reference into the document -->
+<getElementsByTagName var="varList" obj="doc"
+ tagname='"var"' interface="Document"/>
+<item var="varNode" obj="varList" index="2" interface="NodeList"/>
+<firstChild var="child" obj="varNode" interface="Node"/>
+<nodeType var="childType" obj="child"/>
+<if><equals actual="childType" expected="1" ignoreCase="false"/>
+ <createEntityReference var="entRef" obj="doc"
+ name='"ent4"'/>
+ <appendChild var="retNode" obj="varNode" newChild="entRef"/>
+</if>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"entities"' value="true"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<assertTrue id="hasEntRef"><contains obj="output" str='"ent4;"' interface="DOMString"/></assertTrue>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/entities09.xml b/test/testcases/tests/level3/ls/entities09.xml
new file mode 100644
index 0000000..3f22880
--- /dev/null
+++ b/test/testcases/tests/level3/ls/entities09.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="entities09">
+<metadata>
+<title>entities09</title>
+<creator>Curt Arnold</creator>
+<description>
+Entity references should be expanded when entities is false.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-entities"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="output" type="DOMString"/>
+<implementation var="domImplLS"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"entities"' value="false"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<assertFalse id="noEntRef"><contains obj="output" str='"ent4;"' interface="DOMString"/></assertFalse>
+<assertTrue id="entDef"><contains obj="output" str='"!ENTITY"' interface="DOMString"/></assertTrue>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/files/CVS/Entries b/test/testcases/tests/level3/ls/files/CVS/Entries
new file mode 100644
index 0000000..d374c52
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/CVS/Entries
@@ -0,0 +1,37 @@
+D/subdir////
+/canonicalform01.xml/1.1/Fri Apr 3 02:47:57 2009//
+/canonicalform02.xml/1.1/Fri Apr 3 02:47:57 2009//
+/canonicalform03.xml/1.1/Fri Apr 3 02:47:57 2009//
+/characternormalization1.xml/1.1/Fri Apr 3 02:47:57 2009//
+/datatype_normalization.svg.xsd/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/datatype_normalization.xml/1.1/Fri Apr 3 02:47:57 2009//
+/datatype_normalization.xsd/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/datatype_normalization2.xml/1.1/Fri Apr 3 02:47:57 2009//
+/datatype_normalization2.xsd/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/hc_staff.svg/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/hc_staff.svg.xsd/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/hc_staff.xhtml/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/hc_staff.xml/1.1/Fri Apr 3 02:47:57 2009//
+/hc_staff.xsd/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/namespaces1.xml/1.1/Fri Apr 3 02:47:57 2009//
+/pibase.xml/1.1/Fri Apr 3 02:47:57 2009//
+/schematype1.xml/1.1/Fri Apr 3 02:47:57 2009//
+/svgtest.js/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/svgunit.js/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/test0.svg/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/test0.xml/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/test1.xml/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/test2.xml/1.3/Fri Apr 3 02:47:57 2009/-kb/
+/test3.xml/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/test4.xml/1.3/Fri Apr 3 02:47:57 2009/-kb/
+/test5.xml/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/test7.xml/1.3/Fri Apr 3 02:47:57 2009/-kb/
+/testpdf.pdf/1.1/Fri Apr 3 02:47:57 2009/-kb/
+/testsvg.dtd/1.2/Fri Apr 3 02:47:57 2009/-kb/
+/unsupportedencoding1.xml/1.1/Fri Apr 3 02:47:57 2009//
+/validate1.xml/1.1/Fri Apr 3 02:47:57 2009//
+/validateschema1.xml/1.1/Fri Apr 3 02:47:57 2009//
+/wellformed1.xml/1.2/Fri Apr 3 02:47:57 2009//
+/wellformed2.xml/1.2/Fri Apr 3 02:47:57 2009//
+/wellformed3.xml/1.1/Fri Apr 3 02:47:57 2009//
+/xhtml1-strict.dtd/1.1/Fri Apr 3 02:47:57 2009/-kb/
diff --git a/test/testcases/tests/level3/ls/files/CVS/Repository b/test/testcases/tests/level3/ls/files/CVS/Repository
new file mode 100644
index 0000000..fe2d5cb
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3/ls/files
diff --git a/test/testcases/tests/level3/ls/files/CVS/Root b/test/testcases/tests/level3/ls/files/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/ls/files/CVS/Template b/test/testcases/tests/level3/ls/files/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/CVS/Template
diff --git a/test/testcases/tests/level3/ls/files/canonicalform01.xml b/test/testcases/tests/level3/ls/files/canonicalform01.xml
new file mode 100644
index 0000000..ac9b7c8
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/canonicalform01.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0"?>
+
+<?xml-stylesheet href="doc.xsl"
+ type="text/xsl" ?>
+
+<!DOCTYPE html SYSTEM "xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform01</title></head><body onload="parent.loadComplete()">
+<p>Hello, world!<!-- Comment 1 --></p></body></html>
+
+<?pi-without-data ?>
+
+<!-- Comment 2 -->
+
+<!-- Comment 3 -->
diff --git a/test/testcases/tests/level3/ls/files/canonicalform02.xml b/test/testcases/tests/level3/ls/files/canonicalform02.xml
new file mode 100644
index 0000000..f949cfc
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/canonicalform02.xml
@@ -0,0 +1,11 @@
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform02</title></head><body onload="parent.loadComplete()">
+ <acronym> </acronym>
+ <em> A B </em>
+ <p>
+ A
+ <acronym> </acronym>
+ B
+ <em> A B </em>
+ C
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level3/ls/files/canonicalform03.xml b/test/testcases/tests/level3/ls/files/canonicalform03.xml
new file mode 100644
index 0000000..d1257bc
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/canonicalform03.xml
@@ -0,0 +1,18 @@
+<!DOCTYPE html [<!ATTLIST acronym title CDATA "default">]>
+<html xmlns="http://www.w3.org/1999/xhtml"><head><title>canonicalform03</title></head><body onload="parent.loadComplete()">
+ <br />
+ <br ></br>
+ <div name = "elem3" id="elem3" />
+ <div name="elem4" id="elem4" ></div>
+ <div a:attr="out" b:attr="sorted" name="all" class="I'm"
+ xmlns:b="http://www.ietf.org"
+ xmlns:a="http://www.w3.org"
+ xmlns="http://example.org"/>
+ <div xmlns="" xmlns:a="http://www.w3.org">
+ <div xmlns="http://www.ietf.org">
+ <div xmlns="" xmlns:a="http://www.w3.org">
+ <acronym xmlns="" xmlns:a="http://www.ietf.org"/>
+ </div>
+ </div>
+ </div>
+</body></html>
diff --git a/test/testcases/tests/level3/ls/files/characternormalization1.xml b/test/testcases/tests/level3/ls/files/characternormalization1.xml
new file mode 100644
index 0000000..786cfa1
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/characternormalization1.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE suçon [
+<!ELEMENT suçon EMPTY>
+]>
+<suçon/> \ No newline at end of file
diff --git a/test/testcases/tests/level3/ls/files/datatype_normalization.svg.xsd b/test/testcases/tests/level3/ls/files/datatype_normalization.svg.xsd
new file mode 100644
index 0000000..e2cdde3
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/datatype_normalization.svg.xsd
@@ -0,0 +1,60 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This schema is attempts to use every construct that could
+be interrogated by DOM Level 3 and is no way intended to
+be a general purpose schema for SVG
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:data="http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization">
+
+ <xsd:import namespace="http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization" schemaLocation="datatype_normalization.xsd"/>
+
+ <xsd:element name="svg">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="rect"/>
+ <xsd:element ref="script"/>
+ <xsd:element ref="data:data"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="rect">
+ <xsd:complexType>
+ <xsd:attribute name="x" type="xsd:double" use="required"/>
+ <xsd:attribute name="y" type="xsd:double" use="required"/>
+ <xsd:attribute name="height" type="xsd:double" use="required"/>
+ <xsd:attribute name="width" type="xsd:double" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="script">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="type" type="xsd:string" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</xsd:schema>
diff --git a/test/testcases/tests/level3/ls/files/datatype_normalization.xml b/test/testcases/tests/level3/ls/files/datatype_normalization.xml
new file mode 100644
index 0000000..cced1b9
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/datatype_normalization.xml
@@ -0,0 +1,90 @@
+<!DOCTYPE svg [
+<!ENTITY svgunit SYSTEM "svgunit.js">
+<!ENTITY svgtest SYSTEM "svgtest.js">
+<!ELEMENT svg (rect, script, data)>
+<!ATTLIST svg
+ xmlns CDATA #IMPLIED
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ELEMENT script (#PCDATA)>
+ <!ATTLIST script type CDATA #IMPLIED>
+ <!ELEMENT data (double*, boolean*, decimal*, float*, dateTime*, time*)>
+ <!ATTLIST data xmlns CDATA #IMPLIED>
+ <!ELEMENT double (#PCDATA)>
+ <!ATTLIST double
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT boolean (#PCDATA)>
+ <!ATTLIST boolean
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT decimal (#PCDATA)>
+ <!ATTLIST decimal
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT float (#PCDATA)>
+ <!ATTLIST float
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT dateTime (#PCDATA)>
+ <!ATTLIST dateTime
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+ <!ELEMENT time (#PCDATA)>
+ <!ATTLIST time
+ value CDATA #IMPLIED
+ union CDATA #IMPLIED>
+
+]>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/2000/svg datatype_normalization.svg.xsd">
+<rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+<data xmlns='http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization'>
+<double value="
+ +0003.141592600E+0000 " union=" +0003.141592600E+0000
+ "> -31415926.00E-7
+2.718</double>
+<double value=" NaN" union="NaN "> INF -INF </double>
+<double value="
+1 " union="1
+"> -0</double>
+<boolean value="
+ true" union="false
+ "> false true false </boolean>
+<boolean value="
+ 1" union=" 0
+ ">0 1 0 </boolean>
+<decimal value=" +0003.141592600 " union=" +0003.141592600 "> +10 .1 </decimal>
+<decimal value=" 01 " union=" 01 "> -.001 </decimal>
+<float value=" +0003.141592600E+0000 " union=" +0003.141592600E+0000 "> -31415926.00E-7
+2.718</float>
+<float value=" NaN " union=" NaN "> INF -INF </float>
+<float value="
+1 " union="1
+">-0</float>
+<dateTime value="
+2004-01-21T15:30:00-05:00" union="2004-01-21T20:30:00-05:00
+">2004-01-21T15:30:00
+2004-01-21T15:30:00Z</dateTime>
+<dateTime value="
+2004-01-21T15:30:00.0000-05:00" union="2004-01-21T15:30:00.0000-05:00
+"> 2004-01-21T15:30:00.0000 </dateTime>
+<dateTime value="2004-01-21T15:30:00.0001-05:00" union="2004-01-21T15:30:00.0001-05:00">2004-01-21T15:30:00.0001</dateTime>
+<time value="
+15:30:00-05:00" union="15:30:00-05:00
+"> 15:30:00 </time>
+<time value="
+ 15:30:00.0000-05:00" union=" 15:30:00.0000-05:00
+ ">15:30:00.0000</time>
+<time value="
+ 15:30:00.0001-05:00" union="15:30:00.0001-05:00
+ ">15:30:00.0001</time>
+</data>
+</svg> \ No newline at end of file
diff --git a/test/testcases/tests/level3/ls/files/datatype_normalization.xsd b/test/testcases/tests/level3/ls/files/datatype_normalization.xsd
new file mode 100644
index 0000000..2b3a789
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/datatype_normalization.xsd
@@ -0,0 +1,212 @@
+<!--
+
+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.
+
+-->
+
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization"
+ xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3/datatype_normalization">
+
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="double"/>
+ <xsd:element ref="boolean"/>
+ <xsd:element ref="decimal"/>
+ <xsd:element ref="float"/>
+ <xsd:element ref="dateTime"/>
+ <xsd:element ref="time"/>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:simpleType name="myDouble">
+ <xsd:restriction base="xsd:double"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDoubleList">
+ <xsd:list itemType="myDouble"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDoubleUnion">
+ <xsd:union memberTypes="myDouble xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="double">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myDoubleList">
+ <xsd:attribute name="value" type="myDouble" use="required"/>
+ <xsd:attribute name="union" type="myDoubleUnion" use="required"/>
+ <xsd:attribute name="default" type="myDouble"
+ default="+0003.141592600E+0000" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:simpleType name="myBoolean">
+ <xsd:restriction base="xsd:boolean"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myBooleanList">
+ <xsd:list itemType="myBoolean"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myBooleanUnion">
+ <xsd:union memberTypes="myBoolean xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="boolean">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myBooleanList">
+ <xsd:attribute name="value" type="myBoolean" use="required"/>
+ <xsd:attribute name="union" type="myDoubleUnion" use="required"/>
+ <xsd:attribute name="default" type="myBoolean"
+ default="1" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:simpleType name="myDecimal">
+ <xsd:restriction base="xsd:decimal"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDecimalList">
+ <xsd:list itemType="myDecimal"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDecimalUnion">
+ <xsd:union memberTypes="myDecimal xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="decimal">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myDecimalList">
+ <xsd:attribute name="value" type="myDecimal" use="required"/>
+ <xsd:attribute name="union" type="myDecimalUnion" use="required"/>
+ <xsd:attribute name="default" type="myDecimal"
+ default="+0003.141592600" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:simpleType name="myFloat">
+ <xsd:restriction base="xsd:float"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myFloatList">
+ <xsd:list itemType="myFloat"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myFloatUnion">
+ <xsd:union memberTypes="myFloat xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="float">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myFloatList">
+ <xsd:attribute name="value" type="myFloat" use="required"/>
+ <xsd:attribute name="union" type="myFloatUnion" use="required"/>
+ <xsd:attribute name="default" type="myDouble"
+ default="+0003.141592600E+0000" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:simpleType name="myDateTime">
+ <xsd:restriction base="xsd:dateTime"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDateTimeList">
+ <xsd:list itemType="myDateTime"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myDateTimeUnion">
+ <xsd:union memberTypes="myDateTime xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="dateTime">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myDateTimeList">
+ <xsd:attribute name="value" type="myDateTime" use="required"/>
+ <xsd:attribute name="union" type="myDateTimeUnion" use="required"/>
+ <xsd:attribute name="default" type="myDateTime"
+ default="2004-01-21T15:30:00-05:00" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:simpleType name="myTime">
+ <xsd:restriction base="xsd:time"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myTimeList">
+ <xsd:list itemType="myTime"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myTimeUnion">
+ <xsd:union memberTypes="myTime xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="time">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myTimeList">
+ <xsd:attribute name="value" type="myTime" use="required"/>
+ <xsd:attribute name="union" type="myTimeUnion" use="required"/>
+ <xsd:attribute name="default" type="myTime"
+ default="15:30:00-05:00" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:simpleType name="myUnion">
+ <xsd:union memberTypes="xsd:integer xsd:string"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myUnionList">
+ <xsd:list itemType="myUnion"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="myUnionUnion">
+ <xsd:union memberTypes="myUnion xsd:anyURI"/>
+ </xsd:simpleType>
+
+ <xsd:element name="union">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="myUnionList">
+ <xsd:attribute name="value" type="myUnion" use="required"/>
+ <xsd:attribute name="union" type="myUnionUnion" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</xsd:schema>
diff --git a/test/testcases/tests/level3/ls/files/datatype_normalization2.xml b/test/testcases/tests/level3/ls/files/datatype_normalization2.xml
new file mode 100644
index 0000000..19d9415
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/datatype_normalization2.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ATTLIST html
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+]>
+<html xmlns='http://www.w3.org/1999/xhtml'
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/1999/xhtml datatype_normalization2.xsd"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>datatype_normalization2</title></head><body onload="parent.loadComplete()">
+ <p>
+ <!-- preserve, string default -->
+ <em> EMP 0001 </em>
+ <!-- explicit preserve -->
+ <acronym> EMP 0001 </acronym>
+ <!-- explicit collapse -->
+ <code>
+ EMP 0001
+</code>
+ <code>EMP 0001</code>
+ <code>EMP 0001</code>
+ <!-- explicit replace -->
+ <sup>
+ EMP 0001
+</sup>
+ <sup>EMP 0001</sup>
+ <sup>EMP 0001</sup>
+ <sup>EMP
+0001</sup>
+ </p>
+</body>
+</html>
diff --git a/test/testcases/tests/level3/ls/files/datatype_normalization2.xsd b/test/testcases/tests/level3/ls/files/datatype_normalization2.xsd
new file mode 100644
index 0000000..c7a7903
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/datatype_normalization2.xsd
@@ -0,0 +1,99 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This schema is intended to support specific DOM L3 tests is no way intended to
+be a general purpose schema for XHTML
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/1999/xhtml"
+ xmlns="http://www.w3.org/1999/xhtml">
+
+ <xsd:element name="html">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="head"/>
+ <xsd:element ref="body"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="head">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="meta"/>
+ <xsd:element ref="title"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="title" type="xsd:string"/>
+ <xsd:element name="meta">
+ <xsd:complexType>
+ <xsd:attribute name="http-equiv" type="xsd:string" use="required"/>
+ <xsd:attribute name="content" type="xsd:string" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="body">
+ <xsd:complexType>
+ <xsd:sequence minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="p"/>
+ </xsd:sequence>
+ <xsd:attribute name="onload" type="xsd:string" use="optional"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="p">
+ <xsd:complexType>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="em"/>
+ <xsd:element ref="code"/>
+ <xsd:element ref="sup"/>
+ <xsd:element ref="acronym"/>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="em" type="xsd:string"/>
+
+ <xsd:simpleType name="acronym">
+ <xsd:restriction base="xsd:string">
+ <xsd:whiteSpace value="preserve"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="acronym" type="acronym"/>
+
+ <xsd:simpleType name="code">
+ <xsd:restriction base="xsd:string">
+ <xsd:whiteSpace value="collapse"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="code" type="code"/>
+
+ <xsd:simpleType name="sup">
+ <xsd:restriction base="xsd:string">
+ <xsd:whiteSpace value="replace"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="sup" type="sup"/>
+
+</xsd:schema>
diff --git a/test/testcases/tests/level3/ls/files/hc_staff.svg b/test/testcases/tests/level3/ls/files/hc_staff.svg
new file mode 100644
index 0000000..e11e135
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/hc_staff.svg
@@ -0,0 +1,87 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST p
+ dir CDATA 'rtl'
+ xmlns:dmstc CDATA #IMPLIED
+ xmlns:nm CDATA #IMPLIED
+ xmlns:emp2 CDATA #IMPLIED>
+ <!ATTLIST html
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ATTLIST acronym xsi:noNamespaceSchemaLocation CDATA #IMPLIED>
+ <!ENTITY ent4 "<span xmlns='http://www.w3.org/1999/xhtml'>Element data</span><?PItarget PIdata?>">
+ <!ATTLIST span xmlns CDATA #IMPLIED>
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+ <!ELEMENT svg (rect, script, body)>
+ <!ATTLIST svg
+ xmlns CDATA #IMPLIED
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ATTLIST body xmlns CDATA #IMPLIED>
+]>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/2000/svg hc_staff.svg.xsd">
+<rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script><body xmlns="http://www.w3.org/1999/xhtml">
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" xsi:noNamespaceSchemaLocation="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0002</em>
+ <strong>Martha Raynolds
+<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.netzero.com">
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&ent4;</var>
+ <acronym title="Yes" class="No" id="_98553" xsi:noNamespaceSchemaLocation="Yes">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p xmlns:nm="http://www.altavista.com">
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;" id="_98556" xsi:noNamespaceSchemaLocation="Yes">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p xmlns:emp2="http://www.nist.gov">
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></svg>
diff --git a/test/testcases/tests/level3/ls/files/hc_staff.svg.xsd b/test/testcases/tests/level3/ls/files/hc_staff.svg.xsd
new file mode 100644
index 0000000..52335a3
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/hc_staff.svg.xsd
@@ -0,0 +1,60 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This schema is attempts to use every construct that could
+be interrogated by DOM Level 3 and is no way intended to
+be a general purpose schema for SVG
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xhtml="http://www.w3.org/1999/xhtml">
+
+ <xsd:import namespace="http://www.w3.org/1999/xhtml" schemaLocation="hc_staff.xsd"/>
+
+ <xsd:element name="svg">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="rect"/>
+ <xsd:element ref="script"/>
+ <xsd:element ref="xhtml:body"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="rect">
+ <xsd:complexType>
+ <xsd:attribute name="x" type="xsd:double" use="required"/>
+ <xsd:attribute name="y" type="xsd:double" use="required"/>
+ <xsd:attribute name="height" type="xsd:double" use="required"/>
+ <xsd:attribute name="width" type="xsd:double" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="script">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="type" type="xsd:string" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</xsd:schema>
diff --git a/test/testcases/tests/level3/ls/files/hc_staff.xhtml b/test/testcases/tests/level3/ls/files/hc_staff.xhtml
new file mode 100644
index 0000000..f2b6e71
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/hc_staff.xhtml
@@ -0,0 +1,73 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST p
+ dir CDATA 'rtl'
+ xmlns:dmstc CDATA #IMPLIED
+ xmlns:nm CDATA #IMPLIED
+ xmlns:emp2 CDATA #IMPLIED>
+ <!ATTLIST html
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ATTLIST acronym xsi:noNamespaceSchemaLocation CDATA #IMPLIED>
+ <!ENTITY ent4 "<span xmlns='http://www.w3.org/1999/xhtml'>Element data</span><?PItarget PIdata?>">
+ <!ATTLIST span xmlns CDATA #IMPLIED>
+]>
+<!-- This is comment number 1.-->
+<html xmlns='http://www.w3.org/1999/xhtml'
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/1999/xhtml hc_staff.xsd"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title><script type="text/javascript" src="svgunit.js"/><script charset="UTF-8" type="text/javascript" src="svgtest.js"/><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" xsi:noNamespaceSchemaLocation="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0002</em>
+ <strong>Martha Raynolds
+<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.netzero.com">
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&ent4;</var>
+ <acronym title="Yes" class="No" id="_98553" xsi:noNamespaceSchemaLocation="Yes">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p xmlns:nm="http://www.altavista.com">
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;" id="_98556" xsi:noNamespaceSchemaLocation="Yes">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p xmlns:emp2="http://www.nist.gov">
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level3/ls/files/hc_staff.xml b/test/testcases/tests/level3/ls/files/hc_staff.xml
new file mode 100644
index 0000000..0366a05
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/hc_staff.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "xhtml1-strict.dtd" [
+ <!ENTITY alpha "&#945;">
+ <!ENTITY beta "&#946;">
+ <!ENTITY gamma "&#947;">
+ <!ENTITY delta "&#948;">
+ <!ENTITY epsilon "&#949;">
+ <!ENTITY alpha "&#950;">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST p
+ dir CDATA 'rtl'
+ xmlns:dmstc CDATA #IMPLIED
+ xmlns:nm CDATA #IMPLIED
+ xmlns:emp2 CDATA #IMPLIED>
+ <!ATTLIST html
+ xmlns:xsi CDATA #IMPLIED
+ xsi:schemaLocation CDATA #IMPLIED>
+ <!ATTLIST acronym xsi:noNamespaceSchemaLocation CDATA #IMPLIED>
+ <!ENTITY ent4 "<span xmlns='http://www.w3.org/1999/xhtml'>Element data</span><?PItarget PIdata?>">
+ <!ATTLIST span xmlns CDATA #IMPLIED>
+]>
+<!-- This is comment number 1.-->
+<html xmlns='http://www.w3.org/1999/xhtml'
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.w3.org/1999/xhtml hc_staff.xsd"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><title>hc_staff</title><script type="text/javascript" src="svgunit.js"/><script charset="UTF-8" type="text/javascript" src="svgtest.js"/><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="parent.loadComplete()">
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" xsi:noNamespaceSchemaLocation="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.usa.com">
+ <em>EMP0002</em>
+ <strong>Martha Raynolds
+<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p xmlns:dmstc="http://www.netzero.com">
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&ent4;</var>
+ <acronym title="Yes" class="No" id="_98553" xsi:noNamespaceSchemaLocation="Yes">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p xmlns:nm="http://www.altavista.com">
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;" id="_98556" xsi:noNamespaceSchemaLocation="Yes">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p xmlns:emp2="http://www.nist.gov">
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes" class="Yes" xsi:noNamespaceSchemaLocation="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/test/testcases/tests/level3/ls/files/hc_staff.xsd b/test/testcases/tests/level3/ls/files/hc_staff.xsd
new file mode 100644
index 0000000..915cba0
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/hc_staff.xsd
@@ -0,0 +1,250 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This schema is attempts to use every construct that could
+be interrogated by DOM Level 3 and is no way intended to
+be a general purpose schema for XHTML
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/1999/xhtml"
+ xmlns="http://www.w3.org/1999/xhtml">
+
+ <xsd:element name="html">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="head"/>
+ <xsd:element ref="body"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="head">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="meta"/>
+ <xsd:element ref="title"/>
+ <xsd:element ref="script" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="meta">
+ <xsd:complexType>
+ <xsd:attribute name="http-equiv" type="xsd:string" use="required"/>
+ <xsd:attribute name="content" type="xsd:string" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="script">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="src" type="xsd:string" use="optional"/>
+ <xsd:attribute name="charset" type="xsd:string" use="optional"/>
+ <xsd:attribute name="type" type="xsd:string" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="title" type="xsd:string"/>
+
+ <xsd:element name="body">
+ <xsd:complexType>
+ <xsd:sequence minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="p"/>
+ </xsd:sequence>
+ <xsd:attribute name="onload" type="xsd:string" use="optional"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:simpleType name="classType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Yes"/>
+ <xsd:enumeration value="No"/>
+ <xsd:enumeration value="Y&#945;"/>
+ <xsd:enumeration value="Y"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:complexType name="part1">
+ <xsd:sequence>
+ <xsd:element ref="em"/>
+ <xsd:element ref="strong"/>
+ <xsd:element ref="code"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="pType">
+ <xsd:complexContent>
+ <xsd:extension base="part1">
+ <xsd:sequence>
+ <xsd:element ref="sup"/>
+ <xsd:element ref="var"/>
+ <xsd:element ref="acronym"/>
+ </xsd:sequence>
+ <xsd:attribute name="title" type="xsd:string" use="optional"/>
+ <xsd:attribute name="class" type="classType" use="optional"/>
+ <xsd:attribute name="dir" type="dirType" use="optional" default="rtl"/>
+ <xsd:attribute name="foo" type="xsd:string" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+
+ <xsd:element name="p">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:restriction base="pType">
+ <xsd:sequence>
+ <xsd:element ref="em"/>
+ <xsd:element ref="strong"/>
+ <xsd:element ref="code"/>
+ <xsd:element ref="sup"/>
+ <xsd:element ref="var"/>
+ <xsd:element ref="acronym"/>
+ </xsd:sequence>
+ <xsd:attribute name="title" type="xsd:string" use="optional"/>
+ <xsd:attribute name="class" type="classType" use="optional"/>
+ <xsd:attribute name="dir" type="dirType" use="optional" default="rtl"/>
+ <xsd:attribute name="foo" type="xsd:string" use="prohibited"/>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:simpleType name="emp0001_3Type">
+ <xsd:restriction base="xsd:ID">
+ <xsd:enumeration value="EMP0001"/>
+ <xsd:enumeration value="EMP0002"/>
+ <xsd:enumeration value="EMP0003"/>
+ <xsd:enumeration value="EMP0004"/>
+ <xsd:enumeration value="EMP0005"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="emp0004_5Type">
+ <xsd:restriction base="xsd:ID">
+ <xsd:enumeration value="EMP0006"/>
+ <xsd:enumeration value="EMP0007"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="unboundedEmType">
+ <xsd:union memberTypes="emp0001_3Type emp0004_5Type"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="emType">
+ <xsd:restriction base="unboundedEmType">
+ <xsd:pattern value="EMP[0-9]*"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+ <xsd:element name="em" type="emType"/>
+
+ <xsd:simpleType name="unboundedStrongType">
+ <xsd:list itemType="xsd:string"/>
+ </xsd:simpleType>
+
+
+ <xsd:simpleType name="strongType">
+ <xsd:restriction base="unboundedStrongType">
+ <xsd:maxLength value="100"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="strong" type="strongType"/>
+
+ <!-- union of union and union of list -->
+ <xsd:simpleType name="integers">
+ <xsd:list itemType="xsd:integer"/>
+ </xsd:simpleType>
+
+
+ <xsd:simpleType name="sup">
+ <xsd:union memberTypes="emType integers xsd:string"/>
+ </xsd:simpleType>
+ <xsd:element name="sup" type="sup"/>
+
+ <!-- list of union of union -->
+ <xsd:simpleType name="supervisoryTitle">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Specialist"/>
+ <xsd:enumeration value="Director"/>
+ <xsd:enumeration value="Manager"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="nonSupervisoryTitle">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Accountant"/>
+ <xsd:enumeration value="Secretary"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="title">
+ <xsd:union memberTypes="supervisoryTitle nonSupervisoryTitle"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="field">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Department"/>
+ <xsd:enumeration value="Personnel"/>
+ <xsd:enumeration value="Computer"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="codeItem">
+ <xsd:union memberTypes="field title"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="code">
+ <xsd:list itemType="codeItem"/>
+ </xsd:simpleType>
+ <xsd:element name="code" type="code"/>
+
+ <xsd:element name="span" type="xsd:string"/>
+
+ <xsd:complexType name="var" mixed="true">
+ <xsd:sequence>
+ <xsd:element ref="span" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:element name="var" type="var"/>
+
+ <xsd:simpleType name="dirType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="ltr"/>
+ <xsd:enumeration value="rtl"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="acronym">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="class" type="classType" use="optional"/>
+ <xsd:attribute name="title" type="xsd:string" use="optional"/>
+ <xsd:attribute name="id" type="xsd:ID" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+</xsd:schema>
diff --git a/test/testcases/tests/level3/ls/files/namespaces1.xml b/test/testcases/tests/level3/ls/files/namespaces1.xml
new file mode 100644
index 0000000..45a188b
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/namespaces1.xml
@@ -0,0 +1 @@
+<bad:ns:tag/> \ No newline at end of file
diff --git a/test/testcases/tests/level3/ls/files/pibase.xml b/test/testcases/tests/level3/ls/files/pibase.xml
new file mode 100644
index 0000000..36d7cb2
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/pibase.xml
@@ -0,0 +1,10 @@
+<!DOCTYPE root [
+<!ELEMENT root (one, more)>
+<!ELEMENT one (two)>
+<!ELEMENT two EMPTY>
+<!ELEMENT more EMPTY>
+<!ENTITY e SYSTEM 'subdir/myentity.ent'>
+]>
+<root>
+&e;
+</root> \ No newline at end of file
diff --git a/test/testcases/tests/level3/ls/files/schematype1.xml b/test/testcases/tests/level3/ls/files/schematype1.xml
new file mode 100644
index 0000000..de17a17
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/schematype1.xml
@@ -0,0 +1,2 @@
+<elt0 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="validateschema1.xml"/>
diff --git a/test/testcases/tests/level3/ls/files/subdir/CVS/Entries b/test/testcases/tests/level3/ls/files/subdir/CVS/Entries
new file mode 100644
index 0000000..b65eed8
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/subdir/CVS/Entries
@@ -0,0 +1,2 @@
+/myentity.ent/1.1/Fri Apr 3 02:47:57 2009/-kb/
+D
diff --git a/test/testcases/tests/level3/ls/files/subdir/CVS/Repository b/test/testcases/tests/level3/ls/files/subdir/CVS/Repository
new file mode 100644
index 0000000..544ad2e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/subdir/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3/ls/files/subdir
diff --git a/test/testcases/tests/level3/ls/files/subdir/CVS/Root b/test/testcases/tests/level3/ls/files/subdir/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/subdir/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/ls/files/subdir/CVS/Template b/test/testcases/tests/level3/ls/files/subdir/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/subdir/CVS/Template
diff --git a/test/testcases/tests/level3/ls/files/subdir/myentity.ent b/test/testcases/tests/level3/ls/files/subdir/myentity.ent
new file mode 100644
index 0000000..2046b58
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/subdir/myentity.ent
@@ -0,0 +1,5 @@
+<one>
+ <two/>
+</one>
+<?pi 3.14159?>
+<more/> \ No newline at end of file
diff --git a/test/testcases/tests/level3/ls/files/svgtest.js b/test/testcases/tests/level3/ls/files/svgtest.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/svgtest.js
diff --git a/test/testcases/tests/level3/ls/files/svgunit.js b/test/testcases/tests/level3/ls/files/svgunit.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/svgunit.js
diff --git a/test/testcases/tests/level3/ls/files/test0.svg b/test/testcases/tests/level3/ls/files/test0.svg
new file mode 100644
index 0000000..84e7c9b
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/test0.svg
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<!DOCTYPE svg [
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<svg xmlns='http://www.w3.org/2000/svg'><rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+ <elt0 xmlns="http://www.example.com">
+ <elt1>the first element elt1</elt1><elt1>the second element elt1</elt1>
+ <elt2/>
+ </elt0>
+</svg>
diff --git a/test/testcases/tests/level3/ls/files/test0.xml b/test/testcases/tests/level3/ls/files/test0.xml
new file mode 100644
index 0000000..039777a
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/test0.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0"?>
+ <elt0>
+ <elt1>the first element elt1</elt1><elt1>the second element elt1</elt1>
+ <elt2/>
+ </elt0>
diff --git a/test/testcases/tests/level3/ls/files/test1.xml b/test/testcases/tests/level3/ls/files/test1.xml
new file mode 100644
index 0000000..0bdbedc
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/test1.xml
@@ -0,0 +1 @@
+<?xml version="1.0"?><elt0><elt1>remove me</elt1></elt0>
diff --git a/test/testcases/tests/level3/ls/files/test2.xml b/test/testcases/tests/level3/ls/files/test2.xml
new file mode 100644
index 0000000..157a6ef
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/test2.xml
@@ -0,0 +1 @@
+<elt2><elt3>an element</elt3></elt2> \ No newline at end of file
diff --git a/test/testcases/tests/level3/ls/files/test3.xml b/test/testcases/tests/level3/ls/files/test3.xml
new file mode 100644
index 0000000..16b9953
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/test3.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!DOCTYPE elt0 [
+
+ <!ELEMENT elt0 (elt1+)>
+
+ <!ELEMENT elt1 (#PCDATA)>
+ <!ATTLIST elt1 attr1 CDATA #FIXED "attr1">
+
+]>
+ <elt0>
+ <elt1>an element</elt1>
+ </elt0>
diff --git a/test/testcases/tests/level3/ls/files/test4.xml b/test/testcases/tests/level3/ls/files/test4.xml
new file mode 100644
index 0000000..24eedc6
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/test4.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<!DOCTYPE elt0 [
+
+ <!ELEMENT elt0 (elt1+,elt2?)>
+
+ <!ELEMENT elt1 (#PCDATA)>
+ <!ELEMENT elt2 EMPTY>
+ <!ENTITY ref SYSTEM "test5.xml">
+]>
+ <elt0>
+ <elt1>first elt1</elt1>
+ &ref;
+ </elt0>
diff --git a/test/testcases/tests/level3/ls/files/test5.xml b/test/testcases/tests/level3/ls/files/test5.xml
new file mode 100644
index 0000000..a6b2915
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/test5.xml
@@ -0,0 +1 @@
+<elt1>second elt1</elt1>
diff --git a/test/testcases/tests/level3/ls/files/test7.xml b/test/testcases/tests/level3/ls/files/test7.xml
new file mode 100644
index 0000000..5d4853e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/test7.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<!DOCTYPE elt0 [
+
+ <!ELEMENT elt0 (elt1+)>
+ <!ATTLIST elt0 base CDATA #IMPLIED>
+
+ <!ENTITY logo SYSTEM "logo.png" NDATA PNG>
+ <!NOTATION PNG SYSTEM "image/png">
+
+ <!ELEMENT elt1 (#PCDATA)>
+ <!ATTLIST elt1 source ENTITY #REQUIRED>
+
+ <!ENTITY ref PUBLIC "-//X-Hive//native xml storage//EN" "test5.xml">
+]>
+ <elt0 base="base">
+ <elt1 source="logo">first elt1</elt1>
+ &ref;
+ </elt0>
diff --git a/test/testcases/tests/level3/ls/files/testpdf.pdf b/test/testcases/tests/level3/ls/files/testpdf.pdf
new file mode 100644
index 0000000..039777a
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/testpdf.pdf
@@ -0,0 +1,5 @@
+<?xml version="1.0"?>
+ <elt0>
+ <elt1>the first element elt1</elt1><elt1>the second element elt1</elt1>
+ <elt2/>
+ </elt0>
diff --git a/test/testcases/tests/level3/ls/files/testsvg.dtd b/test/testcases/tests/level3/ls/files/testsvg.dtd
new file mode 100644
index 0000000..3555b90
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/testsvg.dtd
@@ -0,0 +1,13 @@
+<!ELEMENT svg (rect, script, (elt0|elt1)*)>
+<!ATTLIST svg
+ xmlns CDATA #FIXED "http://www.w3.org/2000/svg"
+ name CDATA #IMPLIED>
+<!ELEMENT rect EMPTY>
+<!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script type CDATA #IMPLIED>
+
diff --git a/test/testcases/tests/level3/ls/files/unsupportedencoding1.xml b/test/testcases/tests/level3/ls/files/unsupportedencoding1.xml
new file mode 100644
index 0000000..7f296ef
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/unsupportedencoding1.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-90210"?>
+<html/>
diff --git a/test/testcases/tests/level3/ls/files/validate1.xml b/test/testcases/tests/level3/ls/files/validate1.xml
new file mode 100644
index 0000000..9d9ab3d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/validate1.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE elt0 [
+ <!ELEMENT elt0 (elt0)>
+]>
+<elt0/>
diff --git a/test/testcases/tests/level3/ls/files/validateschema1.xml b/test/testcases/tests/level3/ls/files/validateschema1.xml
new file mode 100644
index 0000000..72def22
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/validateschema1.xml
@@ -0,0 +1,23 @@
+<!--
+
+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.
+
+-->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" >
+
+ <xsd:element name="elt0">
+ <xsd:complexType/>
+ </xsd:element>
+
+</xsd:schema>
+
diff --git a/test/testcases/tests/level3/ls/files/wellformed1.xml b/test/testcases/tests/level3/ls/files/wellformed1.xml
new file mode 100644
index 0000000..0248e2e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/wellformed1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<!DOCTYPE html SYSTEM 'xhtml1-strict.dtd'>
+<html>
+ <head><title>wellformed1</title></head>
+ <body>
+ <h×2/>
+ </body>
+</html> \ No newline at end of file
diff --git a/test/testcases/tests/level3/ls/files/wellformed2.xml b/test/testcases/tests/level3/ls/files/wellformed2.xml
new file mode 100644
index 0000000..888a285
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/wellformed2.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<!DOCTYPE html SYSTEM 'xhtml1-strict.dtd'>
+<html>
+ <head><title>Not well-formed</title></head>
+ <body>
+ <p wor×ld='bad name'/>
+ </body>
+</html> \ No newline at end of file
diff --git a/test/testcases/tests/level3/ls/files/wellformed3.xml b/test/testcases/tests/level3/ls/files/wellformed3.xml
new file mode 100644
index 0000000..7f49b2c
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/wellformed3.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0"?>
+<!DOCTYPE html SYSTEM 'xhtml1-strict.dtd'>
+<html>
+ <head><title>wellformed1</title></head>
+ <body title="<">
+ </body>
+</html> \ No newline at end of file
diff --git a/test/testcases/tests/level3/ls/files/xhtml1-strict.dtd b/test/testcases/tests/level3/ls/files/xhtml1-strict.dtd
new file mode 100644
index 0000000..c83c35d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/files/xhtml1-strict.dtd
@@ -0,0 +1,65 @@
+<!--
+
+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.
+
+-->
+
+<!--
+
+This is a radically simplified DTD for use in the DOM Test Suites
+due to a XML non-conformance of one implementation in processing
+parameter entities. When that non-conformance is resolved,
+this DTD can be replaced by the normal DTD for XHTML.
+
+-->
+
+
+<!ELEMENT html (head, body)>
+<!ATTLIST html xmlns CDATA #IMPLIED>
+<!ELEMENT head (meta?,title,script*)>
+<!ELEMENT meta EMPTY>
+<!ATTLIST meta
+ http-equiv CDATA #IMPLIED
+ content CDATA #IMPLIED>
+<!ELEMENT title (#PCDATA)>
+<!ELEMENT body (p*)>
+<!ATTLIST body onload CDATA #IMPLIED>
+<!ELEMENT p (#PCDATA|em|strong|code|sup|var|acronym|abbr)*>
+<!ATTLIST p
+ xmlns:dmstc CDATA #IMPLIED
+ xmlns:nm CDATA #IMPLIED
+ xmlns:emp2 CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT em (#PCDATA)>
+<!ELEMENT span (#PCDATA)>
+<!ELEMENT strong (#PCDATA)>
+<!ELEMENT code (#PCDATA)>
+<!ELEMENT sup (#PCDATA)>
+<!ELEMENT var (#PCDATA|span)*>
+<!ELEMENT acronym (#PCDATA)>
+<!ATTLIST acronym
+ title CDATA #IMPLIED
+ class CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT abbr (#PCDATA)>
+<!ATTLIST abbr
+ title CDATA #IMPLIED
+ class CDATA #IMPLIED
+ id ID #IMPLIED
+>
+<!ELEMENT script (#PCDATA)>
+<!ATTLIST script
+ type CDATA #IMPLIED
+ src CDATA #IMPLIED
+ charset CDATA #IMPLIED>
diff --git a/test/testcases/tests/level3/ls/infoset01.xml b/test/testcases/tests/level3/ls/infoset01.xml
new file mode 100644
index 0000000..95677d2
--- /dev/null
+++ b/test/testcases/tests/level3/ls/infoset01.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset01">
+<metadata>
+<title>infoset01</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with a DTD that doesn't match content with infoset=true, should load without complaint.
+</description>
+<date qualifier="created">2004-03-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-infoset"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<getResourceURI var="resourceURI" href='"validate1"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<assertNotNull actual="doc" id="docNotNull"/>
+<documentElement var="elem" obj="doc"/>
+<assertNotNull actual="elem" id="docElemNotNull"/>
+<nodeName var="nodeName" obj="elem"/>
+<assertEquals actual="nodeName" expected='"elt0"' ignoreCase="false" id="docElemName"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/infoset02.xml b/test/testcases/tests/level3/ls/infoset02.xml
new file mode 100644
index 0000000..1ead9c6
--- /dev/null
+++ b/test/testcases/tests/level3/ls/infoset02.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset02">
+<metadata>
+<title>infoset02</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with entities = false and see that entity references are not present in
+the element content.
+</description>
+<date qualifier="created">2004-03-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-infoset"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="elemList" index="1" interface="NodeList"/>
+<firstChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="3" ignoreCase="false" id="acrContentIsText"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/infoset03.xml b/test/testcases/tests/level3/ls/infoset03.xml
new file mode 100644
index 0000000..c4cf82c
--- /dev/null
+++ b/test/testcases/tests/level3/ls/infoset03.xml
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset03">
+<metadata>
+<title>infoset03</title>
+<creator>Curt Arnold</creator>
+<description>
+Parse document with infoset set to true.
+Check if string values were not normalized per an explicit whitespace=collapse.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-datatype-normalization"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="element" type="Element"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="str" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetXMLSchema" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="childNode" type="Node"/>
+<var name="childValue" type="DOMString"/>
+
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="xsdNS"/>
+<if><isNull obj="lsParser"/>
+ <createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+</if>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<if><isTrue value="canSetValidate"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+</if>
+<canSetParameter var="canSetXMLSchema" obj="domConfig" name='"schema-type"' value="xsdNS"/>
+<if><isTrue value="canSetXMLSchema"/>
+ <setParameter obj="domConfig" name='"schema-type"' value="xsdNS"/>
+</if>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<getResourceURI var="resourceURI" href='"datatype_normalization2"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagNameNS
+ var="elemList"
+ obj="doc"
+ namespaceURI='"http://www.w3.org/1999/xhtml"'
+ localName='"code"'
+ interface="Document"/>
+<item var="element" obj="elemList" interface="NodeList" index="1"/>
+<firstChild var="childNode" obj="element" interface="Node"/>
+<nodeValue var="childValue" obj="childNode"/>
+<assertEquals actual="childValue" expected='"EMP 0001"' ignoreCase="false" id="content2"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/infoset04.xml b/test/testcases/tests/level3/ls/infoset04.xml
new file mode 100644
index 0000000..3c9064d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/infoset04.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset04">
+<metadata>
+<title>infoset04</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with infoset = true and see that CDATASection are not present in
+the parsed document.
+</description>
+<date qualifier="created">2004-03-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-infoset"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="pList" type="NodeList"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="pList" obj="doc" tagname='"strong"' interface="Document"/>
+<item var="elem" obj="pList" index="1" interface="NodeList"/>
+<lastChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="3" ignoreCase="false" id="childIsText"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/infoset05.xml b/test/testcases/tests/level3/ls/infoset05.xml
new file mode 100644
index 0000000..35ce4f0
--- /dev/null
+++ b/test/testcases/tests/level3/ls/infoset05.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset05">
+<metadata>
+<title>infoset05</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with infoset = true and see that attributes for namespace declarations are present.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-infoset"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="node" obj="elem" name='"xmlns:dmstc"'/>
+<assertNotNull actual="node" id="nsAttrNotNull"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/infoset06.xml b/test/testcases/tests/level3/ls/infoset06.xml
new file mode 100644
index 0000000..e78abdc
--- /dev/null
+++ b/test/testcases/tests/level3/ls/infoset06.xml
@@ -0,0 +1,59 @@
+<?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="infoset06">
+<metadata>
+<title>infoset06</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with infoset and validate = true and check that
+element content whitespace is not eliminated.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-infoset"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="elemList" type="NodeList"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"validate"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"validate"' value="true"/>
+</if>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<firstChild var="node" obj="elem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="3" ignoreCase="false" id="nodeIsText"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/infoset07.xml b/test/testcases/tests/level3/ls/infoset07.xml
new file mode 100644
index 0000000..741ac3c
--- /dev/null
+++ b/test/testcases/tests/level3/ls/infoset07.xml
@@ -0,0 +1,51 @@
+<?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="infoset07">
+<metadata>
+<title>infoset07</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with infoset = true and see that comments are present in
+the parsed document.
+</description>
+<date qualifier="created">2004-03-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-infoset"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<documentElement var="docElem" obj="doc"/>
+<previousSibling var="node" obj="docElem" interface="Node"/>
+<nodeType var="nodeType" obj="node"/>
+<assertEquals actual="nodeType" expected="8" ignoreCase="false" id="nodeIsDocType"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/infoset08.xml b/test/testcases/tests/level3/ls/infoset08.xml
new file mode 100644
index 0000000..23c6e71
--- /dev/null
+++ b/test/testcases/tests/level3/ls/infoset08.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="infoset08">
+<metadata>
+<title>infoset08</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempt to load a namespace invalid document with infoset = true.
+</description>
+<date qualifier="created">2004-03-30</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-infoset"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"infoset"' value="true"/>
+<getResourceURI var="resourceURI" href='"namespaces1"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/metadata.xml b/test/testcases/tests/level3/ls/metadata.xml
new file mode 100644
index 0000000..c3c6e71
--- /dev/null
+++ b/test/testcases/tests/level3/ls/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+Copyright (c) 2003 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 metadata SYSTEM "dom3.dtd">
+
+<!-- This file contains additional metadata about DOM L3 Validation tests.
+ Allowing additional documentation without modifying the tests themselves. -->
+<metadata xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3">
+</metadata>
diff --git a/test/testcases/tests/level3/ls/namespacedeclarations01.xml b/test/testcases/tests/level3/ls/namespacedeclarations01.xml
new file mode 100644
index 0000000..e9b3955
--- /dev/null
+++ b/test/testcases/tests/level3/ls/namespacedeclarations01.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="namespacedeclarations01">
+<metadata>
+<title>namespacedeclarations01</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with namespace-declarations = false and see that attributes
+for namespace declarations are not present.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespace-declarations"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"namespace-declarations"' value="false"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="node" obj="elem" name='"xmlns:dmstc"'/>
+<assertNull actual="node" id="nsAttrNull"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/namespacedeclarations02.xml b/test/testcases/tests/level3/ls/namespacedeclarations02.xml
new file mode 100644
index 0000000..00de26c
--- /dev/null
+++ b/test/testcases/tests/level3/ls/namespacedeclarations02.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="namespacedeclarations02">
+<metadata>
+<title>namespacedeclarations02</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with namespace-declarations = true and see that attributes for namespace declarations are present.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-namespace-declarations"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"namespace-declarations"' value="true"/>
+<getResourceURI var="resourceURI" href='"hc_staff"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<getElementsByTagName var="elemList" obj="doc" tagname='"p"' interface="Document"/>
+<item var="elem" obj="elemList" index="0" interface="NodeList"/>
+<getAttributeNode var="node" obj="elem" name='"xmlns:dmstc"'/>
+<assertNotNull actual="node" id="nsAttrNotNull"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/namespaces01.xml b/test/testcases/tests/level3/ls/namespaces01.xml
new file mode 100644
index 0000000..34382be
--- /dev/null
+++ b/test/testcases/tests/level3/ls/namespaces01.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="namespaces01">
+<metadata>
+<title>namespaces01</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempt to load a namespace invalid document with namespaces = true.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-namespaces"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"namespaces"' value="true"/>
+<getResourceURI var="resourceURI" href='"namespaces1"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/namespaces02.xml b/test/testcases/tests/level3/ls/namespaces02.xml
new file mode 100644
index 0000000..01d514e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/namespaces02.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="namespaces02">
+<metadata>
+<title>namespaces02</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempt to load a namespace invalid document with namespaces = false.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-namespaces"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="node" type="Node"/>
+<var name="nodeType" type="int"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="docElem" type="Element"/>
+<var name="tagName" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"namespaces"' value="false"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"namespaces"' value="false"/>
+<getResourceURI var="resourceURI" href='"namespaces1"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="tagName" obj="docElem"/>
+<assertEquals actual="tagName" expected='"bad:ns:tag"' ignoreCase="false" id="tagName"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/newline01.xml b/test/testcases/tests/level3/ls/newline01.xml
new file mode 100644
index 0000000..49da210
--- /dev/null
+++ b/test/testcases/tests/level3/ls/newline01.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="newline01">
+<metadata>
+<title>newline01</title>
+<creator>Curt Arnold</creator>
+<description>
+LSSerializer.newLine should contain the platform default new line.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSSerializer"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-newLine"/>
+</metadata>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="newLine" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<newLine var="newLine" obj="lsSerializer"/>
+<assertNotNull actual="newLine" id="newLineNotNull"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/newline02.xml b/test/testcases/tests/level3/ls/newline02.xml
new file mode 100644
index 0000000..9bb4999
--- /dev/null
+++ b/test/testcases/tests/level3/ls/newline02.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="newline02">
+<metadata>
+<title>newline02</title>
+<creator>Curt Arnold</creator>
+<description>
+Setting LSSerializer.newLine should change the value retrieved subsequent calls.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSSerializer"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-newLine"/>
+</metadata>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="newLine" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<newLine obj="lsSerializer" value='"crlf"'/>
+<newLine var="newLine" obj="lsSerializer"/>
+<assertEquals actual="newLine" expected='"crlf"' id="newLine" ignoreCase="false"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/newline03.xml b/test/testcases/tests/level3/ls/newline03.xml
new file mode 100644
index 0000000..eea282e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/newline03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="newline03">
+<metadata>
+<title>newline03</title>
+<creator>Curt Arnold</creator>
+<description>
+Setting LSSerializer.newLine to null should reset the default value.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-DOMImplementationLS-createLSSerializer"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-newLine"/>
+</metadata>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="newLine" type="DOMString"/>
+<var name="origNewLine" type="DOMString"/>
+<var name="nullString" type="DOMString" isNull="true"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<newLine var="origNewLine" obj="lsSerializer"/>
+<newLine obj="lsSerializer" value="nullString"/>
+<newLine var="newLine" obj="lsSerializer"/>
+<assertEquals actual="newLine" expected='origNewLine' id="newLine" ignoreCase="false"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/noinputspecified01.xml b/test/testcases/tests/level3/ls/noinputspecified01.xml
new file mode 100644
index 0000000..b01a54b
--- /dev/null
+++ b/test/testcases/tests/level3/ls/noinputspecified01.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="noinputspecified01">
+<metadata>
+<title>noinputspecified01</title>
+<creator>Curt Arnold</creator>
+<description>
+Parsing using an uninitialized LSInput should result in a PARSE_ERR.
+is false.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parse"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="lsInput" type="LSInput"/>
+<var name="nullSchemaLanguage" type="DOMString" isNull="true"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="errorCount" type="int" value="0"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaLanguage"/>
+<createLSInput var="lsInput" obj="domImplLS"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parse var="doc" obj="lsParser" input="lsInput"/>
+ </PARSE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <if><greater actual="severity" expected="1"/>
+ <assertEquals actual="severity" expected="3" id="isFatalError" ignoreCase="false"/>
+ <assertEquals actual="type" expected='"no-input-specified"' id="noInputSpecified" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneError"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/nooutputspecified01.xml b/test/testcases/tests/level3/ls/nooutputspecified01.xml
new file mode 100644
index 0000000..80ff02d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/nooutputspecified01.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="nooutputspecified01">
+<metadata>
+<title>nooutputspecified01</title>
+<creator>Curt Arnold</creator>
+<description>
+Writing to an uninitialized LSOutput should result in a SERIALIZATION_ERR.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-write"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="lsOutput" type="LSOutput"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="retval" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createLSOutput var="lsOutput" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.w3.org/1999/xhtml"'
+ qualifiedName='"html"' doctype="docType"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<assertLSException id="throw_SERIALIZE_ERR">
+ <SERIALIZE_ERR>
+ <write var="retval" obj="lsSerializer" nodeArg="doc" destination="lsOutput"/>
+ </SERIALIZE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <if><greater actual="severity" expected="1"/>
+ <assertEquals actual="severity" expected="3" id="isFatalError" ignoreCase="false"/>
+ <assertEquals actual="type" expected='"no-output-specified"' id="noOutputSpecified" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneError"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/normalizecharacters01.xml b/test/testcases/tests/level3/ls/normalizecharacters01.xml
new file mode 100644
index 0000000..2561b9c
--- /dev/null
+++ b/test/testcases/tests/level3/ls/normalizecharacters01.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters01">
+<metadata>
+<title>normalizecharacters01</title>
+<creator>Curt Arnold</creator>
+<description>
+Parsing a non-Unicode normalized document not have characters normalized if normalize-characters is false.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-normalize-characters"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="nullSchemaLanguage" type="DOMString" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="tagName" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaLanguage"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="false"/>
+<getResourceURI var="resourceURI" href='"characternormalization1"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<assertNotNull actual="doc" id="docNotNull"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="tagName" obj="docElem"/>
+<assertEquals actual="tagName" expected='"suc&#x327;on"' ignoreCase="false" id="notNormalized"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/normalizecharacters02.xml b/test/testcases/tests/level3/ls/normalizecharacters02.xml
new file mode 100644
index 0000000..5783e07
--- /dev/null
+++ b/test/testcases/tests/level3/ls/normalizecharacters02.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters02">
+<metadata>
+<title>normalizecharacters02</title>
+<creator>Curt Arnold</creator>
+<description>
+Parsing a non-Unicode normalized document should result in Unicode-normalized content if normalize-characters is true..
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-normalize-characters"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<var name="nullSchemaLanguage" type="DOMString" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="tagName" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaLanguage"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"normalize-characters"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="true"/>
+<getResourceURI var="resourceURI" href='"characternormalization1"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<assertNotNull actual="doc" id="docNotNull"/>
+<documentElement var="docElem" obj="doc"/>
+<tagName var="tagName" obj="docElem"/>
+<assertEquals actual="tagName" expected='"su&#xE7;on"' ignoreCase="false" id="charNormalized"/>
+</if>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/normalizecharacters03.xml b/test/testcases/tests/level3/ls/normalizecharacters03.xml
new file mode 100644
index 0000000..e968623
--- /dev/null
+++ b/test/testcases/tests/level3/ls/normalizecharacters03.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters03">
+<metadata>
+<title>normalizecharacters03</title>
+<creator>Curt Arnold</creator>
+<description>
+Characters should be normalized on serialization if normalize-characters is true.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-normalize-characters"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="newNode" type="Node"/>
+<var name="output" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<canSetParameter var="canSet" obj="domConfig" name='"normalize-characters"' value="true"/>
+<if><isTrue value="canSet"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"suc&#x327;on"' doctype="docType"/>
+<documentElement var="docElem" obj="doc"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="true"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<assertTrue id="notNormalized"><contains obj="output" str='"su&#xE7;on"' interface="DOMString"/></assertTrue>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/ls/normalizecharacters04.xml b/test/testcases/tests/level3/ls/normalizecharacters04.xml
new file mode 100644
index 0000000..35023fd
--- /dev/null
+++ b/test/testcases/tests/level3/ls/normalizecharacters04.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="normalizecharacters04">
+<metadata>
+<title>normalizecharacters04</title>
+<creator>Curt Arnold</creator>
+<description>
+Characters should be not normalized on serialization if normalize-characters is false.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-normalize-characters"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="output" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"suc&#x327;on"' doctype="docType"/>
+<documentElement var="docElem" obj="doc"/>
+<setParameter obj="domConfig" name='"normalize-characters"' value="false"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<assertTrue id="notNormalized"><contains obj="output" str='"suc&#x327;on"' interface="DOMString"/></assertTrue>
+</test>
diff --git a/test/testcases/tests/level3/ls/schemalocation01.xml b/test/testcases/tests/level3/ls/schemalocation01.xml
new file mode 100644
index 0000000..cee3ab7
--- /dev/null
+++ b/test/testcases/tests/level3/ls/schemalocation01.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="schemalocation01">
+<metadata>
+<title>schemalocation01</title>
+<creator>Curt Arnold</creator>
+<description>
+Validate a document with no DTD against an externally specified schema that matches its content.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-location"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-type"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetSchemaType" type="boolean"/>
+<var name="canSetSchemaLocation" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetSchemaType" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<getResourceURI var="resourceURI" href='"validateschema1"' contentType="text/xml"/>
+<canSetParameter var="canSetSchemaLocation" obj="domConfig" name='"schema-location"' value="resourceURI"/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetSchemaType"/>
+ <isTrue value="canSetSchemaLocation"/>
+ </and>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"schema-location"' value="resourceURI"/>
+ <getResourceURI var="resourceURI" href='"validate1"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <assertNotNull actual="doc" id="docNotNull"/>
+ <documentElement var="elem" obj="doc"/>
+ <assertNotNull actual="elem" id="docElemNotNull"/>
+ <nodeName var="nodeName" obj="elem"/>
+ <assertEquals actual="nodeName" expected='"elt0"' ignoreCase="false" id="docElemName"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/schemalocation02.xml b/test/testcases/tests/level3/ls/schemalocation02.xml
new file mode 100644
index 0000000..287d724
--- /dev/null
+++ b/test/testcases/tests/level3/ls/schemalocation02.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="schemalocation02">
+<metadata>
+<title>schemalocation02</title>
+<creator>Curt Arnold</creator>
+<description>
+Validate a document with no DTD against an externally specified schema that does not match its content.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-location"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-type"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetSchemaType" type="boolean"/>
+<var name="canSetSchemaLocation" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetSchemaType" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<getResourceURI var="resourceURI" href='"validateschema1"' contentType="text/xml"/>
+<canSetParameter var="canSetSchemaLocation" obj="domConfig" name='"schema-location"' value="resourceURI"/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetSchemaType"/>
+ <isTrue value="canSetSchemaLocation"/>
+ </and>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"schema-location"' value="resourceURI"/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <getResourceURI var="resourceURI" href='"test3"' contentType="text/xml"/>
+ <assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+ </assertLSException>
+ <allErrors var="errors" obj="errorMonitor"/>
+ <for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <if><equals actual="severity" expected="2" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+ </for-each>
+ <assertTrue id="atLeastOneError"><greater actual="errorCount" expected="0"/></assertTrue>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/schemalocation03.xml b/test/testcases/tests/level3/ls/schemalocation03.xml
new file mode 100644
index 0000000..235fb95
--- /dev/null
+++ b/test/testcases/tests/level3/ls/schemalocation03.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="schemalocation03">
+<metadata>
+<title>schemalocation03</title>
+<creator>Curt Arnold</creator>
+<description>
+Serialize a document with no DTD against an externally specified schema that matches its content.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-location"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-type"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetSchemaType" type="boolean"/>
+<var name="canSetSchemaLocation" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<var name="doctype" type="DocumentType" isNull="true"/>
+<var name="output" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetSchemaType" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<getResourceURI var="resourceURI" href='"validateschema1"' contentType="text/xml"/>
+<canSetParameter var="canSetSchemaLocation" obj="domConfig" name='"schema-location"' value="resourceURI"/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetSchemaType"/>
+ <isTrue value="canSetSchemaLocation"/>
+ </and>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"schema-location"' value="resourceURI"/>
+ <createDocument var="doc" obj="domImplLS" namespaceURI="nullNS" qualifiedName='"elt0"' doctype="doctype"/>
+ <writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/schemalocation04.xml b/test/testcases/tests/level3/ls/schemalocation04.xml
new file mode 100644
index 0000000..8eea1ed
--- /dev/null
+++ b/test/testcases/tests/level3/ls/schemalocation04.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="schemalocation04">
+<metadata>
+<title>schemalocation04</title>
+<creator>Curt Arnold</creator>
+<description>
+Serialize a document with no DTD against an externally specified schema that matches its content.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-location"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-type"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetSchemaType" type="boolean"/>
+<var name="canSetSchemaLocation" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<var name="doctype" type="DocumentType" isNull="true"/>
+<var name="output" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetSchemaType" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<getResourceURI var="resourceURI" href='"validateschema1"' contentType="text/xml"/>
+<canSetParameter var="canSetSchemaLocation" obj="domConfig" name='"schema-location"' value="resourceURI"/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetSchemaType"/>
+ <isTrue value="canSetSchemaLocation"/>
+ </and>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"schema-location"' value="resourceURI"/>
+ <createDocument var="doc" obj="domImplLS" namespaceURI="nullNS" qualifiedName='"elt2"' doctype="doctype"/>
+ <assertLSException id="throw_SERIALIZE_ERR">
+ <SERIALIZE_ERR>
+ <writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+ </SERIALIZE_ERR>
+ </assertLSException>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/schematype01.xml b/test/testcases/tests/level3/ls/schematype01.xml
new file mode 100644
index 0000000..48b5fd7
--- /dev/null
+++ b/test/testcases/tests/level3/ls/schematype01.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="schematype01">
+<metadata>
+<title>schematype01</title>
+<creator>Curt Arnold</creator>
+<description>
+Specify schema validation for a document with a DTD but no specified schema.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-type"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetSchemaType" type="boolean"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetSchemaType" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetSchemaType"/>
+ </and>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+ <getResourceURI var="resourceURI" href='"test3"' contentType="text/xml"/>
+ <assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+ </assertLSException>
+ <allErrors var="errors" obj="errorMonitor"/>
+ <for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <if><equals actual="severity" expected="2" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+ </for-each>
+ <assertTrue id="atLeastOneError"><greater actual="errorCount" expected="0"/></assertTrue>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/schematype02.xml b/test/testcases/tests/level3/ls/schematype02.xml
new file mode 100644
index 0000000..ef87613
--- /dev/null
+++ b/test/testcases/tests/level3/ls/schematype02.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="schematype02">
+<metadata>
+<title>schematype02</title>
+<creator>Curt Arnold</creator>
+<description>
+Specify DTD validation for a document with a matching DTD.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-type"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetSchemaType" type="boolean"/>
+<var name="dtdNS" type="DOMString" value='"http://www.w3.org/TR/REC-xml"'/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetSchemaType" obj="domConfig" name='"schema-type"' value='dtdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetSchemaType"/>
+ </and>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='dtdNS'/>
+ <getResourceURI var="resourceURI" href='"test3"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <assertNotNull actual="doc" id="docNotNull"/>
+ <documentElement var="elem" obj="doc"/>
+ <assertNotNull actual="elem" id="docElemNotNull"/>
+ <nodeName var="nodeName" obj="elem"/>
+ <assertEquals actual="nodeName" expected='"elt0"' ignoreCase="false" id="docElemName"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/schematype03.xml b/test/testcases/tests/level3/ls/schematype03.xml
new file mode 100644
index 0000000..4ade8b4
--- /dev/null
+++ b/test/testcases/tests/level3/ls/schematype03.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="schematype03">
+<metadata>
+<title>schematype03</title>
+<creator>Curt Arnold</creator>
+<description>
+Specify schema validation for a document with no DTD but schema location hints.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-type"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetSchemaType" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetSchemaType" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetSchemaType"/>
+ </and>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <getResourceURI var="resourceURI" href='"schematype1"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <assertNotNull actual="doc" id="docNotNull"/>
+ <documentElement var="elem" obj="doc"/>
+ <assertNotNull actual="elem" id="docElemNotNull"/>
+ <nodeName var="nodeName" obj="elem"/>
+ <assertEquals actual="nodeName" expected='"elt0"' ignoreCase="false" id="docElemName"/>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/schematype04.xml b/test/testcases/tests/level3/ls/schematype04.xml
new file mode 100644
index 0000000..2fc6145
--- /dev/null
+++ b/test/testcases/tests/level3/ls/schematype04.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="schematype04">
+<metadata>
+<title>schematype04</title>
+<creator>Curt Arnold</creator>
+<description>
+Serialize a document with schema validation but no available schema.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-schema-type"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="canSetValidate" type="boolean"/>
+<var name="canSetSchemaType" type="boolean"/>
+<var name="xsdNS" type="DOMString" value='"http://www.w3.org/2001/XMLSchema"'/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<var name="doctype" type="DocumentType" isNull="true"/>
+<var name="output" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<canSetParameter var="canSetValidate" obj="domConfig" name='"validate"' value="true"/>
+<canSetParameter var="canSetSchemaType" obj="domConfig" name='"schema-type"' value='xsdNS'/>
+<if>
+ <and>
+ <isTrue value="canSetValidate"/>
+ <isTrue value="canSetSchemaType"/>
+ </and>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <setParameter obj="domConfig" name='"schema-type"' value='xsdNS'/>
+ <createDocument var="doc" obj="domImplLS" namespaceURI="nullNS" qualifiedName='"elt0"' doctype="doctype"/>
+ <assertLSException id="throw_SERIALIZE_ERR">
+ <SERIALIZE_ERR>
+ <writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+ </SERIALIZE_ERR>
+ </assertLSException>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/splitcdatasections01.xml b/test/testcases/tests/level3/ls/splitcdatasections01.xml
new file mode 100644
index 0000000..9dcde32
--- /dev/null
+++ b/test/testcases/tests/level3/ls/splitcdatasections01.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="splitcdatasections01">
+<metadata>
+<title>splitcdatasections01</title>
+<creator>Curt Arnold</creator>
+<description>
+CDATASections containing unrepresentable characters should be split when split-cdata-sections is true.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-split-cdata-sections"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="newNode" type="Node"/>
+<var name="output" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"test"' doctype="docType"/>
+<documentElement var="docElem" obj="doc"/>
+<createCDATASection var="newNode" obj="doc" data='"this is not ]]&gt; good"'/>
+<appendChild var="retNode" obj="docElem" newChild="newNode"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"split-cdata-sections"' value="true"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="true"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<assertFalse id="notNaive"><contains obj="output" str='"this is not ]]&gt; good"' interface="DOMString"/></assertFalse>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/splitcdatasections02.xml b/test/testcases/tests/level3/ls/splitcdatasections02.xml
new file mode 100644
index 0000000..c74b177
--- /dev/null
+++ b/test/testcases/tests/level3/ls/splitcdatasections02.xml
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="splitcdatasections02">
+<metadata>
+<title>splitcdatasections02</title>
+<creator>Curt Arnold</creator>
+<description>
+CDATASections containing unrepresentable characters raise a SERIALIZE_ERR when
+split-cdata-sections is false and well-formed is true.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-split-cdata-sections"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-well-formed"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="docElem" type="Element"/>
+<var name="newNode" type="Node"/>
+<var name="output" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="errorCount" type="int" value="0"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"test"' doctype="docType"/>
+<documentElement var="docElem" obj="doc"/>
+<createCDATASection var="newNode" obj="doc" data='"this is not ]]&gt; good"'/>
+<appendChild var="retNode" obj="docElem" newChild="newNode"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"split-cdata-sections"' value="false"/>
+<setParameter obj="domConfig" name='"cdata-sections"' value="true"/>
+<setParameter obj="domConfig" name='"well-formed"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<assertLSException id="throw_SERIALIZE_ERR">
+ <SERIALIZE_ERR>
+ <writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+ </SERIALIZE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <if><equals actual="type" expected='"wf-invalid-character"' ignoreCase="false"/>
+ <assertEquals actual="severity" expected="2" ignoreCase="false" id="severityError"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertTrue id="hasWfErrors"><greater actual="errorCount" expected="0"/></assertTrue>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/unsupportedencoding01.xml b/test/testcases/tests/level3/ls/unsupportedencoding01.xml
new file mode 100644
index 0000000..d0eb19d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/unsupportedencoding01.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="unsupportedencoding01">
+<metadata>
+<title>checkcharacternormalization02</title>
+<creator>Curt Arnold</creator>
+<description>
+Parsing a document with a unsupported encoding should raise a PARSE_ERR and dispatch a "unsupported-encoding"
+DOM error.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="nullSchemaLanguage" type="DOMString" isNull="true"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<var name="errorCount" type="int" value="0"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaLanguage"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getResourceURI var="resourceURI" href='"unsupportedencoding1"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <type var="type" obj="error" interface="DOMError"/>
+ <if><equals actual="type" expected='"unsupported-encoding"' ignoreCase="true"/>
+ <assertEquals actual="severity" expected="3" id="isError" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneError"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/validate01.xml b/test/testcases/tests/level3/ls/validate01.xml
new file mode 100644
index 0000000..9d899c7
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validate01.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validate01">
+<metadata>
+<title>validate01</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document without a DTD with validate=false, should load without complaint.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"validate"' value="false"/>
+<getResourceURI var="resourceURI" href='"test0"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<assertNotNull actual="doc" id="docNotNull"/>
+<documentElement var="elem" obj="doc"/>
+<assertNotNull actual="elem" id="docElemNotNull"/>
+<nodeName var="nodeName" obj="elem"/>
+<assertEquals actual="nodeName" expected='"elt0"' ignoreCase="false" id="docElemName"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/validate02.xml b/test/testcases/tests/level3/ls/validate02.xml
new file mode 100644
index 0000000..9071403
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validate02.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validate02">
+<metadata>
+<title>validate02</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document without a DTD with validate=true, should throw PARSE_ERR.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="canSet" type="boolean"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"validate"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"validate"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getResourceURI var="resourceURI" href='"test0"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <if><equals actual="severity" expected="2" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertTrue id="atLeastOneError"><greater actual="errorCount" expected="0"/></assertTrue>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/ls/validate03.xml b/test/testcases/tests/level3/ls/validate03.xml
new file mode 100644
index 0000000..12e0108
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validate03.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validate03">
+<metadata>
+<title>validate03</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with a DTD that doesn't match content with validate=false, should load without complaint.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"validate"' value="false"/>
+<getResourceURI var="resourceURI" href='"validate1"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<assertNotNull actual="doc" id="docNotNull"/>
+<documentElement var="elem" obj="doc"/>
+<assertNotNull actual="elem" id="docElemNotNull"/>
+<nodeName var="nodeName" obj="elem"/>
+<assertEquals actual="nodeName" expected='"elt0"' ignoreCase="false" id="docElemName"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/validate04.xml b/test/testcases/tests/level3/ls/validate04.xml
new file mode 100644
index 0000000..34a9091
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validate04.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validate04">
+<metadata>
+<title>validate04</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with mismatched DTD with validate=true, should throw PARSE_ERR.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="canSet" type="boolean"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"validate"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"validate"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getResourceURI var="resourceURI" href='"validate1"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <if><equals actual="severity" expected="2" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertTrue id="atLeastOneError"><greater actual="errorCount" expected="0"/></assertTrue>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/ls/validate05.xml b/test/testcases/tests/level3/ls/validate05.xml
new file mode 100644
index 0000000..805647a
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validate05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validate05">
+<metadata>
+<title>validate05</title>
+<creator>Curt Arnold</creator>
+<description>
+A document without a DTD should serialize without complaint if validate is false.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="output" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"test"' doctype="docType"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"validate"' value="false"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+</test>
diff --git a/test/testcases/tests/level3/ls/validate06.xml b/test/testcases/tests/level3/ls/validate06.xml
new file mode 100644
index 0000000..a637b35
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validate06.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validate06">
+<metadata>
+<title>validate06</title>
+<creator>Curt Arnold</creator>
+<description>
+A document without a DTD should throw a SERIALIZE_ERR if validate is true.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="output" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"test"' doctype="docType"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<canSetParameter var="canSet" obj="domConfig" name='"validate"' value="true"/>
+<if><isTrue value="canSet"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <assertLSException id="throw_SERIALIZE_ERR">
+ <SERIALIZE_ERR>
+ <writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+ </SERIALIZE_ERR>
+ </assertLSException>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/ls/validate07.xml b/test/testcases/tests/level3/ls/validate07.xml
new file mode 100644
index 0000000..3065835
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validate07.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validate07">
+<metadata>
+<title>validate07</title>
+<creator>Curt Arnold</creator>
+<description>
+Load and serialize a document with a DTD that doesn't match content with validate=false, should load and serialize without complaint.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="output" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"validate"' value="false"/>
+<getResourceURI var="resourceURI" href='"validate1"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<assertNotNull actual="doc" id="docNotNull"/>
+<documentElement var="elem" obj="doc"/>
+<assertNotNull actual="elem" id="docElemNotNull"/>
+<nodeName var="nodeName" obj="elem"/>
+<assertEquals actual="nodeName" expected='"elt0"' ignoreCase="false" id="docElemName"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"validate"' value="false"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/validate08.xml b/test/testcases/tests/level3/ls/validate08.xml
new file mode 100644
index 0000000..8272054
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validate08.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validate08">
+<metadata>
+<title>validate08</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with a DTD that doesn't match content, then attempt to serialize when validate is true which
+should result in a SERIALIZE_ERR.
+</description>
+<date qualifier="created">2004-04-01</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="output" type="DOMString"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<canSetParameter var="canSet" obj="domConfig" name='"validate"' value="true"/>
+<if><isTrue value="canSet"/>
+ <setParameter obj="domConfig" name='"validate"' value="true"/>
+ <createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+ <domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+ <setParameter obj="domConfig" name='"validate"' value="false"/>
+ <getResourceURI var="resourceURI" href='"validate1"' contentType="text/xml"/>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ <assertLSException id="throw_SERIALIZE_ERR">
+ <SERIALIZE_ERR>
+ <writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+ </SERIALIZE_ERR>
+ </assertLSException>
+</if>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/validateifschema01.xml b/test/testcases/tests/level3/ls/validateifschema01.xml
new file mode 100644
index 0000000..118fa3d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validateifschema01.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validateifschema01">
+<metadata>
+<title>validateifschema01</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document without a DTD with validate-if-schema=false, should load without complaint.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate-if-schema"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"validate-if-schema"' value="false"/>
+<getResourceURI var="resourceURI" href='"test0"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<assertNotNull actual="doc" id="docNotNull"/>
+<documentElement var="elem" obj="doc"/>
+<assertNotNull actual="elem" id="docElemNotNull"/>
+<nodeName var="nodeName" obj="elem"/>
+<assertEquals actual="nodeName" expected='"elt0"' ignoreCase="false" id="docElemName"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/validateifschema02.xml b/test/testcases/tests/level3/ls/validateifschema02.xml
new file mode 100644
index 0000000..7c53eeb
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validateifschema02.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validateifschema02">
+<metadata>
+<title>validateifschema02</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document without a DTD with validate-if-schema=true should successfully complete.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate-if-schema"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="canSet" type="boolean"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"validate-if-schema"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"validate-if-schema"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getResourceURI var="resourceURI" href='"test0"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<assertNotNull actual="doc" id="docNotNull"/>
+<assertLowerSeverity id="noErrors" obj="errorMonitor" severity="SEVERITY_ERROR"/>
+<documentElement var="elem" obj="doc"/>
+<assertNotNull actual="elem" id="docElemNotNull"/>
+<nodeName var="nodeName" obj="elem"/>
+<assertEquals actual="nodeName" expected='"elt0"' ignoreCase="false" id="docElemName"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/ls/validateifschema03.xml b/test/testcases/tests/level3/ls/validateifschema03.xml
new file mode 100644
index 0000000..5dd1aa7
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validateifschema03.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validateifschema03">
+<metadata>
+<title>validateifschema03</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with a DTD that doesn't match content with validate-if-schema=false, should load without complaint.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate-if-schema"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"validate-if-schema"' value="false"/>
+<getResourceURI var="resourceURI" href='"validate1"' contentType="text/xml"/>
+<parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+<assertNotNull actual="doc" id="docNotNull"/>
+<documentElement var="elem" obj="doc"/>
+<assertNotNull actual="elem" id="docElemNotNull"/>
+<nodeName var="nodeName" obj="elem"/>
+<assertEquals actual="nodeName" expected='"elt0"' ignoreCase="false" id="docElemName"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/validateifschema04.xml b/test/testcases/tests/level3/ls/validateifschema04.xml
new file mode 100644
index 0000000..90f504d
--- /dev/null
+++ b/test/testcases/tests/level3/ls/validateifschema04.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="validateifschema04">
+<metadata>
+<title>validateifschema04</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with mismatched DTD with validate-if-schema=true, should throw PARSE_ERR.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-validate-if-schema"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="canSet" type="boolean"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<canSetParameter var="canSet" obj="domConfig" name='"validate-if-schema"' value="true"/>
+<if><isTrue value="canSet"/>
+<setParameter obj="domConfig" name='"validate-if-schema"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getResourceURI var="resourceURI" href='"validate1"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <severity var="severity" obj="error"/>
+ <if><equals actual="severity" expected="2" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertTrue id="atLeastOneError"><greater actual="errorCount" expected="0"/></assertTrue>
+</if>
+</test>
diff --git a/test/testcases/tests/level3/ls/wellformed01.xml b/test/testcases/tests/level3/ls/wellformed01.xml
new file mode 100644
index 0000000..2dcd46e
--- /dev/null
+++ b/test/testcases/tests/level3/ls/wellformed01.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="wellformed01">
+<metadata>
+<title>wellformed01</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with an invalid character in a tagname.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-well-formed"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"well-formed"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getResourceURI var="resourceURI" href='"wellformed1"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <type interface="DOMError" var="type" obj="error"/>
+ <severity var="severity" obj="error"/>
+ <if><greater actual="severity" expected="1"/>
+ <assertEquals actual="type" expected='"wf-invalid-character-in-node-name"' ignoreCase="false" id="type"/>
+ <assertEquals actual="severity" expected="2" id="severityError" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneWFError"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/wellformed02.xml b/test/testcases/tests/level3/ls/wellformed02.xml
new file mode 100644
index 0000000..68310e3
--- /dev/null
+++ b/test/testcases/tests/level3/ls/wellformed02.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="wellformed02">
+<metadata>
+<title>wellformed02</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with an invalid character in an attribute name.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-well-formed"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"well-formed"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getResourceURI var="resourceURI" href='"wellformed2"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <type interface="DOMError" var="type" obj="error"/>
+ <severity var="severity" obj="error"/>
+ <if><greater actual="severity" expected="1"/>
+ <assertEquals actual="type" expected='"wf-invalid-character-in-node-name"' ignoreCase="false" id="type"/>
+ <assertEquals actual="severity" expected="2" id="severityError" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneWFError"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/wellformed03.xml b/test/testcases/tests/level3/ls/wellformed03.xml
new file mode 100644
index 0000000..4c6faaf
--- /dev/null
+++ b/test/testcases/tests/level3/ls/wellformed03.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="wellformed03">
+<metadata>
+<title>wellformed03</title>
+<creator>Curt Arnold</creator>
+<description>
+Load a document with an invalid character in an attribute value, should throw a PARSE_ERR and
+dispatch a DOMError with type 'wf-invalid-character'.
+</description>
+<date qualifier="created">2004-03-29</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSParser-parseURI"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#parameter-well-formed"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="elem" type="Element"/>
+<var name="node" type="Node"/>
+<var name="nodeName" type="DOMString"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsParser" type="LSParser"/>
+<var name="nullSchemaType" type="DOMString" isNull="true"/>
+<var name="resourceURI" type="DOMString"/>
+<var name="errorMonitor" type="DOMErrorMonitor"/>
+<var name="errors" type="List"/>
+<var name="error" type="DOMError"/>
+<var name="errorCount" type="int" value="0"/>
+<var name="severity" type="int"/>
+<var name="type" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSParser var="lsParser" obj="domImplLS" mode="1" schemaType="nullSchemaType"/>
+<domConfig obj="lsParser" var="domConfig" interface="LSParser"/>
+<setParameter obj="domConfig" name='"well-formed"' value="true"/>
+<setParameter obj="domConfig" name='"error-handler"' value="errorMonitor"/>
+<getResourceURI var="resourceURI" href='"wellformed3"' contentType="text/xml"/>
+<assertLSException id="throw_PARSE_ERR">
+ <PARSE_ERR>
+ <parseURI var="doc" obj="lsParser" uri="resourceURI"/>
+ </PARSE_ERR>
+</assertLSException>
+<allErrors var="errors" obj="errorMonitor"/>
+<for-each member="error" collection="errors">
+ <type interface="DOMError" var="type" obj="error"/>
+ <severity var="severity" obj="error"/>
+ <if><equals actual="type" expected='"wf-invalid-character"' ignoreCase="false"/>
+ <assertEquals actual="severity" expected="2" id="severityError" ignoreCase="false"/>
+ <increment var="errorCount" value="1"/>
+ </if>
+</for-each>
+<assertEquals actual="errorCount" expected="1" ignoreCase="false" id="oneWFError"/>
+</test>
+
diff --git a/test/testcases/tests/level3/ls/writeToURI1.xml b/test/testcases/tests/level3/ls/writeToURI1.xml
new file mode 100644
index 0000000..96ef040
--- /dev/null
+++ b/test/testcases/tests/level3/ls/writeToURI1.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="writeToURI1">
+ <metadata>
+ <title>writeToURI1</title>
+ <creator>Curt Arnold</creator>
+ <description>Writes a document to a URL for a temporary file
+ using LSSerializer.writeToURI and rereads the document.</description>
+ <date qualifier="created">2003-12-30</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToURI"/>
+ </metadata>
+ <implementationAttribute name="validating" value="false"/>
+
+ <var name="testDoc" type="Document"/>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="output" type="LSOutput"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="systemId" type="DOMString"/>
+ <var name="checkSystemId" type="DOMString"/>
+ <var name="status" type="boolean"/>
+ <var name="input" type="LSInput"/>
+ <var name="parser" type="LSParser"/>
+ <var name="checkDoc" type="Document"/>
+ <var name="docElem" type="Element"/>
+ <var name="docElemName" type="DOMString"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+
+ <load var="testDoc" href="test0" willBeModified="false"/>
+ <implementation var="domImpl"/>
+
+ <createTempURI var="systemId" scheme="file"/>
+
+ <!-- create a serializer and write a test document -->
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <writeToURI var="status" obj="serializer" nodeArg="testDoc" uri="systemId"/>
+ <assertTrue actual="status" id="writeStatus"/>
+
+ <!-- read the serialized document -->
+ <createLSInput var="input" obj="domImpl"/>
+ <systemId obj="input" value="systemId" interface="LSInput"/>
+ <createLSParser var="parser" obj="domImpl" schemaType="NULL_SCHEMA_TYPE" mode="1"/>
+ <parse var="checkDoc" obj="parser" input="input"/>
+ <assertNotNull actual="checkDoc" id="checkNotNull"/>
+ <documentElement var="docElem" obj="checkDoc"/>
+ <nodeName var="docElemName" obj="docElem"/>
+ <assertEquals expected='"elt0"' actual="docElemName" id="checkDocElemName" ignoreCase="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/writeToURI2.xml b/test/testcases/tests/level3/ls/writeToURI2.xml
new file mode 100644
index 0000000..89509bd
--- /dev/null
+++ b/test/testcases/tests/level3/ls/writeToURI2.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 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="writeToURI2">
+ <metadata>
+ <title>writeToURI2</title>
+ <creator>Curt Arnold</creator>
+ <description>Writes a document to a URL for a http server
+ using LSSerializer.writeToURI and rereads the document.</description>
+ <date qualifier="created">2003-12-30</date>
+ <subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToURI"/>
+ </metadata>
+ <implementationAttribute name="validating" value="false"/>
+
+ <var name="testDoc" type="Document"/>
+ <var name="domImpl" type="DOMImplementationLS"/>
+ <var name="output" type="LSOutput"/>
+ <var name="serializer" type="LSSerializer"/>
+ <var name="systemId" type="DOMString"/>
+ <var name="checkSystemId" type="DOMString"/>
+ <var name="status" type="boolean"/>
+ <var name="input" type="LSInput"/>
+ <var name="parser" type="LSParser"/>
+ <var name="checkDoc" type="Document"/>
+ <var name="docElem" type="Element"/>
+ <var name="docElemName" type="DOMString"/>
+ <var name="NULL_SCHEMA_TYPE" type="DOMString" isNull="true"/>
+
+ <load var="testDoc" href="test0" willBeModified="false"/>
+ <implementation var="domImpl"/>
+
+ <createTempURI var="systemId" scheme="http"/>
+
+ <!-- create a serializer and write a test document -->
+ <createLSSerializer var="serializer" obj="domImpl"/>
+ <writeToURI var="status" obj="serializer" nodeArg="testDoc" uri="systemId"/>
+ <assertTrue actual="status" id="writeStatus"/>
+
+ <!-- read the serialized document -->
+ <createLSInput var="input" obj="domImpl"/>
+ <systemId obj="input" value="systemId" interface="LSInput"/>
+ <createLSParser var="parser" obj="domImpl" schemaType="NULL_SCHEMA_TYPE" mode="1"/>
+ <parse var="checkDoc" obj="parser" input="input"/>
+ <assertNotNull actual="checkDoc" id="checkNotNull"/>
+ <documentElement var="docElem" obj="checkDoc"/>
+ <nodeName var="docElemName" obj="docElem"/>
+ <assertEquals expected='"elt0"' actual="docElemName" id="checkDocElemName" ignoreCase="false"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/ls/xmldeclaration01.xml b/test/testcases/tests/level3/ls/xmldeclaration01.xml
new file mode 100644
index 0000000..c5d1939
--- /dev/null
+++ b/test/testcases/tests/level3/ls/xmldeclaration01.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="xmldeclaration01">
+<metadata>
+<title>xmldeclaration01</title>
+<creator>Curt Arnold</creator>
+<description>
+XML declarations should be serialized if xml-declaration is true.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-xml-declaration"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="output" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"test"' doctype="docType"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"xml-declaration"' value="true"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<assertTrue id="containsXMLDecl"><contains obj="output" str='"&lt;?xml"' interface="DOMString"/></assertTrue>
+<assertTrue id="containsUTF16"><contains obj="output" str='"UTF-16"' interface="DOMString"/></assertTrue>
+<assertTrue id="contains1_0"><contains obj="output" str='"1.0"' interface="DOMString"/></assertTrue>
+</test>
+
+
diff --git a/test/testcases/tests/level3/ls/xmldeclaration02.xml b/test/testcases/tests/level3/ls/xmldeclaration02.xml
new file mode 100644
index 0000000..ce391b1
--- /dev/null
+++ b/test/testcases/tests/level3/ls/xmldeclaration02.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 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="xmldeclaration02">
+<metadata>
+<title>xmldeclaration02</title>
+<creator>Curt Arnold</creator>
+<description>
+XML declarations should not be serialized if xml-declaration is false.
+</description>
+<date qualifier="created">2004-03-31</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#LS-LSSerializer-writeToString"/>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407/load-save#parameter-xml-declaration"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="domConfig" type="DOMConfiguration"/>
+<var name="domImplLS" type="DOMImplementationLS"/>
+<var name="lsSerializer" type="LSSerializer"/>
+<var name="docType" type="DocumentType" isNull="true"/>
+<var name="output" type="DOMString"/>
+<implementation var="domImplLS"/>
+<createLSSerializer var="lsSerializer" obj="domImplLS"/>
+<createDocument var="doc" obj="domImplLS" namespaceURI='"http://www.example.org"'
+ qualifiedName='"test"' doctype="docType"/>
+<domConfig obj="lsSerializer" var="domConfig" interface="LSSerializer"/>
+<setParameter obj="domConfig" name='"xml-declaration"' value="false"/>
+<writeToString var="output" obj="lsSerializer" nodeArg="doc"/>
+<assertFalse id="containsXMLDecl"><contains obj="output" str='"&lt;?xml"' interface="DOMString"/></assertFalse>
+<assertFalse id="containsUTF16"><contains obj="output" str='"UTF-16"' interface="DOMString"/></assertFalse>
+<assertFalse id="contains1_0"><contains obj="output" str='"1.0"' interface="DOMString"/></assertFalse>
+</test>
+
+
diff --git a/test/testcases/tests/level3/validation/.cvsignore b/test/testcases/tests/level3/validation/.cvsignore
new file mode 100644
index 0000000..182530a
--- /dev/null
+++ b/test/testcases/tests/level3/validation/.cvsignore
@@ -0,0 +1,3 @@
+dom3.dtd
+dom3.xsd
+test-to-html.xsl
diff --git a/test/testcases/tests/level3/validation/CVS/Entries b/test/testcases/tests/level3/validation/CVS/Entries
new file mode 100644
index 0000000..6b23816
--- /dev/null
+++ b/test/testcases/tests/level3/validation/CVS/Entries
@@ -0,0 +1,47 @@
+D/files////
+/.cvsignore/1.1/Fri Apr 3 02:47:58 2009//
+/allowedAttributes.xml/1.6/Fri Apr 3 02:47:58 2009//
+/allowedChildren.xml/1.6/Fri Apr 3 02:47:58 2009//
+/allowedFirstChildren.xml/1.3/Fri Apr 3 02:47:58 2009//
+/allowedNextSiblings.xml/1.5/Fri Apr 3 02:47:58 2009//
+/allowedParents.xml/1.3/Fri Apr 3 02:47:58 2009//
+/allowedPreviousSiblings.xml/1.5/Fri Apr 3 02:47:58 2009//
+/alltests.xml/1.5/Fri Apr 3 02:47:58 2009//
+/canAppendChildFalse.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canAppendChildTrue.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canAppendData.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canDeleteData.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canInsertBeforeFalse.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canInsertBeforeTrue.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canInsertData.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canRemoveAttributeFalse.xml/1.3/Fri Apr 3 02:47:58 2009//
+/canRemoveAttributeNS.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canRemoveAttributeNode.xml/1.3/Fri Apr 3 02:47:58 2009//
+/canRemoveAttributeTrue.xml/1.3/Fri Apr 3 02:47:58 2009//
+/canRemoveChildFalse.xml/1.3/Fri Apr 3 02:47:58 2009//
+/canRemoveChildTrue.xml/1.3/Fri Apr 3 02:47:58 2009//
+/canReplaceChildFalse.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canReplaceChildTrue.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canReplaceDataFalse.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canReplaceDataTrue.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canSetAttributeFalse.xml/1.3/Fri Apr 3 02:47:58 2009//
+/canSetAttributeNS.xml/1.4/Fri Apr 3 02:47:58 2009//
+/canSetAttributeNode.xml/1.3/Fri Apr 3 02:47:58 2009//
+/canSetAttributeTrue.xml/1.3/Fri Apr 3 02:47:58 2009//
+/canSetData.xml/1.4/Fri Apr 3 02:47:58 2009//
+/contentType.xml/1.3/Fri Apr 3 02:47:58 2009//
+/defaultValue.xml/1.3/Fri Apr 3 02:47:58 2009//
+/definedElements.xml/1.6/Fri Apr 3 02:47:58 2009//
+/enumeratedValues.xml/1.5/Fri Apr 3 02:47:58 2009//
+/getFeature01.xml/1.1/Fri Apr 3 02:47:58 2009//
+/getFeature02.xml/1.1/Fri Apr 3 02:47:58 2009//
+/hasFeature01.xml/1.1/Fri Apr 3 02:47:58 2009//
+/hasFeature02.xml/1.1/Fri Apr 3 02:47:58 2009//
+/hasFeature03.xml/1.2/Fri Apr 3 02:47:58 2009//
+/hasFeature04.xml/1.1/Fri Apr 3 02:47:58 2009//
+/isElementDefined.xml/1.3/Fri Apr 3 02:47:58 2009//
+/isElementDefinedNS.xml/1.3/Fri Apr 3 02:47:58 2009//
+/metadata.xml/1.1/Fri Apr 3 02:47:58 2009//
+/nodeValidity.xml/1.4/Fri Apr 3 02:47:58 2009//
+/requiredAttributes.xml/1.3/Fri Apr 3 02:47:58 2009//
+/validateDocument.xml/1.3/Fri Apr 3 02:47:58 2009//
diff --git a/test/testcases/tests/level3/validation/CVS/Repository b/test/testcases/tests/level3/validation/CVS/Repository
new file mode 100644
index 0000000..180e30a
--- /dev/null
+++ b/test/testcases/tests/level3/validation/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3/validation
diff --git a/test/testcases/tests/level3/validation/CVS/Root b/test/testcases/tests/level3/validation/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/validation/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/validation/CVS/Template b/test/testcases/tests/level3/validation/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/validation/CVS/Template
diff --git a/test/testcases/tests/level3/validation/allowedAttributes.xml b/test/testcases/tests/level3/validation/allowedAttributes.xml
new file mode 100644
index 0000000..ac6f9d1
--- /dev/null
+++ b/test/testcases/tests/level3/validation/allowedAttributes.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="allowedAttributes">
+<metadata>
+
+<title>allowedAttributes</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method getAllowedAttributes returns the NameList of allowed attributes for
+ the element.
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#ElementEditVAL-allowedAttributes"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="attrlist" type="NameList"/>
+<var name="attname" type="DOMString"/>
+<var name="allowedAttributesLength" type="int"/>
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<allowedAttributes obj="root" var="attrlist"/>
+<assertNotNull actual="attrlist" id="allowedAttributesNotNull"/>
+<length var="allowedAttributesLength" obj="attrlist" interface="NameList"/>
+<assertEquals actual="allowedAttributesLength" expected="2" id="allowedAttributes" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/allowedChildren.xml b/test/testcases/tests/level3/validation/allowedChildren.xml
new file mode 100644
index 0000000..61769a6
--- /dev/null
+++ b/test/testcases/tests/level3/validation/allowedChildren.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="allowedChildren">
+<metadata>
+
+<title>allowedChildren</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method getAllowedChildren returns the NameList of allowed child elements.
+ should return NameList of length 7
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#ElementEditVAL-allowedChildren"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="nlist" type="NameList"/>
+<var name="allowedChildrenLength" type="int"/>
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<allowedChildren obj="root" var="nlist"/>
+<assertNotNull actual="nlist" id="allowedChildrenNotNull"/>
+<length var="allowedChildrenLength" obj="nlist" interface="NameList"/>
+<assertEquals actual="allowedChildrenLength" expected="7" id="allowedChildren" ignoreCase="false"/>
+</test>
+
+
+
diff --git a/test/testcases/tests/level3/validation/allowedFirstChildren.xml b/test/testcases/tests/level3/validation/allowedFirstChildren.xml
new file mode 100644
index 0000000..4b7d941
--- /dev/null
+++ b/test/testcases/tests/level3/validation/allowedFirstChildren.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="allowedFirstChildren">
+<metadata>
+
+<title>allowedFirstChildren</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method getAllowedFirstChildren returns the NameList of allowed first child elements.
+ should return NameList containing name 'title'.
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#ElementEditVAL-allowedFirstChildElements"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="nlist" type="NameList"/>
+<var name="childname" type="DOMString"/>
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<allowedFirstChildren obj="root" var="nlist"/>
+<assertNotNull actual="nlist" id="allowedFirstChildrenNotNull"/>
+<getName interface="NameList" obj="nlist" index="0" var="childname"/>
+<assertEquals actual="childname" expected='"title"' ignoreCase="false" id="allowedFirstChildren"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/allowedNextSiblings.xml b/test/testcases/tests/level3/validation/allowedNextSiblings.xml
new file mode 100644
index 0000000..9f9c55b
--- /dev/null
+++ b/test/testcases/tests/level3/validation/allowedNextSiblings.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="allowedNextSiblings">
+<metadata>
+
+<title>allowedNextSiblings</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method getAllowedNextSiblings return the NameList of elements that may be
+ inserted, should return empty list.
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#ElementEditVAL-allowedNextSiblings"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elem" type="ElementEditVAL"/>
+<var name="nlist" type="NameList"/>
+<var name="elemList" type="NodeList"/>
+<var name="childname" type="DOMString"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName obj="doc" interface="Document" var="elemList" tagname='"author"'/>
+<item interface="NodeList" obj="elemList" index="0" var="elem"/>
+<allowedNextSiblings obj="elem" var="nlist"/>
+<assertNotNull actual="nlist" id="allowedNextSiblingsNotNull"/>
+<getName interface="NameList" obj="nlist" index="0" var="childname"/>
+<!-- since ISBN is already present, no insertable sibling -->
+<assertNull actual="childname" id="noAllowableNextSibling"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level3/validation/allowedParents.xml b/test/testcases/tests/level3/validation/allowedParents.xml
new file mode 100644
index 0000000..7b16854
--- /dev/null
+++ b/test/testcases/tests/level3/validation/allowedParents.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="allowedParents">
+<metadata>
+
+<title>allowedParents</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method getAllowedParents returns the NameList of elements that may be the
+ the parent of current node
+ should return NameList containing name 'book'.
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#ElementEditVAL-allowedParents"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elem" type="ElementEditVAL"/>
+<var name="nlist" type="NameList"/>
+<var name="elemList" type="NodeList"/>
+<var name="childname" type="DOMString"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName obj="doc" interface="Document" var="elemList" tagname='"author"'/>
+<item interface="NodeList" obj="elemList" index="0" var="elem"/>
+<allowedParents obj="elem" var="nlist"/>
+<assertNotNull actual="nlist" id="allowedParentsNotNull"/>
+<getName interface="NameList" obj="nlist" index="0" var="childname"/>
+<assertEquals actual="childname" expected='"book"' ignoreCase="false" id="allowedParents"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/allowedPreviousSiblings.xml b/test/testcases/tests/level3/validation/allowedPreviousSiblings.xml
new file mode 100644
index 0000000..8f6bb75
--- /dev/null
+++ b/test/testcases/tests/level3/validation/allowedPreviousSiblings.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="allowedPreviousSiblings">
+<metadata>
+
+<title>allowedPreviousSiblings</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method getAllowedPreviousSiblings return the NameList of elements that may be the
+ previous siblings, should return empty list.
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#ElementEditVAL-allowedPreviousSiblings"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elem" type="ElementEditVAL"/>
+<var name="nlist" type="NameList"/>
+<var name="elemList" type="NodeList"/>
+<var name="childname" type="DOMString"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName obj="doc" interface="Document" var="elemList" tagname='"author"'/>
+<item interface="NodeList" obj="elemList" index="0" var="elem"/>
+<allowedPreviousSiblings obj="elem" var="nlist"/>
+<assertNotNull actual="nlist" id="allowedPreviousSiblingsNotNull"/>
+<getName interface="NameList" obj="nlist" index="0" var="childname"/>
+<assertNull actual="childname" id="noPreviousSiblings"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level3/validation/alltests.xml b/test/testcases/tests/level3/validation/alltests.xml
new file mode 100644
index 0000000..417ec13
--- /dev/null
+++ b/test/testcases/tests/level3/validation/alltests.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+
+<!DOCTYPE suite SYSTEM "dom3.dtd">
+
+<suite xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="alltests">
+ <metadata>
+ <title>DOM Level 3 Validation Test Suite</title>
+ <creator>DOM Test Suite Project</creator>
+ </metadata>
+ <suite.member href="allowedAttributes.xml"/>
+ <suite.member href="allowedChildren.xml"/>
+ <suite.member href="allowedFirstChildren.xml"/>
+ <suite.member href="allowedNextSiblings.xml"/>
+ <suite.member href="allowedParents.xml"/>
+ <suite.member href="allowedPreviousSiblings.xml"/>
+ <suite.member href="canAppendChildFalse.xml"/>
+ <suite.member href="canAppendChildTrue.xml"/>
+ <suite.member href="canAppendData.xml"/>
+ <suite.member href="canDeleteData.xml"/>
+ <suite.member href="canInsertBeforeFalse.xml"/>
+ <suite.member href="canInsertBeforeTrue.xml"/>
+ <suite.member href="canInsertData.xml"/>
+ <suite.member href="canRemoveAttributeFalse.xml"/>
+ <suite.member href="canRemoveAttributeNS.xml"/>
+ <suite.member href="canRemoveAttributeNode.xml"/>
+ <suite.member href="canRemoveAttributeTrue.xml"/>
+ <suite.member href="canRemoveChildFalse.xml"/>
+ <suite.member href="canRemoveChildTrue.xml"/>
+ <suite.member href="canReplaceChildFalse.xml"/>
+ <suite.member href="canReplaceChildTrue.xml"/>
+ <suite.member href="canReplaceDataFalse.xml"/>
+ <suite.member href="canReplaceDataTrue.xml"/>
+ <suite.member href="canSetAttributeFalse.xml"/>
+ <suite.member href="canSetAttributeNS.xml"/>
+ <suite.member href="canSetAttributeNode.xml"/>
+ <suite.member href="canSetAttributeTrue.xml"/>
+ <suite.member href="canSetData.xml"/>
+ <suite.member href="contentType.xml"/>
+ <suite.member href="defaultValue.xml"/>
+ <suite.member href="definedElements.xml"/>
+ <suite.member href="enumeratedValues.xml"/>
+ <suite.member href="isElementDefined.xml"/>
+ <suite.member href="isElementDefinedNS.xml"/>
+ <suite.member href="nodeValidity.xml"/>
+ <suite.member href="requiredAttributes.xml"/>
+ <suite.member href="validateDocument.xml"/>
+
+ <suite.member href="hasFeature01.xml"/>
+ <suite.member href="hasFeature02.xml"/>
+ <suite.member href="hasFeature03.xml"/>
+ <suite.member href="hasFeature04.xml"/>
+ <suite.member href="getFeature01.xml"/>
+ <suite.member href="getFeature02.xml"/>
+
+</suite>
diff --git a/test/testcases/tests/level3/validation/canAppendChildFalse.xml b/test/testcases/tests/level3/validation/canAppendChildFalse.xml
new file mode 100644
index 0000000..c2041d6
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canAppendChildFalse.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canAppendChildFalse">
+<metadata>
+
+<title>canAppendChildFalse</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canAppendChild checks with schema to see if the child node can be appended
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-NodeEditVAL-canAppendChild"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="newchild" type="Element"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<createElementNS obj="doc" interface="Document" namespaceURI="nullNS" qualifiedName='"editor"' var="newchild"/>
+<canAppendChild obj="root" newChild="newchild" var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canAppendChildFalse"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level3/validation/canAppendChildTrue.xml b/test/testcases/tests/level3/validation/canAppendChildTrue.xml
new file mode 100644
index 0000000..5f08832
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canAppendChildTrue.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canAppendChildTrue">
+<metadata>
+
+<title>canAppendChildTrue</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canAppendChild checks with schema to see if the child node can be appended
+ should return VAL_TRUE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-NodeEditVAL-canAppendChild"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="newchild" type="Element"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<createElementNS obj="doc" interface="Document" namespaceURI="nullNS" qualifiedName='"year"' var="newchild"/>
+<canAppendChild obj="root" newChild="newchild" var="valboolean"/>
+<assertEquals actual="valboolean" expected="5" ignoreCase="false" id="canAppendChildTrue"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level3/validation/canAppendData.xml b/test/testcases/tests/level3/validation/canAppendData.xml
new file mode 100644
index 0000000..305fa69
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canAppendData.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canAppendData">
+<metadata>
+
+<title>canAppendData</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ This method checks if given charactors can be appended
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-CharacterDataEditVAL-canAppendData"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="valboolean" type="short"/>
+<var name="chars" type="CharacterDataEditVAL"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName obj="doc" interface="Document" var="elemList" tagname='"edition"'/>
+<item interface="NodeList" obj="elemList" index="0" var="elem"/>
+<firstChild interface="Node" obj="elem" var="chars"/>
+<canAppendData obj="chars" arg='"USD60"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canAppendData"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canDeleteData.xml b/test/testcases/tests/level3/validation/canDeleteData.xml
new file mode 100644
index 0000000..c6ef93a
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canDeleteData.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canDeleteData">
+<metadata>
+
+<title>canDeleteData</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ This method checks if given characters can be deleted from exitsting text
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-CharacterDataEditVAL-canDeleteData"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="valboolean" type="short"/>
+<var name="chars" type="CharacterDataEditVAL"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName obj="doc" interface="Document" var="elemList" tagname='"edition"'/>
+<item interface="NodeList" obj="elemList" index="0" var="elem"/>
+<firstChild interface="Node" obj="elem" var="chars"/>
+<canDeleteData obj="chars" offset="0" count="10" var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canDeleteData"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canInsertBeforeFalse.xml b/test/testcases/tests/level3/validation/canInsertBeforeFalse.xml
new file mode 100644
index 0000000..b060309
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canInsertBeforeFalse.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canInsertBeforeFalse">
+<metadata>
+
+<title>canInsertBeforeFalse</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canInsertBefore checks with schema to see if a new child can be inserted
+ before reference node
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-NodeEditVAL-canInsertBefore"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="oldchild" type="Node"/>
+<var name="nlist" type="NodeList"/>
+<var name="newchild" type="Element"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"ISBN"' var="nlist"/>
+<item obj="nlist" index="0" var="oldchild" interface="NodeList"/>
+<documentElement obj="doc" var="root"/>
+<createElementNS obj="doc" namespaceURI="nullNS" qualifiedName='"editor"' var="newchild"/>
+<canInsertBefore obj="root" newChild="newchild" refChild="oldchild" var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canInsertBeforeFalse"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canInsertBeforeTrue.xml b/test/testcases/tests/level3/validation/canInsertBeforeTrue.xml
new file mode 100644
index 0000000..fb341a7
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canInsertBeforeTrue.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canInsertBeforeTrue">
+<metadata>
+
+<title>canInsertBeforeTrue</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canInsertBefore checks with schema to see if a new child can be inserted
+ before reference node
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-NodeEditVAL-canInsertBefore"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="oldchild" type="Node"/>
+<var name="refchild" type="Node"/>
+<var name="nlist" type="NodeList"/>
+<var name="newchild" type="Element"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"ISBN"' var="nlist"/>
+<item obj="nlist" index="0" var="refchild" interface="NodeList"/>
+<documentElement obj="doc" var="root"/>
+<createElementNS obj="doc" namespaceURI="nullNS" qualifiedName='"editor"' var="newchild"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"author"' var="nlist"/>
+<item obj="nlist" index="0" var="oldchild" interface="NodeList"/>
+<removeChild obj="root" oldChild="oldchild" var="oldchild"/>
+<canInsertBefore obj="root" newChild="newchild" refChild="refchild" var="valboolean"/>
+<assertEquals actual="valboolean" expected="5" ignoreCase="false" id="canInsertBeforeTrue"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canInsertData.xml b/test/testcases/tests/level3/validation/canInsertData.xml
new file mode 100644
index 0000000..ef17ce3
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canInsertData.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canInsertData">
+<metadata>
+
+<title>canInsertData</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ This method checks if given characters can be inserted into exitsting text
+ at given position
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-CharacterDataEditVAL-canInsertData"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="valboolean" type="short"/>
+<var name="chars" type="CharacterDataEditVAL"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName obj="doc" interface="Document" var="elemList" tagname='"edition"'/>
+<item interface="NodeList" obj="elemList" index="0" var="elem"/>
+<firstChild interface="Node" obj="elem" var="chars"/>
+<canInsertData obj="chars" offset="0" arg='"USD60"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canInsertData"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canRemoveAttributeFalse.xml b/test/testcases/tests/level3/validation/canRemoveAttributeFalse.xml
new file mode 100644
index 0000000..b4e86c9
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canRemoveAttributeFalse.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canRemoveAttributeFalse">
+<metadata>
+
+<title>canRemoveAttributeFalse</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canSteAttribute checks if the 'inStock' attribute can be removed
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-ElementEditVAL-canRemoveAttribute"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<canRemoveAttribute obj="root" attrname='"inStock"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canRemoveAttributeFalse"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canRemoveAttributeNS.xml b/test/testcases/tests/level3/validation/canRemoveAttributeNS.xml
new file mode 100644
index 0000000..80e5606
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canRemoveAttributeNS.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canRemoveAttributeNS">
+<metadata>
+
+<title>canRemoveAttributeNS</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ This method checks if the attribute with given namesapce and name can be removed
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-ElementEditVAL-canRemoveAttributeNS"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<canRemoveAttributeNS obj="root" namespaceURI="nullNS" localName='"inStock"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canRemoveAttributeNS"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/validation/canRemoveAttributeNode.xml b/test/testcases/tests/level3/validation/canRemoveAttributeNode.xml
new file mode 100644
index 0000000..892668c
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canRemoveAttributeNode.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canRemoveAttributeNode">
+<metadata>
+
+<title>canRemoveAttribute</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canRemoveAttributeNode checks if given attribute node can be removed
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-ElementEditVAL-canRemoveAttributeNode"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="attr" type="Attr"/>
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<getAttributeNode obj="root" name='"inStock"' var="attr"/>
+<canRemoveAttributeNode obj="root" attrNode="attr" var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canRemoveAttributeNode"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canRemoveAttributeTrue.xml b/test/testcases/tests/level3/validation/canRemoveAttributeTrue.xml
new file mode 100644
index 0000000..3468828
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canRemoveAttributeTrue.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canRemoveAttributeTrue">
+<metadata>
+
+<title>canRemoveAttributeTrue</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canSteAttribute checks if the 'price' attribute can be removed
+ should return VAL_TRUE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-ElementEditVAL-canRemoveAttribute"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<canRemoveAttribute obj="root" attrname='"price"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="5" ignoreCase="false" id="canRemoveAttributeTrue"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canRemoveChildFalse.xml b/test/testcases/tests/level3/validation/canRemoveChildFalse.xml
new file mode 100644
index 0000000..6bd0966
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canRemoveChildFalse.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canRemoveChildFalse">
+<metadata>
+
+<title>canRemoveChildFalse</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canRemoveChild checks if schema allows the child to be removed
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-NodeEditVAL-canRemoveChild"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="oldchild" type="Node"/>
+<var name="nlist" type="NodeList"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"ISBN"' var="nlist"/>
+<item obj="nlist" index="0" var="oldchild" interface="NodeList"/>
+<documentElement obj="doc" var="root"/>
+<canRemoveChild obj="root" oldChild="oldchild" var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canRemoveChildFalse"/>
+</test>
+
+
+
+
diff --git a/test/testcases/tests/level3/validation/canRemoveChildTrue.xml b/test/testcases/tests/level3/validation/canRemoveChildTrue.xml
new file mode 100644
index 0000000..0fcbe59
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canRemoveChildTrue.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canRemoveChildTrue">
+<metadata>
+
+<title>canRemoveChildTrue</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canRemoveChild checks if schema allows the child to be removed
+ should return VAL_TRUE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-NodeEditVAL-canRemoveChild"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="oldchild" type="Node"/>
+<var name="nlist" type="NodeList"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"edition"' var="nlist"/>
+<item obj="nlist" index="0" var="oldchild" interface="NodeList"/>
+<documentElement obj="doc" var="root"/>
+<canRemoveChild obj="root" oldChild="oldchild" var="valboolean"/>
+<assertEquals actual="valboolean" expected="5" ignoreCase="false" id="canRemoveChildTrue"/>
+</test>
+
+
+
+
diff --git a/test/testcases/tests/level3/validation/canReplaceChildFalse.xml b/test/testcases/tests/level3/validation/canReplaceChildFalse.xml
new file mode 100644
index 0000000..1b47e9f
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canReplaceChildFalse.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canReplaceChildFalse">
+<metadata>
+
+<title>canReplaceChildFalse</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canReplaceChild checks with schema to see if new child 'editor' can replace
+ old child title
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-NodeEditVAL-canReplaceChild"/>
+</metadata>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="oldchild" type="Node"/>
+<var name="nlist" type="NodeList"/>
+<var name="newchild" type="Element"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"title"' var="nlist"/>
+<item obj="nlist" index="0" var="oldchild" interface="NodeList"/>
+<documentElement obj="doc" var="root"/>
+<createElementNS obj="doc" namespaceURI="nullNS" qualifiedName='"editor"' var="newchild"/>
+<canReplaceChild obj="root" newChild="newchild" oldChild="oldchild" var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canReplaceChildFalse"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level3/validation/canReplaceChildTrue.xml b/test/testcases/tests/level3/validation/canReplaceChildTrue.xml
new file mode 100644
index 0000000..a74d93a
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canReplaceChildTrue.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canReplaceChildTrue">
+<metadata>
+
+<title>canReplaceChildTrue</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canReplaceChild checks with schema to see if new child 'editor' can replace
+ old child 'author'
+ should return VAL_TRUE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-NodeEditVAL-canReplaceChild"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="oldchild" type="Node"/>
+<var name="nlist" type="NodeList"/>
+<var name="newchild" type="Element"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" tagname='"author"' var="nlist"/>
+<item obj="nlist" index="0" var="oldchild" interface="NodeList"/>
+<documentElement obj="doc" var="root"/>
+<createElementNS obj="doc" namespaceURI="nullNS" qualifiedName='"editor"' var="newchild"/>
+<canReplaceChild obj="root" newChild="newchild" oldChild="oldchild" var="valboolean"/>
+<assertEquals actual="valboolean" expected="5" ignoreCase="false" id="canReplaceChildTrue"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level3/validation/canReplaceDataFalse.xml b/test/testcases/tests/level3/validation/canReplaceDataFalse.xml
new file mode 100644
index 0000000..2f91b83
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canReplaceDataFalse.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canReplaceDataFalse">
+<metadata>
+
+<title>canReplaceDataFalse</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ This method checks if given characters can replace exitsting text
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-CharacterDataEditVAL-canReplaceData"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="valboolean" type="short"/>
+<var name="chars" type="CharacterDataEditVAL"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elemList" tagname='"edition"'/>
+<item interface="NodeList" obj="elemList" index="0" var="elem"/>
+<firstChild interface="Node" obj="elem" var="chars"/>
+<canReplaceData obj="chars" offset="0" count="5" arg='"2nd"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canReplaceDataFalse"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canReplaceDataTrue.xml b/test/testcases/tests/level3/validation/canReplaceDataTrue.xml
new file mode 100644
index 0000000..7400e7b
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canReplaceDataTrue.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canReplaceDataTrue">
+<metadata>
+
+<title>canReplaceDataTrue</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ This method checks if given characters can replace exitsting text
+ should return VAL_TRUE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-CharacterDataEditVAL-canReplaceData"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="valboolean" type="short"/>
+<var name="chars" type="CharacterDataEditVAL"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elemList" tagname='"edition"'/>
+<item interface="NodeList" obj="elemList" index="0" var="elem"/>
+<firstChild interface="Node" obj="elem" var="chars"/>
+<canReplaceData obj="chars" offset="0" count="6" arg='"First"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="5" ignoreCase="false" id="canReplaceDataTrue"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canSetAttributeFalse.xml b/test/testcases/tests/level3/validation/canSetAttributeFalse.xml
new file mode 100644
index 0000000..c2c9d17
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canSetAttributeFalse.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canSetAttributeFalse">
+<metadata>
+
+<title>canSetAttributeFalse</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canSetAttribute checks if a new attribute 'attr' can be set
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-ElementEditVAL-ElementEditVAL-canSetAttribute"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<canSetAttribute obj="root" attrname='"attr"' attrval='"No"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canSetAttributeFalse"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canSetAttributeNS.xml b/test/testcases/tests/level3/validation/canSetAttributeNS.xml
new file mode 100644
index 0000000..d060237
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canSetAttributeNS.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canSetAttributeNS">
+<metadata>
+
+<title>canSetAttributeNS</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canSetAttributeNS checks if an attribute with given namespace and name can be set
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-ElementEditVAL-canSetAttributeNS"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<canSetAttributeNS obj="root" namespaceURI="nullNS" qualifiedName='"inStock"' value ='"out"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canSetAttributeNS"/>
+</test>
+
diff --git a/test/testcases/tests/level3/validation/canSetAttributeNode.xml b/test/testcases/tests/level3/validation/canSetAttributeNode.xml
new file mode 100644
index 0000000..f713bf2
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canSetAttributeNode.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canSetAttributeNode">
+<metadata>
+
+<title>canSetAttributeNode</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canSteAttribute checks if a new attribute node 'attname' can be set
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-ElementEditVAL-canSetAttributeNode"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+<var name="attr" type="Attr"/>
+
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<createAttribute obj="doc" var="attr" name='"attname"'/>
+<canSetAttributeNode obj="root" attrNode="attr" var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canSetAttributeNode"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canSetAttributeTrue.xml b/test/testcases/tests/level3/validation/canSetAttributeTrue.xml
new file mode 100644
index 0000000..863ec84
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canSetAttributeTrue.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canSetAttributeTrue">
+<metadata>
+
+<title>canSetAttributeTrue</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method canSetAttribute checks if value attribute 'inStock' can be set
+ should return VAL_TRUE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-ElementEditVAL-ElementEditVAL-canSetAttribute"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<canSetAttribute obj="root" attrname='"inStock"' attrval='"No"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="5" ignoreCase="false" id="canSetAttributeTrue"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/canSetData.xml b/test/testcases/tests/level3/validation/canSetData.xml
new file mode 100644
index 0000000..e345140
--- /dev/null
+++ b/test/testcases/tests/level3/validation/canSetData.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="canSetData">
+<metadata>
+
+<title>canSetData</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ This method checks if given characters can be set as the content of element 'edition'
+ should return VAL_FALSE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-CharacterDataEditVAL-canSetData"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elemList" type="NodeList"/>
+<var name="elem" type="Element"/>
+<var name="valboolean" type="short"/>
+<var name="chars" type="CharacterDataEditVAL"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName obj="doc" interface="Document" var="elemList" tagname='"edition"'/>
+<item interface="NodeList" obj="elemList" index="0" var="elem"/>
+<firstChild interface="Node" obj="elem" var="chars"/>
+<canSetData obj="chars" arg='"USD60"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="canSetData"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/contentType.xml b/test/testcases/tests/level3/validation/contentType.xml
new file mode 100644
index 0000000..ba23531
--- /dev/null
+++ b/test/testcases/tests/level3/validation/contentType.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="contentType">
+<metadata>
+
+<title>contentType</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ get the content type of element, should return VAL_ELEMENTS_CONTENTTYPE
+ should return 4
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-ElementEditVAL-ElementEditVAL-contentType"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="content" type="short"/>
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<contentType interface="ElementEditVAL" obj="root" var="content"/>
+<assertEquals actual="content" expected="4" ignoreCase="false" id="contentType"/>
+</test> \ No newline at end of file
diff --git a/test/testcases/tests/level3/validation/defaultValue.xml b/test/testcases/tests/level3/validation/defaultValue.xml
new file mode 100644
index 0000000..5ebb43e
--- /dev/null
+++ b/test/testcases/tests/level3/validation/defaultValue.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="defaultValue">
+<metadata>
+
+<title>defaultValue</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ This method returns the default value of the element.
+ Should return null
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#NodeEditVAL-defaultValue"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elem" type="ElementEditVAL"/>
+<var name="elemList" type="NodeList"/>
+<var name="value" type="DOMString"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName obj="doc" interface="Document" var="elemList" tagname='"edition"'/>
+<item interface="NodeList" obj="elemList" index="0" var="elem"/>
+<defaultValue interface="NodeEditVAL" obj="elem" var="value"/>
+<assertEquals actual="value" expected='"First"' ignoreCase="false" id="defaultValue"/></test>
+
+
diff --git a/test/testcases/tests/level3/validation/definedElements.xml b/test/testcases/tests/level3/validation/definedElements.xml
new file mode 100644
index 0000000..9feae1f
--- /dev/null
+++ b/test/testcases/tests/level3/validation/definedElements.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="definedElements">
+<metadata>
+
+<title>definedElements</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ This method retrieves all element declarations defined by schema
+ should return a NameList of length 8
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#DocumentEditVAL-getDefinedElements"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="DocumentEditVAL"/>
+<var name="nameList" type="NameList"/>
+<var name="nullNS" type="DOMString" isNull="true"/>
+<var name="definedElementsLength" type="int"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getDefinedElements obj="doc" interface="DocumentEditVAL" namespaceURI="nullNS" var="nameList"/>
+<assertNotNull actual="nameList" id="definedElementsNotNull"/>
+<length var="definedElementsLength" obj="nameList" interface="NameList"/>
+<assertEquals expected="8" actual="definedElementsLength" id="definedElements" ignoreCase="false"/>
+</test>
+
diff --git a/test/testcases/tests/level3/validation/enumeratedValues.xml b/test/testcases/tests/level3/validation/enumeratedValues.xml
new file mode 100644
index 0000000..22b907e
--- /dev/null
+++ b/test/testcases/tests/level3/validation/enumeratedValues.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="enumeratedValues">
+<metadata>
+
+<title>enumeratedValuess</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method enumeratedValues returns a DOMStringList of enumerated values for
+ the element.
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#NodeEditVAL-enumeratedValues"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elem" type="NodeEditVAL"/>
+<var name="elemList" type="NodeList"/>
+<var name="strlist" type="DOMStringList"/>
+<var name="enumeratedValuesLength" type="int"/>
+<load var="doc" href="book" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc" var="elemList" tagname='"edition"'/>
+<item interface="NodeList" obj="elemList" index="0" var="elem"/>
+<enumeratedValues interface="NodeEditVAL" obj="elem" var="strlist"/>
+<assertNotNull actual="strlist" id="enumeratedValuesNotNull"/>
+<length var="enumeratedValuesLength" obj="strlist" interface="DOMStringList"/>
+<assertEquals actual="enumeratedValuesLength" expected="5" id="enumeratedValues" ignoreCase="false"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/validation/files/CVS/Entries b/test/testcases/tests/level3/validation/files/CVS/Entries
new file mode 100644
index 0000000..04dec85
--- /dev/null
+++ b/test/testcases/tests/level3/validation/files/CVS/Entries
@@ -0,0 +1,3 @@
+/book.xml/1.1/Fri Apr 3 02:47:58 2009//
+/book.xsd/1.1/Fri Apr 3 02:47:58 2009//
+D
diff --git a/test/testcases/tests/level3/validation/files/CVS/Repository b/test/testcases/tests/level3/validation/files/CVS/Repository
new file mode 100644
index 0000000..edccdc4
--- /dev/null
+++ b/test/testcases/tests/level3/validation/files/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3/validation/files
diff --git a/test/testcases/tests/level3/validation/files/CVS/Root b/test/testcases/tests/level3/validation/files/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/validation/files/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/validation/files/CVS/Template b/test/testcases/tests/level3/validation/files/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/validation/files/CVS/Template
diff --git a/test/testcases/tests/level3/validation/files/book.xml b/test/testcases/tests/level3/validation/files/book.xml
new file mode 100644
index 0000000..b999b98
--- /dev/null
+++ b/test/testcases/tests/level3/validation/files/book.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<book inStock="Yes" price="64.28" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="book.xsd">
+<title>Compilers: Principles, Techniques, and Tools</title>
+<author>Alfred V.Aho, Ravi Sethi, Jeffrey D. Ullman</author>
+<ISBN>0-201-10088-6</ISBN>
+<edition>Second</edition>
+<publisher>Addison Wesley</publisher>
+</book>
+
diff --git a/test/testcases/tests/level3/validation/files/book.xsd b/test/testcases/tests/level3/validation/files/book.xsd
new file mode 100644
index 0000000..1f395cd
--- /dev/null
+++ b/test/testcases/tests/level3/validation/files/book.xsd
@@ -0,0 +1,52 @@
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+
+ <xsd:element name="book" type="bookType"/>
+
+
+ <xsd:complexType name="bookType">
+ <xsd:sequence>
+ <xsd:element ref="title"/>
+ <xsd:choice>
+ <xsd:element ref="author"/>
+ <xsd:element ref="editor"/>
+ </xsd:choice>
+ <xsd:element ref="ISBN"/>
+ <xsd:element ref="edition" minOccurs ="0"/>
+ <xsd:element ref="publisher"/>
+ <xsd:element ref="year" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="price" type="xsd:decimal"/>
+ <xsd:attribute name="inStock" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Yes"/>
+ <xsd:enumeration value="No"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+
+ <xsd:element name="title" type="xsd:string"/>
+ <xsd:element name="author" type="xsd:string"/>
+ <xsd:element name="ISBN" type="xsd:string"/>
+ <xsd:element name="edition" default="First">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="First"/>
+ <xsd:enumeration value="Second"/>
+ <xsd:enumeration value="Third"/>
+ <xsd:enumeration value="Fourth"/>
+ <xsd:enumeration value="Fifth"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:element>
+ <xsd:element name="publisher" type="xsd:string"/>
+ <xsd:element name="editor" type ="xsd:string"/>
+ <xsd:element name="year">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value ="[0-9]{4}"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:element>
+</xsd:schema>
diff --git a/test/testcases/tests/level3/validation/getFeature01.xml b/test/testcases/tests/level3/validation/getFeature01.xml
new file mode 100644
index 0000000..dc1ab17
--- /dev/null
+++ b/test/testcases/tests/level3/validation/getFeature01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003-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="getFeature01">
+ <metadata>
+ <title>getFeature01</title>
+ <creator>Curt Arnold</creator>
+ <description>Call DOMImplementation.getFeature("Validation", "3.0").
+ Not sure what should happen. Have requested clarification from WG.</description>
+ <date qualifier="created">2004-01-05</date>
+ <!-- DOMImplementation.getFeature -->
+ <subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Core-20031107/core#DOMImplementation3-getFeature"/>
+ </metadata>
+ <hasFeature feature='"Core"' version='"3.0"'/>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="domImplVAL" type="DOMImplementation"/>
+ <implementation var="domImpl"/>
+ <getFeature var="domImplVAL" obj="domImpl"
+ feature='"Validation"' version='"3.0"' interface="DOMImplementation"/>
+ <!-- TODO: Request for clarification. The spec doesn't address case where
+ feature does not introduce new interface -->
+ <assertNull actual="domImplVAL" id="getFeatureReturnsNull"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/validation/getFeature02.xml b/test/testcases/tests/level3/validation/getFeature02.xml
new file mode 100644
index 0000000..c30f2a0
--- /dev/null
+++ b/test/testcases/tests/level3/validation/getFeature02.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003-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="getFeature02">
+ <metadata>
+ <title>getFeature02</title>
+ <creator>Curt Arnold</creator>
+ <description>Call DOMImplementation.getFeature("+vAlIdAtIoN", "3.0").</description>
+ <date qualifier="created">2004-01-05</date>
+ <!-- DOMImplementation.getFeature -->
+ <subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Core-20031107/core#DOMImplementation3-getFeature"/>
+ </metadata>
+ <hasFeature feature='"Core"' version='"3.0"'/>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="domImplVAL" type="DOMImplementation"/>
+ <implementation var="domImpl"/>
+ <getFeature var="domImplVAL" obj="domImpl" feature='"+vAlIdAtIoN"'
+ version='"3.0"' interface="DOMImplementation"/>
+ <assertNull actual="domImplVAL" id="domImplVALNull"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/validation/hasFeature01.xml b/test/testcases/tests/level3/validation/hasFeature01.xml
new file mode 100644
index 0000000..e0f0831
--- /dev/null
+++ b/test/testcases/tests/level3/validation/hasFeature01.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003-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="hasFeature01">
+ <metadata>
+ <title>hasFeature01</title>
+ <creator>Curt Arnold</creator>
+ <description>Implementations should return true for hasFeature("vAlIdAtIoN", "3.0").</description>
+ <date qualifier="created">2004-01-05</date>
+ <!-- DOMImplementation.hasFeature -->
+ <subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Core-20031107/core#ID-5CED94D7"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="hasVAL" type="boolean"/>
+ <implementation var="domImpl"/>
+ <hasFeature var="hasVAL" obj="domImpl" feature='"vAlIdAtIoN"' version='"3.0"'/>
+ <assertTrue actual="hasVAL" id="hasFeature_VAL3"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/validation/hasFeature02.xml b/test/testcases/tests/level3/validation/hasFeature02.xml
new file mode 100644
index 0000000..08cb26d
--- /dev/null
+++ b/test/testcases/tests/level3/validation/hasFeature02.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003-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="hasFeature02">
+ <metadata>
+ <title>HasFeature02</title>
+ <creator>Curt Arnold</creator>
+ <description>Implementations should return true for hasFeature("vAlIdAtIoN", null).</description>
+ <date qualifier="created">2004-01-05</date>
+ <!-- DOMImplementation.hasFeature -->
+ <subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Core-20031107/core#ID-5CED94D7"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="hasVAL" type="boolean"/>
+ <var name="version" type="DOMString" isNull="true"/>
+ <implementation var="domImpl"/>
+ <hasFeature var="hasVAL" obj="domImpl" feature='"vAlIdAtIoN"' version="version"/>
+ <assertTrue actual="hasVAL" id="hasFeature_VAL"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/validation/hasFeature03.xml b/test/testcases/tests/level3/validation/hasFeature03.xml
new file mode 100644
index 0000000..1fb2615
--- /dev/null
+++ b/test/testcases/tests/level3/validation/hasFeature03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003-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="hasFeature03">
+ <metadata>
+ <title>hasFeature03</title>
+ <creator>Curt Arnold</creator>
+ <description>Implementations should return true for hasFeature("cOrE", "2.0") and hasFeature("cOrE", null).</description>
+ <date qualifier="created">2004-01-05</date>
+ <!-- DOMImplementation.hasFeature -->
+ <subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Core-20031107/core#ID-5CED94D7"/>
+ </metadata>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="hasCore" type="boolean"/>
+ <var name="nullVersion" type="DOMString" isNull="true"/>
+ <implementation var="domImpl"/>
+ <hasFeature var="hasCore" obj="domImpl" feature='"cOrE"' version='"2.0"'/>
+ <assertTrue actual="hasCore" id="hasFeature_Core2"/>
+ <hasFeature var="hasCore" obj="domImpl" feature='"cOrE"' version="nullVersion"/>
+ <assertTrue actual="hasCore" id="hasFeature_Core"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/validation/hasFeature04.xml b/test/testcases/tests/level3/validation/hasFeature04.xml
new file mode 100644
index 0000000..f63ec01
--- /dev/null
+++ b/test/testcases/tests/level3/validation/hasFeature04.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" standalone="no"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+
+Copyright (c) 2003-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="hasFeature04">
+ <metadata>
+ <title>hasFeature04</title>
+ <creator>Curt Arnold</creator>
+ <description>Implementations should return true for hasFeature("+vAlIdAtIoN", "3.0").</description>
+ <date qualifier="created">2003-12-09</date>
+ <!-- DOMImplementation.hasFeature -->
+ <subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Core-20031107/core#ID-5CED94D7"/>
+ </metadata>
+ <!-- + on feature names requires L3 Core -->
+ <hasFeature feature='"Core"' version='"3.0"'/>
+ <var name="domImpl" type="DOMImplementation"/>
+ <var name="hasVAL" type="boolean"/>
+ <implementation var="domImpl"/>
+ <hasFeature var="hasVAL" obj="domImpl" feature='"+vAlIdAtIoN"' version='"3.0"'/>
+ <assertTrue actual="hasVAL" id="hasFeature_VAL3"/>
+</test>
+
+
+
+
+
diff --git a/test/testcases/tests/level3/validation/isElementDefined.xml b/test/testcases/tests/level3/validation/isElementDefined.xml
new file mode 100644
index 0000000..54cbc01
--- /dev/null
+++ b/test/testcases/tests/level3/validation/isElementDefined.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="isElementDefined">
+<metadata>
+
+<title>isElementDefined</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ This method checks if element with given name is defined or not
+ should return VAL_TRUE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-ElementEditVAL-isElementDefined"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<isElementDefined obj="root" name='"editor"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="5" ignoreCase="false" id="isElementDefined"/>
+</test>
+
+
+
diff --git a/test/testcases/tests/level3/validation/isElementDefinedNS.xml b/test/testcases/tests/level3/validation/isElementDefinedNS.xml
new file mode 100644
index 0000000..d97190e
--- /dev/null
+++ b/test/testcases/tests/level3/validation/isElementDefinedNS.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="isElementDefinedNS">
+<metadata>
+
+<title>isElementDefinedNS</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ This method checks if element with given namespace and name is defined or not
+ should return VAL_TRUE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-ElementEditVAL-isElementDefined"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="valboolean" type="short"/>
+
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<isElementDefinedNS obj="root" namespaceURI='"http://dom3.validation.examples"' name='"editor"' var="valboolean"/>
+<assertEquals actual="valboolean" expected="6" ignoreCase="false" id="isElementDefinedNS"/>
+</test>
+
+
+
diff --git a/test/testcases/tests/level3/validation/metadata.xml b/test/testcases/tests/level3/validation/metadata.xml
new file mode 100644
index 0000000..c3c6e71
--- /dev/null
+++ b/test/testcases/tests/level3/validation/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+Copyright (c) 2003 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 metadata SYSTEM "dom3.dtd">
+
+<!-- This file contains additional metadata about DOM L3 Validation tests.
+ Allowing additional documentation without modifying the tests themselves. -->
+<metadata xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3">
+</metadata>
diff --git a/test/testcases/tests/level3/validation/nodeValidity.xml b/test/testcases/tests/level3/validation/nodeValidity.xml
new file mode 100644
index 0000000..d115ccb
--- /dev/null
+++ b/test/testcases/tests/level3/validation/nodeValidity.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="nodeValidity">
+<metadata>
+
+<title>nodeValidity</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ check node validity, should return VAL_TRUE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#NodeEditVAL-nodeValidity"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="elem" type="ElementEditVAL"/>
+<var name="result" type="short"/>
+<var name="checkLevel" type="short" value="4"/>
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="elem"/>
+<nodeValidity obj="elem" valType="checkLevel" var="result"/>
+<assertEquals actual="result" expected="5" ignoreCase="false" id="nodevalidity"/>
+</test>
diff --git a/test/testcases/tests/level3/validation/requiredAttributes.xml b/test/testcases/tests/level3/validation/requiredAttributes.xml
new file mode 100644
index 0000000..acfa3c8
--- /dev/null
+++ b/test/testcases/tests/level3/validation/requiredAttributes.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="requiredAttributes">
+<metadata>
+
+<title>requiredAttributes</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ The method requiredAttributes returns the NameList of required attributes for
+ the element.
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#ElementEditVAL-requiredAttributes"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="Document"/>
+<var name="root" type="ElementEditVAL"/>
+<var name="attrlist" type="NameList"/>
+<var name="attname" type="DOMString"/>
+<load var="doc" href="book" willBeModified="false"/>
+<documentElement obj="doc" var="root"/>
+<requiredAttributes interface="ElementEditVAL" obj="root" var="attrlist"/>
+<assertNotNull actual="attrlist" id="requiredAttributesNotNull"/>
+<getName interface="NameList" obj="attrlist" index="0" var="attname"/>
+<assertEquals actual="attname" expected='"inStock"' ignoreCase="false" id="requiredAttributes"/>
+</test>
+
+
diff --git a/test/testcases/tests/level3/validation/validateDocument.xml b/test/testcases/tests/level3/validation/validateDocument.xml
new file mode 100644
index 0000000..dd8b380
--- /dev/null
+++ b/test/testcases/tests/level3/validation/validateDocument.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2003 Oracle
+
+All Rights Reserved. This program is distributed under the W3C's
+Software Intellectual Property License [1]. 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.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+-->
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="validateDocument">
+<metadata>
+
+<title>validateDocument</title>
+<creator>Kongyi Zhou</creator>
+<description>
+ validate the document, should return VAL_TRUE
+</description>
+<contributor>Oracle Corp.</contributor>
+<date qualifier="created">2003-03-01</date>
+<subject resource="http://www.w3.org/TR/2003/CR-DOM-Level-3-Val-20030730/validation#VAL-Interfaces-DocumentEditVAL-validateDocument"/>
+</metadata>
+<implementationAttribute name="schemaValidating" value="true"/>
+
+<var name="doc" type="DocumentEditVAL"/>
+<var name="result" type="short"/>
+<load var="doc" href="book" willBeModified="false"/>
+<validateDocument obj="doc" var="result"/>
+<assertEquals actual="result" expected="5" ignoreCase="false" id="validateDocument"/>
+</test>
diff --git a/test/testcases/tests/level3/xpath/.cvsignore b/test/testcases/tests/level3/xpath/.cvsignore
new file mode 100644
index 0000000..182530a
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/.cvsignore
@@ -0,0 +1,3 @@
+dom3.dtd
+dom3.xsd
+test-to-html.xsl
diff --git a/test/testcases/tests/level3/xpath/Attribute_Nodes.xml b/test/testcases/tests/level3/xpath/Attribute_Nodes.xml
new file mode 100644
index 0000000..0e45a09
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Attribute_Nodes.xml
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Attribute_Nodes">
+ <metadata>
+ <title>Attribute_Nodes</title>
+ <creator>Bob Clary</creator>
+ <description>
+ S1.2.2 Attribute Nodes -
+ Create ANY_TYPE XPathResult matching //@*,
+ check that each matching Node is an Attribute Node,
+ that parentNodes of returned Attributes are null,
+ and that ownerElements are in fact Elements.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#Mapping"/>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResult-iterateNext"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;//@*&quot;" />
+ <var name="xpathType" type="short" value="ANY_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+ <var name="nodeType" type="int"/>
+ <var name="parent" type="Node"/>
+ <var name="owner" type="Node"/>
+ <var name="ownerType" type="int"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator" />
+
+ <!-- Test Body -->
+
+ <iterateNext var="outNode" obj="outresult"/>
+ <while>
+ <notNull obj="outNode"/>
+
+ <nodeType var="nodeType" obj="outNode" />
+ <assertEquals id="S1.2.2-Attribute-Nodes-nodeType"
+ actual="nodeType"
+ expected="2"
+ ignoreCase="false"/>
+
+ <parentNode var="parent" obj="outNode" interface="Node"/>
+ <assertNull id="S1.2.2-Attribute-Nodes-parentNode" actual="parent"/>
+
+ <ownerElement var="owner" obj="outNode" interface="Attr"/>
+ <nodeType var="ownerType" obj="owner"/>
+ <assertEquals id="S1.2.2-Attribute-Nodes-owner-nodeType"
+ actual="ownerType"
+ expected="1"
+ ignoreCase="false"/>
+
+ <iterateNext var="outNode" obj="outresult"/>
+ </while>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/Attribute_Nodes_xmlns.xml b/test/testcases/tests/level3/xpath/Attribute_Nodes_xmlns.xml
new file mode 100644
index 0000000..ed854ba
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Attribute_Nodes_xmlns.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Attribute_Nodes_xmlns">
+ <metadata>
+ <title>Attribute_Nodes_xmlns</title>
+ <creator>Bob Clary</creator>
+ <description>
+ S1.2.2 Attribute Nodes -
+ Create ANY_TYPE XPathResult matching //@xmlns,
+ check that there are no matching Nodes by
+ checking for XPathResult.iterateNext == null
+ since namespace attributes are not retrievable.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#Mapping"/>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResult-iterateNext"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;//@xmlns&quot;"/>
+ <var name="xpathType" type="short" value="ANY_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staffNS" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator" />
+
+ <!-- Test Body -->
+
+ <iterateNext var="outNode" obj="outresult"/>
+ <assertNull id="Attribute_Nodes_xmlnsxmlns" actual="outNode"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/CVS/Entries b/test/testcases/tests/level3/xpath/CVS/Entries
new file mode 100644
index 0000000..8d355b2
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/CVS/Entries
@@ -0,0 +1,70 @@
+D/files////
+/.cvsignore/1.1/Fri Apr 3 02:47:58 2009//
+/Attribute_Nodes.xml/1.2/Fri Apr 3 02:47:58 2009//
+/Attribute_Nodes_xmlns.xml/1.2/Fri Apr 3 02:47:58 2009//
+/Comment_Nodes.xml/1.2/Fri Apr 3 02:47:58 2009//
+/Conformance_Expressions.xml/1.2/Fri Apr 3 02:47:58 2009//
+/Conformance_ID.xml/1.2/Fri Apr 3 02:47:58 2009//
+/Conformance_hasFeature_3.xml/1.1/Fri Apr 3 02:47:58 2009//
+/Conformance_hasFeature_empty.xml/1.1/Fri Apr 3 02:47:58 2009//
+/Conformance_hasFeature_null.xml/1.1/Fri Apr 3 02:47:58 2009//
+/Conformance_isSupported_3.xml/1.1/Fri Apr 3 02:47:58 2009//
+/Conformance_isSupported_empty.xml/1.1/Fri Apr 3 02:47:58 2009//
+/Conformance_isSupported_null.xml/1.1/Fri Apr 3 02:47:58 2009//
+/Element_Nodes.xml/1.2/Fri Apr 3 02:47:58 2009//
+/Processing_Instruction_Nodes.xml/1.2/Fri Apr 3 02:47:58 2009//
+/Text_Nodes.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathEvaluatorCast01.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_createExpression_INVALID_EXPRESSION_ERR.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_createExpression_NAMESPACE_ERR_01.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_createExpression_NAMESPACE_ERR_02.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_createExpression_NS.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_createExpression_no_NS.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_createNSResolver_all.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_createNSResolver_document.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_createNSResolver_documentElement.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_evaluate_INVALID_EXPRESSION_ERR.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_evaluate_NAMESPACE_ERR.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_evaluate_NOT_SUPPORTED_ERR.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_evaluate_TYPE_ERR.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_evaluate_WRONG_DOCUMENT_ERR.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_evaluate_document.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathEvaluator_evaluate_documentElement.xml/1.1/Fri Apr 3 02:47:58 2009//
+/XPathExpression_evaluate_NOT_SUPPORTED_ERR.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathExpression_evaluate_WRONG_DOCUMENT_ERR.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathExpression_evaluate_document.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathExpression_evaluate_documentElement.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathNSResolver_lookupNamespaceURI_nist_dmstc.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathNSResolver_lookupNamespaceURI_null.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathNSResolver_lookupNamespaceURI_prefix.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathNSResolver_lookupNamespaceURI_xml.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_TYPE_ERR.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_booleanValue_false.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_booleanValue_true.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_invalidIteratorState_ANY_TYPE.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathResult_invalidIteratorState_ANY_UNORDERED_NODE_TYPE.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathResult_invalidIteratorState_BOOLEAN_TYPE.xml/1.4/Fri Apr 3 02:47:58 2009//
+/XPathResult_invalidIteratorState_FIRST_ORDERED_NODE_TYPE.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathResult_invalidIteratorState_NUMBER_TYPE.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathResult_invalidIteratorState_ORDERED_NODE_ITERATOR_TYPE.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathResult_invalidIteratorState_ORDERED_NODE_SNAPSHOT_TYPE.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathResult_invalidIteratorState_STRING_TYPE.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathResult_invalidIteratorState_UNORDERED_NODE_ITERATOR_TYPE.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathResult_invalidIteratorState_UNORDERED_NODE_SNAPSHOT_TYPE.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathResult_iterateNext_INVALID_STATE_ERR.xml/1.3/Fri Apr 3 02:47:58 2009//
+/XPathResult_iteratorNext_ORDERED_NODE_ITERATOR_TYPE.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_iteratorNext_UNORDERED_NODE_ITERATOR_TYPE.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_numberValue.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_resultType.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_singleNodeValue_ANY_UNORDERED_NODE_TYPE.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_singleNodeValue_FIRST_ORDERED_NODE_TYPE.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_null.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_order.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_count.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_null.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_snapshotLength_ORDERED_NODE_SNAPSHOT_TYPE.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_snapshotLength_UNORDERED_NODE_SNAPSHOT_TYPE.xml/1.2/Fri Apr 3 02:47:58 2009//
+/XPathResult_stringValue.xml/1.3/Fri Apr 3 02:47:58 2009//
+/alltests.xml/1.6/Fri Apr 3 02:47:58 2009//
+/dom3xpathents.ent/1.4/Fri Apr 3 02:47:58 2009//
+/metadata.xml/1.2/Fri Apr 3 02:47:58 2009//
diff --git a/test/testcases/tests/level3/xpath/CVS/Repository b/test/testcases/tests/level3/xpath/CVS/Repository
new file mode 100644
index 0000000..8a011cd
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3/xpath
diff --git a/test/testcases/tests/level3/xpath/CVS/Root b/test/testcases/tests/level3/xpath/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/xpath/CVS/Template b/test/testcases/tests/level3/xpath/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/CVS/Template
diff --git a/test/testcases/tests/level3/xpath/Comment_Nodes.xml b/test/testcases/tests/level3/xpath/Comment_Nodes.xml
new file mode 100644
index 0000000..51f7cbe
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Comment_Nodes.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Comment_Nodes">
+ <metadata>
+ <title>Comment_Nodes</title>
+ <creator>Bob Clary</creator>
+ <description>
+ S1.2.6 Comment Nodes -
+ Create ANY_TYPE XPathResult matching //comment(),
+ check that each matching Node is a Comment Node.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#Mapping"/>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResult-iterateNext"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;//comment()&quot;"/>
+ <var name="xpathType" type="short" value="ANY_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="currNode" type="Node"/>
+ <var name="nodeType" type="int"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator" />
+
+ <!-- Test Body -->
+
+ <iterateNext var="currNode" obj="outresult"/>
+ <while>
+ <notNull obj="currNode"/>
+
+ <nodeType var="nodeType" obj="currNode" />
+ <assertEquals id="S1.2.6-Comment-Nodes-nodeType"
+ actual="nodeType"
+ expected="8"
+ ignoreCase="false"/>
+
+ <iterateNext var="currNode" obj="outresult"/>
+
+ </while>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/Conformance_Expressions.xml b/test/testcases/tests/level3/xpath/Conformance_Expressions.xml
new file mode 100644
index 0000000..d3d1f38
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Conformance_Expressions.xml
@@ -0,0 +1,280 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Conformance_Expressions">
+ <metadata>
+ <title>Conformance_Expressions</title>
+ <creator>Bob Clary</creator>
+ <description>
+ 1.3 Conformance - Iterate over a list of strings containing
+ valid XPath expressions, calling XPathEvaluator.createExpression
+ for each. If no expections are thrown and each result is non-null,
+ then the test passes.
+ </description>
+ <date qualifier="created">2003-11-18</date>
+ <subject resource="&spec;#Conformance"/>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-createExpression"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="doc" type="Document"/>
+ <var name="resolver" type="XPathNSResolver"/>
+ <var name="evaluator" type="XPathEvaluator"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString"/>
+
+ <!-- Test Variables -->
+
+ <var name="expressionList" type="List"/>
+ <var name="xpathexpression" type="XPathExpression"/>
+
+ <load var="doc" href="staffNS" willBeModified="false"/>
+
+ <createXPathEvaluator var='evaluator' document='doc'/>
+
+ <createNSResolver var="resolver" obj="evaluator" nodeResolver="doc"/>
+
+ <!-- test root absolute expression -->
+ <append collection="expressionList" item="&quot;/&quot;"/>
+
+ <!-- test verbose axes and basic node tests -->
+ <append collection="expressionList" item="&quot;child::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;child::text()&quot;"/>
+ <append collection="expressionList" item="&quot;child::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;child::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;child::node()&quot;"/>
+ <append collection="expressionList" item="&quot;child::*&quot;"/>
+ <append collection="expressionList" item="&quot;child::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;child::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;descendant::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;descendant::text()&quot;"/>
+ <append collection="expressionList" item="&quot;descendant::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;descendant::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;descendant::node()&quot;"/>
+ <append collection="expressionList" item="&quot;descendant::*&quot;"/>
+ <append collection="expressionList" item="&quot;descendant::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;descendant::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;parent::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;parent::text()&quot;"/>
+ <append collection="expressionList" item="&quot;parent::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;parent::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;parent::node()&quot;"/>
+ <append collection="expressionList" item="&quot;parent::*&quot;"/>
+ <append collection="expressionList" item="&quot;parent::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;parent::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;ancestor::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor::text()&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor::node()&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor::*&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;following-sibling::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;following-sibling::text()&quot;"/>
+ <append collection="expressionList" item="&quot;following-sibling::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;following-sibling::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;following-sibling::node()&quot;"/>
+ <append collection="expressionList" item="&quot;following-sibling::*&quot;"/>
+ <append collection="expressionList" item="&quot;following-sibling::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;following-sibling::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;preceding-sibling::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;preceding-sibling::text()&quot;"/>
+ <append collection="expressionList" item="&quot;preceding-sibling::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;preceding-sibling::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;preceding-sibling::node()&quot;"/>
+ <append collection="expressionList" item="&quot;preceding-sibling::*&quot;"/>
+ <append collection="expressionList" item="&quot;preceding-sibling::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;preceding-sibling::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;following::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;following::text()&quot;"/>
+ <append collection="expressionList" item="&quot;following::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;following::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;following::node()&quot;"/>
+ <append collection="expressionList" item="&quot;following::*&quot;"/>
+ <append collection="expressionList" item="&quot;following::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;following::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;preceding::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;preceding::text()&quot;"/>
+ <append collection="expressionList" item="&quot;preceding::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;preceding::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;preceding::node()&quot;"/>
+ <append collection="expressionList" item="&quot;preceding::*&quot;"/>
+ <append collection="expressionList" item="&quot;preceding::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;preceding::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;attribute::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;attribute::text()&quot;"/>
+ <append collection="expressionList" item="&quot;attribute::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;attribute::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;attribute::node()&quot;"/>
+ <append collection="expressionList" item="&quot;attribute::*&quot;"/>
+ <append collection="expressionList" item="&quot;attribute::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;attribute::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;namespace::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;namespace::text()&quot;"/>
+ <append collection="expressionList" item="&quot;namespace::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;namespace::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;namespace::node()&quot;"/>
+ <append collection="expressionList" item="&quot;namespace::*&quot;"/>
+ <append collection="expressionList" item="&quot;namespace::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;namespace::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;self::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;self::text()&quot;"/>
+ <append collection="expressionList" item="&quot;self::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;self::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;self::node()&quot;"/>
+ <append collection="expressionList" item="&quot;self::*&quot;"/>
+ <append collection="expressionList" item="&quot;self::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;self::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;descendant-or-self::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;descendant-or-self::text()&quot;"/>
+ <append collection="expressionList" item="&quot;descendant-or-self::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;descendant-or-self::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;descendant-or-self::node()&quot;"/>
+ <append collection="expressionList" item="&quot;descendant-or-self::*&quot;"/>
+ <append collection="expressionList" item="&quot;descendant-or-self::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;descendant-or-self::employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;ancestor-or-self::comment()&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor-or-self::text()&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor-or-self::processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor-or-self::processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor-or-self::node()&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor-or-self::*&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor-or-self::nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;ancestor-or-self::employee&quot;"/>
+
+ <!-- test common abbreviations -->
+ <append collection="expressionList" item="&quot;comment()&quot;"/>
+ <append collection="expressionList" item="&quot;text()&quot;"/>
+ <append collection="expressionList" item="&quot;processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;node()&quot;"/>
+ <append collection="expressionList" item="&quot;*&quot;"/>
+ <append collection="expressionList" item="&quot;nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;.//comment()&quot;"/>
+ <append collection="expressionList" item="&quot;.//text()&quot;"/>
+ <append collection="expressionList" item="&quot;.//processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;.//processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;.//node()&quot;"/>
+ <append collection="expressionList" item="&quot;.//*&quot;"/>
+ <append collection="expressionList" item="&quot;.//nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;.//employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;../comment()&quot;"/>
+ <append collection="expressionList" item="&quot;../text()&quot;"/>
+ <append collection="expressionList" item="&quot;../processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;../processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;../node()&quot;"/>
+ <append collection="expressionList" item="&quot;../*&quot;"/>
+ <append collection="expressionList" item="&quot;../nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;../employee&quot;"/>
+
+ <append collection="expressionList" item="&quot;@attributename&quot;"/>
+
+ <append collection="expressionList" item="&quot;./comment()&quot;"/>
+ <append collection="expressionList" item="&quot;./text()&quot;"/>
+ <append collection="expressionList" item="&quot;./processing-instruction()&quot;"/>
+ <append collection="expressionList" item="&quot;./processing-instruction('name')&quot;"/>
+ <append collection="expressionList" item="&quot;./node()&quot;"/>
+ <append collection="expressionList" item="&quot;./*&quot;"/>
+ <append collection="expressionList" item="&quot;./nist:*&quot;"/>
+ <append collection="expressionList" item="&quot;./employee&quot;"/>
+
+ <!-- test Union -->
+ <append collection="expressionList" item="&quot;comment() | text() | processing-instruction() | node()&quot;"/>
+
+ <!-- test various predicates -->
+
+ <append collection="expressionList" item="&quot;employee[address]&quot;"/>
+ <append collection="expressionList" item="&quot;employee/address[@street]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[position='Computer Specialist']&quot;"/>
+ <append collection="expressionList" item="&quot;employee[position!='Computer Specialist']&quot;"/>
+ <append collection="expressionList" item="&quot;employee[gender='Male' or gender='Female']&quot;"/>
+ <append collection="expressionList" item="&quot;employee[gender!='Male' and gender!='Female']&quot;"/>
+ <append collection="expressionList" item="&quot;employee/address[@street='Yes']&quot;"/>
+ <append collection="expressionList" item="&quot;employee/address[@street!='Yes']&quot;"/>
+ <append collection="expressionList" item="&quot;employee[position()=1]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[1]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[position()=last()]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[last()]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[position()&gt;1 and position&lt;last()]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[position()&gt;=1 and position&lt;=last()]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[count(.)&gt;0]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[position() mod 2=0]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[position() mod -2=0]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[position() div 2=0]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[position() div -2=-1]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[position() div 2 * 2=position()]&quot;"/>
+ <append collection="expressionList" item="&quot;employee[3 &gt; 2 &gt; 1]&quot;"/>
+ <append collection="expressionList" item="&quot;id('CANADA')&quot;"/>
+ <append collection="expressionList" item="&quot;*[local-name()='employee']&quot;"/>
+ <append collection="expressionList" item="&quot;*[local-name(.)='employee']&quot;"/>
+ <append collection="expressionList" item="&quot;*[local-name(employee)='employee']&quot;"/>
+ <append collection="expressionList" item="&quot;*[local-name()='employee']&quot;"/>
+ <append collection="expressionList" item="&quot;*[namespace-uri()='http://www.nist.gov']&quot;"/>
+ <append collection="expressionList" item="&quot;*[name()='nist:employee']&quot;"/>
+ <append collection="expressionList" item="&quot;*[string()]&quot;"/>
+ <append collection="expressionList" item="&quot;*[string(10 div foo)='NaN']&quot;"/>
+ <append collection="expressionList" item="&quot;*[concat('a', 'b', 'c')]&quot;"/>
+ <append collection="expressionList" item="&quot;*[starts-with('employee', 'emp')]&quot;"/>
+ <append collection="expressionList" item="&quot;*[contains('employee', 'emp')]&quot;"/>
+ <append collection="expressionList" item="&quot;*[substring-before('employeeId', 'Id')]&quot;"/>
+ <append collection="expressionList" item="&quot;*[substring-after('employeeId', 'employee')]&quot;"/>
+ <append collection="expressionList" item="&quot;*[substring('employeeId', 4)]&quot;"/>
+ <append collection="expressionList" item="&quot;*[substring('employeeId', 4, 5)]&quot;"/>
+ <append collection="expressionList" item="&quot;*[string-length()=2]&quot;"/>
+ <append collection="expressionList" item="&quot;*[string-length(.)=string-length(normalize-space(.))]&quot;"/>
+ <append collection="expressionList" item="&quot;*[translate('bar', 'abc', 'ABC')='BAr']&quot;"/>
+ <append collection="expressionList" item="&quot;*[boolean(.)]&quot;"/>
+ <append collection="expressionList" item="&quot;*[not(boolean(.))]&quot;"/>
+ <append collection="expressionList" item="&quot;*[true()]&quot;"/>
+ <append collection="expressionList" item="&quot;*[false()]&quot;"/>
+ <append collection="expressionList" item="&quot;*[lang('en')]&quot;"/>
+ <append collection="expressionList" item="&quot;*[number()]&quot;"/>
+ <append collection="expressionList" item="&quot;*[number('4')]&quot;"/>
+ <append collection="expressionList" item="&quot;*[floor(.)]&gt;0&quot;"/>
+ <append collection="expressionList" item="&quot;*[ceiling(.)]&lt;1&quot;"/>
+ <append collection="expressionList" item="&quot;*[round(number(.))=0]&lt;1&quot;"/>
+
+ <for-each collection="expressionList" member="expression">
+ <createExpression var="xpathexpression"
+ obj="evaluator"
+ resolver="resolver"
+ expression="expression"/>
+ </for-each>
+</test>
diff --git a/test/testcases/tests/level3/xpath/Conformance_ID.xml b/test/testcases/tests/level3/xpath/Conformance_ID.xml
new file mode 100644
index 0000000..bc288da
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Conformance_ID.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Conformance_ID">
+ <metadata>
+ <title>Conformance_ID</title>
+ <creator>Bob Clary</creator>
+ <description>
+ 1.3 Conformance - Check that the element returned by XPath id() function
+ returns the same element as Document.getElementById
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#Conformance"/>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathResult-iterateNext"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document"/>
+ <var name="resolver" type="XPathNSResolver"/>
+ <var name="evaluator" type="XPathEvaluator"/>
+ <var name="contextNode" type="Node"/>
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;id('child1')&quot;"/>
+ <var name="xpathType" type="short" value="ANY_TYPE"/>
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+ <var name="child1Element" type="Node"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="internaldtd" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator" />
+
+ <!-- Test Body -->
+
+ <iterateNext var="outNode" obj="outresult"/>
+
+ <getElementById var="child1Element"
+ obj="doc"
+ elementId="&quot;child1&quot;"/>
+
+ <assertSame id="S1.3-Conformance-ID"
+ actual="outNode"
+ expected="child1Element"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/Conformance_hasFeature_3.xml b/test/testcases/tests/level3/xpath/Conformance_hasFeature_3.xml
new file mode 100644
index 0000000..be0e75c
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Conformance_hasFeature_3.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Conformance_hasFeature_3">
+ <metadata>
+ <title>Conformance_hasFeature_3</title>
+ <creator>Philippe Le Hégaret</creator>
+ <contributor>Bob Clary</contributor>
+ <description>
+ 1.3 Conformance - Test if
+ Document.implementation.hasFeature('XPath', "3.0") returns true
+ </description>
+ <date qualifier="created">2003-11-29</date>
+ <subject resource="&spec;#Conformance"/>
+ </metadata>
+
+ <var name="doc" type="Document"/>
+ <var name="state" type="boolean"/>
+ <var name="impl" type='DOMImplementation'/>
+
+ <load var="doc" href="staffNS" willBeModified="false"/>
+
+ <implementation obj="doc" var="impl"/>
+
+ <hasFeature obj="impl"
+ feature="&quot;xpATH&quot;"
+ version="&quot;3.0&quot;"
+ var="state"/>
+
+ <assertTrue actual="state" id="hasFeature-XPath-3.0"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/Conformance_hasFeature_empty.xml b/test/testcases/tests/level3/xpath/Conformance_hasFeature_empty.xml
new file mode 100644
index 0000000..362588a
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Conformance_hasFeature_empty.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Conformance_hasFeature_empty">
+ <metadata>
+ <title>Conformance_hasFeature_empty</title>
+ <creator>Philippe Le Hégaret</creator>
+ <contributor>Bob Clary</contributor>
+ <description>
+ 1.3 Conformance - Test if
+ Document.implementation.hasFeature('XPath', "") returns true
+ </description>
+ <date qualifier="created">2003-11-29</date>
+ <subject resource="&spec;#Interfaces"/>
+ </metadata>
+
+ <var name="doc" type="Document"/>
+ <var name="state" type="boolean"/>
+ <var name="impl" type='DOMImplementation'/>
+
+ <load var="doc" href="staffNS" willBeModified="false"/>
+
+ <implementation obj="doc" var="impl"/>
+
+ <hasFeature obj="impl"
+ feature="&quot;xpATH&quot;"
+ version="&quot;&quot;"
+ var="state"/>
+
+ <assertTrue actual="state" id="hasFeature-XPath-empty"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/Conformance_hasFeature_null.xml b/test/testcases/tests/level3/xpath/Conformance_hasFeature_null.xml
new file mode 100644
index 0000000..c69dedc
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Conformance_hasFeature_null.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Conformance_hasFeature_null">
+ <metadata>
+ <title>Conformance_hasFeature_null</title>
+ <creator>Philippe Le Hégaret</creator>
+ <contributor>Bob Clary</contributor>
+ <description>
+ 1.3 Conformance - Test if
+ Document.implementation.hasFeature('XPath', null) returns true
+ </description>
+ <date qualifier="created">2003-11-29</date>
+ <subject resource="&spec;#Conformance"/>
+ </metadata>
+
+ <var name="doc" type="Document"/>
+ <var name="state" type="boolean"/>
+ <var name="impl" type='DOMImplementation'/>
+ <var name="nullValue" type="DOMString" isNull="true"/>
+
+ <load var="doc" href="staffNS" willBeModified="false"/>
+
+ <implementation obj="doc" var="impl"/>
+
+ <hasFeature obj="impl"
+ feature="&quot;xpATH&quot;"
+ version="nullValue"
+ var="state"/>
+
+ <assertTrue actual="state" id="hasFeature-XPath-null"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/Conformance_isSupported_3.xml b/test/testcases/tests/level3/xpath/Conformance_isSupported_3.xml
new file mode 100644
index 0000000..c5d3459
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Conformance_isSupported_3.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Conformance_isSupported_3">
+ <metadata>
+ <title>Conformance_isSupported_3</title>
+ <creator>Philippe Le Hégaret</creator>
+ <description>
+ 1.3 Conformance - The "feature" parameter in the
+ "Node.isSupported(feature,version)"
+ method is the name of the feature and the version is the version
+ number of the feature to test. XPath is the legal value for the
+ XPath module. The method should return "true".
+
+ Retrieve the DOM document on which the
+ "isSupported(feature,version)" method is invoked with "feature"
+ equal to "XPath" and version to "3.0". The method should return a
+ boolean "true".
+ </description>
+ <date qualifier="created">2002-04-24</date>
+ <date qualifier="modified">2003-11-29</date>
+ <subject resource="&spec;#Conformance"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="state" type="boolean"/>
+ <load var="doc" href="staffNS" willBeModified="false"/>
+ <isSupported obj="doc" feature="&quot;xpATH&quot;"
+ version="&quot;3.0&quot;" var="state"/>
+ <assertTrue actual="state" id="isSupported-XPath-3.0"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/Conformance_isSupported_empty.xml b/test/testcases/tests/level3/xpath/Conformance_isSupported_empty.xml
new file mode 100644
index 0000000..d441cbe
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Conformance_isSupported_empty.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Conformance_isSupported_empty">
+ <metadata>
+ <title>Conformance_isSupported_empty</title>
+ <creator>Philippe Le Hégaret</creator>
+ <contributor>Bob Clary</contributor>
+ <description>
+ 1.3 Conformance - The "feature" parameter in the
+ "Node.isSupported(feature,version)"
+ method is the name of the feature and the version is the version
+ number of the feature to test. XPath is the legal value for the
+ XPath module. The method should return "true".
+
+ Retrieve the DOM document on which the
+ "isSupported(feature,version)" method is invoked with "feature"
+ equal to "XPath" and version to the empty string "". The method
+ should return a boolean "true" if the implementation claims support
+ for some version for XPath.
+ </description>
+ <date qualifier="created">2002-04-24</date>
+ <date qualifier="modified">2003-11-29</date>
+ <subject resource="&spec;#Conformance"/>
+ </metadata>
+ <var name="doc" type="Document"/>
+ <var name="state" type="boolean"/>
+ <load var="doc" href="staffNS" willBeModified="false"/>
+ <isSupported obj="doc" feature="&quot;xpATH&quot;"
+ version="&quot;&quot;" var="state"/>
+ <assertTrue actual="state" id="isSupported-XPath-empty"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/Conformance_isSupported_null.xml b/test/testcases/tests/level3/xpath/Conformance_isSupported_null.xml
new file mode 100644
index 0000000..a88377f
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Conformance_isSupported_null.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Conformance_isSupported_null">
+ <metadata>
+ <title>Conformance_isSupported_null</title>
+ <creator>Philippe Le Hégaret</creator>
+ <contributor>Bob Clary</contributor>
+ <description>
+ 1.3 Conformance - Test if
+ Document.isSupported('XPath', null) returns true
+ </description>
+ <date qualifier="created">2003-11-29</date>
+ <subject resource="&spec;#Conformance"/>
+ </metadata>
+
+ <var name="doc" type="Document"/>
+ <var name="state" type="boolean"/>
+ <var name="nullValue" type="DOMString" isNull="true"/>
+
+ <load var="doc" href="staffNS" willBeModified="false"/>
+
+ <isSupported obj="doc"
+ feature="&quot;xpATH&quot;"
+ version="nullValue"
+ var="state"/>
+
+ <assertTrue actual="state" id="isSupported-XPath-null"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/Element_Nodes.xml b/test/testcases/tests/level3/xpath/Element_Nodes.xml
new file mode 100644
index 0000000..9809277
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Element_Nodes.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Element_Nodes">
+ <metadata>
+ <title>Element_Nodes</title>
+ <creator>Bob Clary</creator>
+ <description>
+ 1.2.1- Element Nodes - Evaluate /staff/employee,
+ check that each matching Node in the result
+ is an Element.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#Mapping"/>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult-iterateNext"/>
+ </metadata>
+
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document"/>
+ <var name="resolver" type="XPathNSResolver"/>
+ <var name="evaluator" type="XPathEvaluator"/>
+ <var name="contextNode" type="Node"/>
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="ANY_TYPE"/>
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+ <var name="nodeType" type="int"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator" />
+
+ <!-- Test Body -->
+
+ <iterateNext var="outNode" obj="outresult"/>
+ <while>
+ <notNull obj="outNode"/>
+
+ <nodeType var="nodeType" obj="outNode" />
+ <assertEquals id="S1.2.1-Element-Nodes-nodeType"
+ actual="nodeType"
+ expected="1"
+ ignoreCase="false"/>
+ <iterateNext var="outNode" obj="outresult"/>
+
+ </while>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/Processing_Instruction_Nodes.xml b/test/testcases/tests/level3/xpath/Processing_Instruction_Nodes.xml
new file mode 100644
index 0000000..cc98ea0
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Processing_Instruction_Nodes.xml
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Processing_Instruction_Nodes">
+ <metadata>
+ <title>Processing_Instruction_Nodes</title>
+ <creator>Bob Clary</creator>
+ <description>
+ S1.2.7 Processing Instruction Nodes -
+ Create ANY_TYPE XPathResult matching //processing-instruction(),
+ check that each matching Node is a Processing Instruction Node.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#Mapping"/>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResult-iterateNext"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString"
+ value="&quot;//processing-instruction()&quot;"/>
+ <var name="xpathType" type="short" value="ANY_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="currNode" type="Node"/>
+ <var name="nodeType" type="int"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator" />
+
+ <!-- Test Body -->
+
+ <iterateNext var="currNode" obj="outresult"/>
+ <while>
+ <notNull obj="currNode"/>
+
+ <nodeType var="nodeType" obj="currNode" />
+ <assertEquals id="S1.2.7-Processing-Instruction-Nodes-nodetype"
+ actual="nodeType"
+ expected="7"
+ ignoreCase="false"/>
+
+ <iterateNext var="currNode" obj="outresult"/>
+
+ </while>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/Text_Nodes.xml b/test/testcases/tests/level3/xpath/Text_Nodes.xml
new file mode 100644
index 0000000..4897c12
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/Text_Nodes.xml
@@ -0,0 +1,150 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="Text_Nodes">
+ <metadata>
+ <title>Text_Nodes</title>
+ <creator>Bob Clary</creator>
+ <description>
+ 1.2.4 Text Nodes -
+ Create ANY_TYPE XPathResult matching //text(),
+ check that each matching Node is a Text Node, and
+ that no pair of nodes in the result are siblings.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#Mapping"/>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResult-iterateNext"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;//text()&quot;" />
+ <var name="xpathType" type="short" value="ANY_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="currNode" type="Node"/>
+ <var name="nextNode" type="Node"/>
+ <var name="currNodeNextSibling" type="Node"/>
+ <var name="nextNodePrevSibling" type="Node"/>
+ <var name="nodeType" type="int"/>
+ <var name="isTextNode" type="DOMString" />
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc" />
+ <createNSResolver var="resolver" obj="evaluator" nodeResolver="doc" />
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator" />
+
+ <!-- Test Body -->
+
+ <iterateNext var="currNode" obj="outresult" />
+
+ <while> <notNull obj="currNode"/>
+
+ <nodeType var="nodeType" obj="currNode" />
+
+ <assign var="isTextNode" value="&quot;true&quot;"/>
+ <if>
+ <and>
+ <notEquals actual="nodeType" expected="3"/>
+ <notEquals actual="nodeType" expected="4"/>
+ </and>
+
+ <assign var="isTextNode" value="&quot;false&quot;"/>
+ </if>
+ <assertEquals id="S1.2.4-Text-Nodes-nodeType"
+ actual="isTextNode"
+ expected="&quot;true&quot;"
+ ignoreCase="true"/>
+
+ <iterateNext var="nextNode" obj="outresult"/>
+
+ <if>
+ <notNull obj="nextNode"/>
+
+ <nextSibling var="currNodeNextSibling"
+ obj="currNode" interface="Node"/>
+ <if>
+ <same actual="currNodeNextSibling" expected="nextNode"/>
+ <comment>dummy statement</comment>
+ <else>
+ <assertTrue id="S1.2.4-Text-Nodes-Adjacent-Next"
+ actual="false"
+ />
+ </else>
+ </if>
+
+ <previousSibling var="nextNodePrevSibling"
+ obj="nextNode" interface="Node"/>
+ <if>
+ <same actual="currNode" expected="nextNodePrevSibling"/>
+ <comment>dummy statement</comment>
+ <else>
+ <assertTrue id="S1.2.4-Text-Nodes-Adjacent-Prev"
+ actual="false"
+ />
+ </else>
+ </if>
+
+ </if>
+
+ <assign var="currNode" value="nextNode"/>
+
+ </while>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluatorCast01.xml b/test/testcases/tests/level3/xpath/XPathEvaluatorCast01.xml
new file mode 100644
index 0000000..e0cf751
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluatorCast01.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluatorCast01">
+<metadata>
+<title>XPathEvaluatorCast01</title>
+<creator>Philippe Le Hégaret</creator>
+<description>
+A document is created using implementation.createDocument and
+cast to a XPathEvaluator interface.
+</description>
+<date qualifier="created">2002-04-24</date>
+<subject resource="&spec;#XPathEvaluator"/>
+</metadata>
+ &vars;
+
+ &findXPathEvaluator;
+
+ <assertNotNull actual="xpEvaluator" id="notnull"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_INVALID_EXPRESSION_ERR.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_INVALID_EXPRESSION_ERR.xml
new file mode 100644
index 0000000..c477127
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_INVALID_EXPRESSION_ERR.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_createExpression_INVALID_EXPRESSION_ERR">
+ <metadata>
+ <title>XPathEvaluator_createExpression_INVALID_EXPRESSION_ERR</title>
+ <creator>Philippe Le Hégaret</creator>
+ <description>
+ The XPathEvaluator can create a "XPathExpression" using the method
+ "createExpression(expression, resolver)".
+
+ Retrieve the DOM document on which the
+ 'createExpression("12a", null)' method is
+ invoked with the document element. The method should fail to create
+ pre-compiled expression and throws
+ XPathException.INVALID_EXPRESSION_ERR
+ since "12a" is not an XPath expression.
+ </description>
+ <date qualifier="created">2002-04-26</date>
+ <subject resource="&spec;#XPathEvaluator-createExpression"/>
+ </metadata>
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ &vars;
+ <var name="exp" type="XPathExpression"/>
+
+ &findXPathEvaluator;
+
+ <assertXPathException id="throw_INVALID_EXPRESSION_ERR">
+ <INVALID_EXPRESSION_ERR>
+ <createExpression obj='xpEvaluator' var='exp'
+ expression='&quot;12a&quot;' resolver='nullNSResolver' />
+ </INVALID_EXPRESSION_ERR>
+ </assertXPathException>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NAMESPACE_ERR_01.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NAMESPACE_ERR_01.xml
new file mode 100644
index 0000000..d909308
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NAMESPACE_ERR_01.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_createExpression_NAMESPACE_ERR_01">
+ <metadata>
+ <title>XPathEvaluator_createExpression_NAMESPACE_ERR_01</title>
+ <creator>Philippe Le Hégaret</creator>
+ <description>
+ The XPathEvaluator can create a "XPathExpression" using the method
+ "createExpression(expression, resolver)".
+
+ Retrieve the DOM document on which the
+ 'createExpression("/jfouffa:employee", null)' method is
+ invoked with the document element. The method should fail to create
+ pre-compiled expression and throws DOMException.NAMESPACE_ERR
+ since the prefix jfouffa is not mapped.
+ </description>
+ <date qualifier="created">2002-04-26</date>
+ <subject resource="&spec;#XPathEvaluator-createExpression"/>
+ </metadata>
+ &vars;
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="exp" type="XPathExpression"/>
+
+ &findXPathEvaluator;
+
+ <assertDOMException id="throw_NAMESPACE_ERR">
+ <NAMESPACE_ERR>
+ <createExpression obj='xpEvaluator' var='exp'
+ expression='&quot;/jfouffa:employee&quot;' resolver='nullNSResolver' />
+ </NAMESPACE_ERR>
+ </assertDOMException>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NAMESPACE_ERR_02.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NAMESPACE_ERR_02.xml
new file mode 100644
index 0000000..5a197ed
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NAMESPACE_ERR_02.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_createExpression_NAMESPACE_ERR_02">
+ <metadata>
+ <title>XPathEvaluator_createExpression_NAMESPACE_ERR_02</title>
+ <creator>Philippe Le Hégaret</creator>
+ <description>
+ The XPathEvaluator can create a "XPathExpression" using the method
+ "createExpression(expression, resolver)".
+
+ Retrieve the DOM document on which the
+ 'createExpression("/staff/jfouffa:employee", resolver)' method is
+ invoked with the document element. The method should fail to create
+ pre-compiled expression and throws DOMException.NAMESPACE_ERR
+ since the prefix jfouffa is not mapped.
+ </description>
+ <date qualifier="created">2002-04-26</date>
+ <subject resource="&spec;#XPathEvaluator-createExpression"/>
+ </metadata>
+ &vars;
+ <var name="exp" type="XPathExpression"/>
+ <var name="root" type='Element'/>
+ <var name="resolver" type="XPathNSResolver"/>
+
+ &findXPathEvaluator;
+
+ <documentElement obj='doc' var='root'/>
+
+ <createNSResolver obj="xpEvaluator" nodeResolver="root"
+ var="resolver"/>
+
+ <assertDOMException id="throw_NAMESPACE_ERR">
+ <NAMESPACE_ERR>
+ <createExpression obj='xpEvaluator' var='exp'
+ expression='&quot;/staff/jfouffa:employee&quot;' resolver='resolver' />
+ </NAMESPACE_ERR>
+ </assertDOMException>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NS.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NS.xml
new file mode 100644
index 0000000..0f66b72
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_NS.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_createExpression_NS">
+ <metadata>
+ <title>XPathEvaluator_createExpression_NS</title>
+ <creator>Philippe Le Hégaret</creator>
+ <description>
+ The XPathEvaluator can create a "XPathExpression" using the method
+ "createExpression(expression, resolver)".
+
+ Retrieve the DOM document on which the
+ 'createExpression("/staff/nist:employee", resolver)' method is
+ invoked with the document element. The method should return a
+ pre-compiled expression.
+ </description>
+ <date qualifier="created">2002-04-26</date>
+ <subject resource="&spec;#XPathEvaluator-createExpression"/>
+ </metadata>
+ &vars;
+ <var name="exp" type="XPathExpression"/>
+ <var name="root" type='Element'/>
+ <var name="resolver" type="XPathNSResolver"/>
+
+ &findXPathEvaluator;
+
+ <documentElement obj='doc' var='root'/>
+
+ <createNSResolver obj="xpEvaluator" nodeResolver="root"
+ var="resolver"/>
+
+ <createExpression obj='xpEvaluator' var='exp'
+ expression='&quot;/staff/nist:employee&quot;' resolver='resolver' />
+
+ <assertNotNull actual="exp" id="notnull"/>
+
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_no_NS.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_no_NS.xml
new file mode 100644
index 0000000..862f2ba
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_createExpression_no_NS.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_createExpression_no_NS">
+ <metadata>
+ <title>XPathEvaluator_createExpression_no_NS</title>
+ <creator>Philippe Le Hégaret</creator>
+ <description>
+ The XPathEvaluator can create a "XPathExpression" using the method
+ "createExpression(expression, resolver)".
+
+ Retrieve the DOM document on which the
+ "createExpression("/", null)" method is invoked with the document
+ element. The method should return a pre-compiled expression.
+ </description>
+ <date qualifier="created">2002-04-26</date>
+ <subject resource="&spec;#XPathEvaluator-createExpression"/>
+ </metadata>
+ &vars;
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="exp" type="XPathExpression"/>
+
+ &findXPathEvaluator;
+
+ <createExpression obj='xpEvaluator' var='exp'
+ expression='&quot;/&quot;' resolver='nullNSResolver' />
+
+ <assertNotNull actual="exp" id="notnull"/>
+
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_all.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_all.xml
new file mode 100644
index 0000000..a4a1b76
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_all.xml
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_createNSResolver_all">
+ <metadata>
+ <title>XPathEvaluator_createNSResolver_all</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Iterate over all nodes in the test document, creating
+ XPathNSResolvers checking that none return a null object.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <var name="doc" type="Document"/>
+ <var name="staff" type="Element"/>
+ <var name="staffchildren" type="NodeList"/>
+ <var name="staffchild" type="Node"/>
+ <var name="staffgrandchildren" type="NodeList"/>
+ <var name="staffgrandchild" type="Node"/>
+ <var name="staffgreatgrandchildren" type="NodeList"/>
+ <var name="staffgreatgrandchild" type="Node"/>
+ <var name="resolver" type="XPathNSResolver"/>
+ <var name="evaluator" type="XPathEvaluator"/>
+
+ <load var="doc" href="staffNS" willBeModified="false"/>
+
+ <createXPathEvaluator var='evaluator'
+ document='doc'/>
+
+ <createNSResolver var="resolver"
+ obj="evaluator"
+ nodeResolver="doc"/>
+
+ <assertNotNull id="documentnotnull"
+ actual="resolver"/>
+
+ <documentElement var="staff"
+ obj="doc"/>
+
+ <createNSResolver var="resolver"
+ obj="evaluator"
+ nodeResolver="staff"/>
+
+ <assertNotNull id="documentElementnotnull"
+ actual="resolver"/>
+
+ <childNodes var="staffchildren"
+ obj="staff"/>
+
+ <for-each member="staffchild"
+ collection="staffchildren">
+
+ <createNSResolver var="resolver"
+ obj="evaluator"
+ nodeResolver="staffchild"/>
+
+ <assertNotNull id="staffchildnotnull"
+ actual="resolver"/>
+
+ <childNodes var="staffgrandchildren"
+ obj="staffchild"/>
+
+ <for-each member="staffgrandchild"
+ collection="staffgrandchildren">
+
+ <createNSResolver var="resolver"
+ obj="evaluator"
+ nodeResolver="staffgrandchild"/>
+
+ <assertNotNull id="staffgrandchildnotnull"
+ actual="resolver"/>
+
+ <childNodes var="staffgreatgrandchildren"
+ obj="staffgrandchild"/>
+
+ <for-each member="staffgreatgrandchild"
+ collection="staffgreatgrandchildren">
+
+ <createNSResolver var="resolver"
+ obj="evaluator"
+ nodeResolver="staffgreatgrandchild"/>
+
+ <assertNotNull id="staffgreatgrandchildnotnull"
+ actual="resolver"/>
+
+ </for-each>
+
+ </for-each>
+
+ </for-each>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_document.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_document.xml
new file mode 100644
index 0000000..5d77b39
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_document.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_createNSResolver_document">
+ <metadata>
+ <title>XPathEvaluator_createNSResolver_document</title>
+ <creator>Philippe Le Hégaret</creator>
+ <description>
+ The XPathEvaluator can create "XPathNSResolver" using the method
+ "createNSResolver(nodeResolver)".
+
+ Retrieve the DOM document on which the
+ "createNSResolver(nodeResolver)" method is invoked with the document
+ itself. The method should return a resolver.
+ </description>
+ <date qualifier="created">2002-04-26</date>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+ &vars;
+ <var name="resolver" type="XPathNSResolver"/>
+
+ &findXPathEvaluator;
+
+ <createNSResolver obj="xpEvaluator" nodeResolver="doc" var="resolver"/>
+
+ <assertNotNull actual="resolver" id="notnull"/>
+
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_documentElement.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_documentElement.xml
new file mode 100644
index 0000000..263cd54
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_createNSResolver_documentElement.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_createNSResolver_documentElement">
+ <metadata>
+ <title>XPathEvaluator_createNSResolver_documentElement</title>
+ <creator>Philippe Le Hégaret</creator>
+ <description>
+ The XPathEvaluator can create "XPathNSResolver" using the method
+ "createNSResolver(nodeResolver)".
+
+ Retrieve the DOM document on which the
+ "createNSResolver(nodeResolver)" method is invoked with the document
+ element. The method should return a resolver.
+ </description>
+ <date qualifier="created">2002-04-26</date>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+ &vars;
+ <var name="resolver" type="XPathNSResolver"/>
+ <var name="root" type='Element'/>
+
+ &findXPathEvaluator;
+
+ <documentElement obj='doc' var='root'/>
+
+ <createNSResolver obj="xpEvaluator" nodeResolver="root"
+ var="resolver"/>
+
+ <assertNotNull actual="resolver" id="notnull"/>
+
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_INVALID_EXPRESSION_ERR.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_INVALID_EXPRESSION_ERR.xml
new file mode 100644
index 0000000..51b4de4
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_INVALID_EXPRESSION_ERR.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_evaluate_INVALID_EXPRESSION_ERR">
+ <metadata>
+ <title>XPathEvaluator_evaluate_INVALID_EXPRESSION_ERR</title>
+ <creator>Philippe Le Hégaret</creator>
+ <contributor>Bob Clary</contributor>
+ <description>
+ Test if XPathEvaluator.evaluate properly throws INVALID_EXPRESSION_ERROR
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ </metadata>
+
+ &vars;
+
+ <var name="root" type='Element'/>
+ <var name="result" type="XPathResult"/>
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="nullResult" type="XPathResult" isNull="true"/>
+
+ &findXPathEvaluator;
+
+ <documentElement obj='doc' var='root'/>
+
+ <assertXPathException id="throw_INVALID_EXPRESSION_ERR">
+ <INVALID_EXPRESSION_ERR>
+ <evaluate interface="XPathEvaluator"
+ obj='xpEvaluator'
+ var='result'
+ expression='&quot;12a&quot;'
+ contextNode='root'
+ resolver='nullNSResolver'
+ type='0'
+ result='nullResult'/>
+ </INVALID_EXPRESSION_ERR>
+
+ </assertXPathException>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_NAMESPACE_ERR.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_NAMESPACE_ERR.xml
new file mode 100644
index 0000000..1123424
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_NAMESPACE_ERR.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_evaluate_NAMESPACE_ERR">
+ <metadata>
+ <title>XPathEvaluator_evaluate_NAMESPACE_ERR</title>
+ <creator>Philippe Le Hégaret</creator>
+ <contributor>Bob Clary</contributor>
+ <description>
+ Test if XPathEvaluator.evaluate properly throws NAMESPACE_ERROR
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ </metadata>
+
+ &vars;
+
+ <var name="root" type='Element'/>
+ <var name="result" type="XPathResult"/>
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="nullResult" type="XPathResult" isNull="true"/>
+
+ &findXPathEvaluator;
+
+ <documentElement obj='doc'
+ var='root'/>
+
+ <assertDOMException id="throw_NAMESPACE_ERR">
+ <NAMESPACE_ERR>
+ <evaluate interface="XPathEvaluator"
+ obj='xpEvaluator'
+ var='result'
+ expression='&quot;//foo:bar&quot;'
+ contextNode='root'
+ resolver='nullNSResolver'
+ type='0'
+ result='nullResult'/>
+ </NAMESPACE_ERR>
+
+ </assertDOMException>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_NOT_SUPPORTED_ERR.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_NOT_SUPPORTED_ERR.xml
new file mode 100644
index 0000000..c2dd8d6
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_NOT_SUPPORTED_ERR.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_evaluate_NOT_SUPPORTED_ERR">
+ <metadata>
+ <title>XPathEvaluator_evaluate_NOT_SUPPORTED_ERR</title>
+ <creator>Philippe Le Hégaret</creator>
+ <contributor>Bob Clary</contributor>
+ <description>
+ Test if XPathEvaluator.evaluate properly throws NOT_SUPPORTED_ERROR
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ </metadata>
+
+ <var name='doc' type='Document'/>
+ <var name='xpEvaluator' type='XPathEvaluator'/>
+ <var name="result" type="XPathResult"/>
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="nullResult" type="XPathResult" isNull="true"/>
+ <var name="contextNode" type="Node"/>
+
+ <load var='doc' href='staffNS' willBeModified='false'/>
+
+ <createXPathEvaluator var='xpEvaluator' document='doc'/>
+
+ <createEntityReference var="contextNode" obj="doc" name="&quot;entityname&quot;"/>
+
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <evaluate interface="XPathEvaluator"
+ obj='xpEvaluator'
+ var='result'
+ expression='&quot;//foo:bar&quot;'
+ contextNode='contextNode'
+ resolver='nullNSResolver'
+ type='0'
+ result='nullResult'/>
+ </NOT_SUPPORTED_ERR>
+
+ </assertDOMException>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_TYPE_ERR.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_TYPE_ERR.xml
new file mode 100644
index 0000000..152874e
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_TYPE_ERR.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_evaluate_TYPE_ERR">
+ <metadata>
+ <title>XPathEvaluator_evaluate_TYPE_ERR</title>
+ <creator>Curt Arnold</creator>
+ <description>
+Evaluate "string(/)" and request that the result be a FIRST_ORDERED_NODE_TYPE, should
+result in a TYPE_ERR.
+ </description>
+ <date qualifier="created">2004-01-10</date>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=508"/>
+ </metadata>
+ &vars;
+ <var name="result" type="XPathResult"/>
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="nullResult" type="XPathResult" isNull="true"/>
+
+ &findXPathEvaluator;
+
+ <assertXPathException id="throw_TYPE_ERR">
+ <TYPE_ERR>
+ <evaluate interface="XPathEvaluator" obj='xpEvaluator' var='result'
+ expression='"string(/)"' contextNode='doc' resolver='nullNSResolver' type='9' result='nullResult'/>
+ </TYPE_ERR>
+ </assertXPathException>
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_WRONG_DOCUMENT_ERR.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_WRONG_DOCUMENT_ERR.xml
new file mode 100644
index 0000000..a01a856
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_WRONG_DOCUMENT_ERR.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_evaluate_WRONG_DOCUMENT_ERR">
+ <metadata>
+ <title>XPathEvaluator_evaluate_WRONG_DOCUMENT_ERR</title>
+ <creator>Philippe Le Hégaret</creator>
+ <contributor>Bob Clary</contributor>
+ <description>
+ Test if XPathEvaluator.evaluate properly throws WRONG_DOCUMENT_ERROR
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ </metadata>
+
+ <var name='doc1' type='Document'/>
+ <var name='doc2' type='Document'/>
+ <var name='xpEvaluator' type='XPathEvaluator'/>
+ <var name="root" type='Element'/>
+ <var name="result" type="XPathResult"/>
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="nullResult" type="XPathResult" isNull="true"/>
+
+ <load var='doc1' href='staffNS' willBeModified='false'/>
+ <load var='doc2' href='staff' willBeModified='false'/>
+
+ <createXPathEvaluator var='xpEvaluator' document='doc1'/>
+
+ <documentElement obj='doc2' var='root'/>
+
+ <assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+ <WRONG_DOCUMENT_ERR>
+ <evaluate interface="XPathEvaluator"
+ obj='xpEvaluator'
+ var='result'
+ expression='&quot;//foo:bar&quot;'
+ contextNode='root'
+ resolver='nullNSResolver'
+ type='0'
+ result='nullResult'/>
+ </WRONG_DOCUMENT_ERR>
+
+ </assertDOMException>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_document.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_document.xml
new file mode 100644
index 0000000..5c053d8
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_document.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_evaluate_document">
+ <metadata>
+ <title>XPathEvaluator_evaluate_document</title>
+ <creator>Philippe Le Hégaret</creator>
+ <description>
+ Retrieve the XPathEvaluator on which the
+ "evaluate("/", document, null, 0, null)" method is invoked with the document
+ element. The method should return an XPathResult.
+ </description>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ </metadata>
+ &vars;
+ <var name="root" type='Element'/>
+ <var name="result" type="XPathResult"/>
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="nullResult" type="XPathResult" isNull="true"/>
+
+ &findXPathEvaluator;
+
+ <assign value='doc' var='root'/>
+
+ <evaluate interface="XPathEvaluator" obj='xpEvaluator' var='result'
+ expression='&quot;/&quot;' contextNode='root' resolver='nullNSResolver' type='0' result='nullResult'/>
+
+ <assertNotNull actual="result" id="notnull"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_documentElement.xml b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_documentElement.xml
new file mode 100644
index 0000000..ec07e23
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathEvaluator_evaluate_documentElement.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathEvaluator_evaluate_documentElement">
+ <metadata>
+ <title>XPathEvaluator_evaluate_documentElement</title>
+ <creator>Philippe Le Hégaret</creator>
+ <description>
+ Retrieve the XPathEvaluator on which the
+ "evaluate("/", documentElement, null, 0, null)" method is invoked with the document
+ element. The method should return an XPathResult.
+ </description>
+ <date qualifier="created">2002-04-28</date>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ </metadata>
+ &vars;
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="root" type='Element'/>
+ <var name="result" type="XPathResult"/>
+ <var name="nullResult" type="XPathResult" isNull="true"/>
+
+ &findXPathEvaluator;
+
+ <documentElement obj='doc' var='root'/>
+
+ <evaluate interface="XPathEvaluator" obj='xpEvaluator' var='result'
+ expression='&quot;/&quot;' contextNode='root' resolver='nullNSResolver' type='0' result='nullResult'/>
+
+ <assertNotNull actual="result" id="notnull"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathExpression_evaluate_NOT_SUPPORTED_ERR.xml b/test/testcases/tests/level3/xpath/XPathExpression_evaluate_NOT_SUPPORTED_ERR.xml
new file mode 100644
index 0000000..6d4af91
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathExpression_evaluate_NOT_SUPPORTED_ERR.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathExpression_evaluate_NOT_SUPPORTED_ERR">
+ <metadata>
+ <title>XPathEvaluator_expression_NOT_SUPPORTED_ERR</title>
+ <creator>Philippe Le Hégaret</creator>
+ <contributor>Bob Clary</contributor>
+ <description>
+ Test if XPathExpression.evaluate properly throws NOT_SUPPORTED_ERROR
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathExpression-evaluate"/>
+ </metadata>
+
+ <var name='doc' type='Document'/>
+ <var name='xpEvaluator' type='XPathEvaluator'/>
+ <var name="result" type="XPathResult"/>
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="nullResult" type="XPathResult" isNull="true"/>
+ <var name="contextNode" type="Node"/>
+ <var name="xpathExpression" type="XPathExpression"/>
+
+ <load var='doc' href='staffNS' willBeModified='false'/>
+
+ <createXPathEvaluator var='xpEvaluator' document='doc'/>
+
+ <createExpression interface="XPathEvaluator"
+ obj='xpEvaluator'
+ var='xpathExpression'
+ expression='&quot;//foo&quot;'
+ resolver='nullNSResolver'
+ />
+
+ <createEntityReference var="contextNode" obj="doc" name="&quot;entityname&quot;"/>
+
+ <assertDOMException id="throw_NOT_SUPPORTED_ERR">
+ <NOT_SUPPORTED_ERR>
+ <evaluate interface="XPathExpression"
+ obj='xpathExpression'
+ var='result'
+ contextNode='contextNode'
+ type='0'
+ result='nullResult'/>
+ </NOT_SUPPORTED_ERR>
+
+ </assertDOMException>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathExpression_evaluate_WRONG_DOCUMENT_ERR.xml b/test/testcases/tests/level3/xpath/XPathExpression_evaluate_WRONG_DOCUMENT_ERR.xml
new file mode 100644
index 0000000..4b7f790
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathExpression_evaluate_WRONG_DOCUMENT_ERR.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathExpression_evaluate_WRONG_DOCUMENT_ERR">
+ <metadata>
+ <title>XPathExpression_evaluate_WRONG_DOCUMENT_ERR</title>
+ <creator>Philippe Le Hégaret</creator>
+ <contributor>Bob Clary</contributor>
+ <description>
+ Test if XPathExpression.evaluate properly throws WRONG_DOCUMENT_ERROR
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathExpression-evaluate"/>
+ </metadata>
+
+ <var name='doc1' type='Document'/>
+ <var name='doc2' type='Document'/>
+ <var name='xpEvaluator' type='XPathEvaluator'/>
+ <var name="root" type='Element'/>
+ <var name="result" type="XPathResult"/>
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="nullResult" type="XPathResult" isNull="true"/>
+ <var name="xpathExpression" type="XPathExpression"/>
+
+ <load var='doc1' href='staffNS' willBeModified='false'/>
+ <load var='doc2' href='staff' willBeModified='false'/>
+
+ <createXPathEvaluator var='xpEvaluator' document='doc1'/>
+
+ <createExpression interface="XPathEvaluator"
+ obj='xpEvaluator'
+ var='xpathExpression'
+ expression='&quot;//foo&quot;'
+ resolver='nullNSResolver'
+ />
+
+ <documentElement obj='doc2' var='root'/>
+
+ <assertDOMException id="throw_WRONG_DOCUMENT_ERR">
+ <WRONG_DOCUMENT_ERR>
+ <evaluate interface="XPathExpression"
+ obj='xpathExpression'
+ var='result'
+ contextNode='root'
+ type='0'
+ result='nullResult'/>
+ </WRONG_DOCUMENT_ERR>
+
+ </assertDOMException>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathExpression_evaluate_document.xml b/test/testcases/tests/level3/xpath/XPathExpression_evaluate_document.xml
new file mode 100644
index 0000000..9892982
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathExpression_evaluate_document.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathExpression_evaluate_document">
+ <metadata>
+ <title>XPathExpression_evaluate_document</title>
+ <creator>Philippe Le Hégaret</creator>
+ <description>
+ Test if XPathExpression.evaluate returns non-null result
+ using Document as contextNode.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathExpression-evaluate"/>
+ </metadata>
+ &vars;
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="contextNode" type='Element'/>
+ <var name="xpathResult" type="XPathResult"/>
+ <var name="nullResult" type="XPathResult" isNull="true"/>
+ <var name="xpathExpression" type="XPathExpression"/>
+ <var name="expression" type="DOMString" value="&quot;/&quot;"/>
+
+ &findXPathEvaluator;
+
+ <assign value='doc' var='contextNode'/>
+
+ <createExpression interface="XPathEvaluator"
+ obj='xpEvaluator'
+ var='xpathExpression'
+ expression='expression'
+ resolver='nullNSResolver'
+ />
+
+ <evaluate interface="XPathExpression"
+ obj='xpathExpression'
+ var='xpathResult'
+ contextNode='contextNode'
+ type='0'
+ result='nullResult'/>
+
+ <assertNotNull actual="xpathResult" id="notnull"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathExpression_evaluate_documentElement.xml b/test/testcases/tests/level3/xpath/XPathExpression_evaluate_documentElement.xml
new file mode 100644
index 0000000..f022664
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathExpression_evaluate_documentElement.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathExpression_evaluate_documentElement">
+ <metadata>
+ <title>XPathExpression_evaluate_documentElement</title>
+ <creator>Philippe Le Hégaret</creator>
+ <creator>Bob Clary</creator>
+ <description>
+ Test if XPathExpression.evaluate returns non-null result
+ using Document.documentElement as contextNode.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathExpression-evaluate"/>
+ <subject resource="&spec;#XPathEvaluator-createExpression"/>
+ </metadata>
+
+ &vars;
+
+ <var name="nullNSResolver" type="XPathNSResolver" isNull="true"/>
+ <var name="contextNode" type='Element'/>
+ <var name="xpathResult" type="XPathResult"/>
+ <var name="nullResult" type="XPathResult" isNull="true"/>
+ <var name="xpathExpression" type="XPathExpression"/>
+ <var name="expression" type="DOMString" value="&quot;/&quot;"/>
+
+ &findXPathEvaluator;
+
+ <documentElement obj='doc' var='contextNode'/>
+
+ <createExpression interface="XPathEvaluator"
+ obj='xpEvaluator'
+ var='xpathExpression'
+ expression='expression'
+ resolver='nullNSResolver'
+ />
+
+ <evaluate interface="XPathExpression"
+ obj='xpathExpression'
+ var='xpathResult'
+ contextNode='contextNode'
+ type='0'
+ result='nullResult'/>
+
+ <assertNotNull actual="xpathResult" id="notnull"/>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_nist_dmstc.xml b/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_nist_dmstc.xml
new file mode 100644
index 0000000..7467381
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_nist_dmstc.xml
@@ -0,0 +1,119 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathNSResolver_lookupNamespaceURI_nist_dmstc">
+ <metadata>
+ <title>XPathNSResolver_lookupNamespaceURI_nist_dmstc</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Interate over all employee elements with xmlns:dmstc attribute
+ in the test document, creating nsresolvers checking that
+ for all children the prefix 'nist' resolves to
+ http://www.nist.gov and that prefix 'dmstc' resolves to the same
+ value as employee.getAttribute('xmlns:dmstc').
+ </description>
+ <date qualifier="created">2003-12-09</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathNSResolver-lookupNamespaceURI"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+
+ <!-- Test Variables -->
+
+ <var name="lookupNamespaceURI" type="DOMString"/>
+ <var name="namespaceURI" type="DOMString"/>
+ <var name="child" type="Element"/>
+ <var name="children" type="NodeList"/>
+ <var name="employee" type="Element"/>
+ <var name="employees" type="NodeList"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staffNS" willBeModified="false"/>
+
+ <getElementsByTagNameNS obj="doc"
+ interface="Document"
+ var="employees"
+ namespaceURI="&quot;*&quot;"
+ localName="&quot;employee&quot;"
+ />
+
+ <createXPathEvaluator var='evaluator'
+ document='doc'/>
+
+
+ <for-each member="employee"
+ collection="employees">
+
+
+ <getAttribute obj="employee"
+ interface="Element"
+ name="&quot;xmlns:dmstc&quot;"
+ var="namespaceURI"
+ />
+
+ <getElementsByTagNameNS obj="employee"
+ interface="Element"
+ var="children"
+ namespaceURI="&quot;*&quot;"
+ localName="&quot;*&quot;"
+ />
+
+ <for-each member="child"
+ collection="children">
+
+ <createNSResolver obj="evaluator"
+ var="resolver"
+ nodeResolver="child"
+ />
+
+ <lookupNamespaceURI obj="resolver"
+ interface="XPathNSResolver"
+ var="lookupNamespaceURI"
+ prefix="&quot;dmstc&quot;"
+ />
+
+ <assertEquals id="dmstcequal"
+ actual="lookupNamespaceURI"
+ expected="namespaceURI"
+ ignoreCase="false"
+ />
+
+ <lookupNamespaceURI obj="resolver"
+ interface="XPathNSResolver"
+ var="lookupNamespaceURI"
+ prefix="&quot;nist&quot;"
+ />
+
+ <assertEquals id="nistequal"
+ actual="lookupNamespaceURI"
+ expected="&quot;http://www.nist.gov&quot;"
+ ignoreCase="false"
+ />
+ </for-each>
+
+ </for-each>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_null.xml b/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_null.xml
new file mode 100644
index 0000000..b628bfa
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_null.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2004 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathNSResolver_lookupNamespaceURI_null">
+ <metadata>
+ <title>XPathNSResolver_lookupNamespaceURI_null</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Iterate over all elements in the test document, creating
+ nsresolvers checking that looking up non-existent prefixes
+ always returns null.
+ </description>
+ <date qualifier="created">2004-12-09</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathNSResolver-lookupNamespaceURI"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+
+ <!-- Test Variables -->
+
+ <var name="element" type="Element"/>
+ <var name="elements" type="NodeList"/>
+ <var name="lookupNamespaceURI" type="DOMString"/>
+ <var name="namespaceURI" type="DOMString"/>
+ <var name="prefix" type="DOMString"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staffNS" willBeModified="false"/>
+
+ <!-- Test Body -->
+
+ <getElementsByTagNameNS obj="doc"
+ interface="Document"
+ var="elements"
+ namespaceURI="&quot;*&quot;"
+ localName="&quot;*&quot;"
+ />
+
+ <createXPathEvaluator var='evaluator'
+ document='doc'/>
+
+
+ <for-each member="element"
+ collection="elements">
+
+
+ <createNSResolver obj="evaluator"
+ var="resolver"
+ nodeResolver="element"
+ />
+
+ <lookupNamespaceURI obj="resolver"
+ interface="XPathNSResolver"
+ var="lookupNamespaceURI"
+ prefix="&quot;foobar&quot;"
+ />
+
+ <assertNull id="notnull"
+ actual="lookupNamespaceURI"
+ />
+ </for-each>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_prefix.xml b/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_prefix.xml
new file mode 100644
index 0000000..e682843
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_prefix.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathNSResolver_lookupNamespaceURI_prefix">
+ <metadata>
+ <title>XPathNSResolver_lookupNamespaceURI_prefix</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Iterate over all Elements in the test document, creating
+ nsresolvers checking that if the Element has a prefix, then
+ lookupNamespaceURI returns the same value as Element.namespaceURI
+ </description>
+ <date qualifier="created">2003-12-09</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathNSResolver-lookupNamespaceURI"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+
+ <!-- Test Variables -->
+
+ <var name="element" type="Element"/>
+ <var name="elements" type="NodeList"/>
+ <var name="lookupNamespaceURI" type="DOMString"/>
+ <var name="namespaceURI" type="DOMString"/>
+ <var name="prefix" type="DOMString"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staffNS" willBeModified="false"/>
+
+ <!-- Test Body -->
+
+ <getElementsByTagNameNS obj="doc"
+ interface="Document"
+ var="elements"
+ namespaceURI="&quot;*&quot;"
+ localName="&quot;*&quot;"
+ />
+
+ <createXPathEvaluator var='evaluator'
+ document='doc'/>
+
+
+ <for-each member="element"
+ collection="elements">
+
+ <prefix obj="element"
+ var="prefix"/>
+
+ <if>
+ <notNull obj="prefix"/>
+
+ <createNSResolver obj="evaluator"
+ var="resolver"
+ nodeResolver="element"
+ />
+
+ <namespaceURI obj="element"
+ interface="Node"
+ var="namespaceURI"
+ />
+
+ <lookupNamespaceURI obj="resolver"
+ interface="XPathNSResolver"
+ var="lookupNamespaceURI"
+ prefix="prefix"
+ />
+
+ <assertEquals id="equal"
+ actual="namespaceURI"
+ expected="lookupNamespaceURI"
+ ignoreCase="false"
+ />
+ </if>
+ </for-each>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_xml.xml b/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_xml.xml
new file mode 100644
index 0000000..a060439
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathNSResolver_lookupNamespaceURI_xml.xml
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathNSResolver_lookupNamespaceURI_xml">
+ <metadata>
+ <title>XPathNSResolver_lookupNamespaceURI_xml</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Iterate over all elements in the test document, creating
+ nsresolvers checking that looking up the xml prefix returns
+ http://www.w3.org/XML/1998/namespace.
+ </description>
+ <date qualifier="created">2003-12-09</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathNSResolver-lookupNamespaceURI"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+
+ <!-- Test Variables -->
+
+ <var name="element" type="Element"/>
+ <var name="elements" type="NodeList"/>
+ <var name="lookupNamespaceURI" type="DOMString"/>
+ <var name="namespaceURI" type="DOMString"/>
+ <var name="prefix" type="DOMString"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staffNS" willBeModified="false"/>
+
+ <!-- Test Body -->
+
+ <getElementsByTagNameNS obj="doc"
+ interface="Document"
+ var="elements"
+ namespaceURI="&quot;*&quot;"
+ localName="&quot;*&quot;"
+ />
+
+ <createXPathEvaluator var='evaluator'
+ document='doc'/>
+
+
+ <for-each member="element"
+ collection="elements">
+
+
+ <createNSResolver obj="evaluator"
+ var="resolver"
+ nodeResolver="element"
+ />
+
+ <lookupNamespaceURI obj="resolver"
+ interface="XPathNSResolver"
+ var="lookupNamespaceURI"
+ prefix="&quot;xml&quot;"
+ />
+
+ <assertEquals id="equal"
+ actual="lookupNamespaceURI"
+ expected="&quot;http://www.w3.org/XML/1998/namespace&quot;"
+ ignoreCase="false"
+ />
+ </for-each>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_TYPE_ERR.xml b/test/testcases/tests/level3/xpath/XPathResult_TYPE_ERR.xml
new file mode 100644
index 0000000..29cae68
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_TYPE_ERR.xml
@@ -0,0 +1,457 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_TYPE_ERR">
+ <metadata>
+ <title>XPathResult_TYPE_ERR</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult for the expression /staff/employee
+ for each type of XPathResultType, checking that TYPE_ERR
+ is thrown when inappropriate properties and methods are accessed.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#TYPE_ERR"/>
+ <subject resource="&spec;#XPathException"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathResult-resultType"/>
+ <subject resource="&spec;#XPathResult-booleanValue"/>
+ <subject resource="&spec;#XPathResult-numberValue"/>
+ <subject resource="&spec;#XPathResult-singleNodeValue"/>
+ <subject resource="&spec;#XPathResult-snapshot-length"/>
+ <subject resource="&spec;#XPathResult-stringValue"/>
+ <subject resource="&spec;#XPathResult-iterateNext"/>
+ <subject resource="&spec;#XPathResult-snapshotItem"/>
+ </metadata>
+
+ <var name="doc" type="Document"/>
+ <var name="resolver" type="XPathNSResolver"/>
+ <var name="evaluator" type="XPathEvaluator"/>
+ <var name="expression" type="DOMString"
+ value="&quot;/staff/employee&quot;"/>
+ <var name="contextNode" type="Node"/>
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+ <var name="inNodeType" type="short"/>
+ <var name="outNodeType" type="short"/>
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="booleanValue" type="boolean"/>
+ <var name="shortValue" type="short"/>
+ <var name="intValue" type="int"/>
+ <var name="doubleValue" type="double"/>
+ <var name="nodeValue" type="Node"/>
+ <var name="stringValue" type="DOMString"/>
+
+ <var name="nodeTypeList" type="List">
+ <member type="short">0</member>
+ <member type="short">1</member>
+ <member type="short">2</member>
+ <member type="short">3</member>
+ <member type="short">4</member>
+ <member type="short">5</member>
+ <member type="short">6</member>
+ <member type="short">7</member>
+ <member type="short">8</member>
+ <member type="short">9</member>
+ </var>
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <for-each collection="nodeTypeList" member="inNodeType">
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="inNodeType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <resultType obj="outresult"
+ var="outNodeType"/>
+
+ <if>
+ <equals expected="outNodeType" actual="NUMBER_TYPE"/>
+ <assertXPathException id="number_booleanValue_TYPE_ERR">
+ <TYPE_ERR>
+ <booleanValue obj="outresult"
+ var="booleanValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="number_singleNodeValue_TYPE_ERR">
+ <TYPE_ERR>
+ <singleNodeValue obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="number_snapshotLength_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotLength obj="outresult"
+ var="intValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="number_stringValue_TYPE_ERR">
+ <TYPE_ERR>
+ <stringValue obj="outresult"
+ var="stringValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="number_iterateNext_TYPE_ERR">
+ <TYPE_ERR>
+ <iterateNext obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="number_snapshotItem_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotItem obj="outresult"
+ var="nodeValue"
+ index="0"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ </if>
+ <if>
+ <equals expected="outNodeType" actual="STRING_TYPE"/>
+ <assertXPathException id="string_booleanValue_TYPE_ERR">
+ <TYPE_ERR>
+ <booleanValue obj="outresult"
+ var="booleanValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="string_numberValue_TYPE_ERR">
+ <TYPE_ERR>
+ <numberValue obj="outresult"
+ var="doubleValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="string_singleNodeValue_TYPE_ERR">
+ <TYPE_ERR>
+ <singleNodeValue obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="string_snapshotLength_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotLength obj="outresult"
+ var="intValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="string_iterateNext_TYPE_ERR">
+ <TYPE_ERR>
+ <iterateNext obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="string_snapshotItem_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotItem obj="outresult"
+ var="nodeValue"
+ index="0"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ </if>
+ <if>
+ <equals expected="outNodeType" actual="BOOLEAN_TYPE"/>
+ <assertXPathException id="boolean_numberValue_TYPE_ERR">
+ <TYPE_ERR>
+ <numberValue obj="outresult"
+ var="doubleValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="boolean_singleNodeValue_TYPE_ERR">
+ <TYPE_ERR>
+ <singleNodeValue obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="boolean_snapshotLength_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotLength obj="outresult"
+ var="intValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="boolean_stringValue_TYPE_ERR">
+ <TYPE_ERR>
+ <stringValue obj="outresult"
+ var="stringValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="boolean_iterateNext_TYPE_ERR">
+ <TYPE_ERR>
+ <iterateNext obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="boolean_snapshotItem_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotItem obj="outresult"
+ var="nodeValue"
+ index="0"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ </if>
+ <if>
+ <equals expected="outNodeType" actual="UNORDERED_NODE_ITERATOR_TYPE"/>
+ <assertXPathException id="unordered_node_iterator_booleanValue_TYPE_ERR">
+ <TYPE_ERR>
+ <booleanValue obj="outresult"
+ var="booleanValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="unordered_node_iterator_numberValue_TYPE_ERR">
+ <TYPE_ERR>
+ <numberValue obj="outresult"
+ var="doubleValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="unordered_node_iterator_singleNodeValue_TYPE_ERR">
+ <TYPE_ERR>
+ <singleNodeValue obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="unordered_node_iterator_snapshotLength_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotLength obj="outresult"
+ var="intValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="unordered_node_iterator_stringValue_TYPE_ERR">
+ <TYPE_ERR>
+ <stringValue obj="outresult"
+ var="stringValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="unordered_node_iterator_snapshotItem_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotItem obj="outresult"
+ var="nodeValue"
+ index="0"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ </if>
+ <if>
+ <equals expected="outNodeType" actual="ORDERED_NODE_ITERATOR_TYPE"/>
+ <assertXPathException id="ordered_node_iterator_booleanValue_TYPE_ERR">
+ <TYPE_ERR>
+ <booleanValue obj="outresult"
+ var="booleanValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="ordered_node_iterator_numberValue_TYPE_ERR">
+ <TYPE_ERR>
+ <numberValue obj="outresult"
+ var="doubleValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="ordered_node_iterator_singleNodeValue_TYPE_ERR">
+ <TYPE_ERR>
+ <singleNodeValue obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="ordered_node_iterator_snapshotLength_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotLength obj="outresult"
+ var="intValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="ordered_node_iterator_stringValue_TYPE_ERR">
+ <TYPE_ERR>
+ <stringValue obj="outresult"
+ var="stringValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="ordered_node_iterator_snapshotItem_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotItem obj="outresult"
+ var="nodeValue"
+ index="0"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ </if>
+ <if>
+ <equals expected="outNodeType" actual="UNORDERED_NODE_SNAPSHOT_TYPE"/>
+ <assertXPathException id="unordered_node_snapshot_booleanValue_TYPE_ERR">
+ <TYPE_ERR>
+ <booleanValue obj="outresult"
+ var="booleanValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="unordered_node_snapshot_numberValue_TYPE_ERR">
+ <TYPE_ERR>
+ <numberValue obj="outresult"
+ var="doubleValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="unordered_node_snapshot_singleNodeValue_TYPE_ERR">
+ <TYPE_ERR>
+ <singleNodeValue obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="unordered_node_snapshot_stringValue_TYPE_ERR">
+ <TYPE_ERR>
+ <stringValue obj="outresult"
+ var="stringValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="unordered_node_snapshot_iterateNext_TYPE_ERR">
+ <TYPE_ERR>
+ <iterateNext obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ </if>
+ <if>
+ <equals expected="outNodeType" actual="ORDERED_NODE_SNAPSHOT_TYPE"/>
+ <assertXPathException id="ordered_node_snapshot_booleanValue_TYPE_ERR">
+ <TYPE_ERR>
+ <booleanValue obj="outresult"
+ var="booleanValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="ordered_node_snapshot_numberValue_TYPE_ERR">
+ <TYPE_ERR>
+ <numberValue obj="outresult"
+ var="doubleValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="ordered_node_snapshot_singleNodeValue_TYPE_ERR">
+ <TYPE_ERR>
+ <singleNodeValue obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="ordered_node_snapshot_stringValue_TYPE_ERR">
+ <TYPE_ERR>
+ <stringValue obj="outresult"
+ var="stringValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="ordered_node_snapshot_iterateNext_TYPE_ERR">
+ <TYPE_ERR>
+ <iterateNext obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ </if>
+ <if>
+ <equals expected="outNodeType" actual="ANY_UNORDERED_NODE_TYPE"/>
+ <assertXPathException id="any_unordered_node_booleanValue_TYPE_ERR">
+ <TYPE_ERR>
+ <booleanValue obj="outresult"
+ var="booleanValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="any_unordered_node_numberValue_TYPE_ERR">
+ <TYPE_ERR>
+ <numberValue obj="outresult"
+ var="doubleValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="any_unordered_node_snapshotLength_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotLength obj="outresult"
+ var="intValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="any_unordered_node_stringValue_TYPE_ERR">
+ <TYPE_ERR>
+ <stringValue obj="outresult"
+ var="stringValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="any_unordered_node_iterateNext_TYPE_ERR">
+ <TYPE_ERR>
+ <iterateNext obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="any_unordered_node_snapshotItem_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotItem obj="outresult"
+ var="nodeValue"
+ index="0"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ </if>
+ <if>
+ <equals expected="outNodeType" actual="FIRST_ORDERED_NODE_TYPE"/>
+ <assertXPathException id="first_ordered_node_booleanValue_TYPE_ERR">
+ <TYPE_ERR>
+ <booleanValue obj="outresult"
+ var="booleanValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="first_ordered_node_numberValue_TYPE_ERR">
+ <TYPE_ERR>
+ <numberValue obj="outresult"
+ var="doubleValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="first_ordered_node_snapshotLength_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotLength obj="outresult"
+ var="intValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="first_ordered_node_stringValue_TYPE_ERR">
+ <TYPE_ERR>
+ <stringValue obj="outresult"
+ var="stringValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="first_ordered_node_iterateNext_TYPE_ERR">
+ <TYPE_ERR>
+ <iterateNext obj="outresult"
+ var="nodeValue"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ <assertXPathException id="first_ordered_node_snapshotItem_TYPE_ERR">
+ <TYPE_ERR>
+ <snapshotItem obj="outresult"
+ var="nodeValue"
+ index="0"/>
+ </TYPE_ERR>
+ </assertXPathException>
+ </if>
+
+ </for-each>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_booleanValue_false.xml b/test/testcases/tests/level3/xpath/XPathResult_booleanValue_false.xml
new file mode 100644
index 0000000..bb513f0
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_booleanValue_false.xml
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_booleanValue_false">
+ <metadata>
+ <title>XPathResult_booleanValue_false</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create BOOLEAN_TYPE XPathResult matching /staff/workerbee,
+ checking that XPathResult.booleanValue == false
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResult-booleanValue"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/workerbee&quot;"/>
+ <var name="xpathType" type="short" value="BOOLEAN_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+ <var name="nodeType" type="int"/>
+ <var name="parent" type="Node"/>
+ <var name="owner" type="Node"/>
+ <var name="ownerType" type="int"/>
+ <var name="booleanValue" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <booleanValue obj="outresult"
+ var="booleanValue"
+ />
+
+ <assertFalse id="false"
+ actual="booleanValue"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_booleanValue_true.xml b/test/testcases/tests/level3/xpath/XPathResult_booleanValue_true.xml
new file mode 100644
index 0000000..ad52246
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_booleanValue_true.xml
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_booleanValue_true">
+ <metadata>
+ <title>XPathResult_booleanValue_true</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create BOOLEAN_TYPE XPathResult matching /staff/employee,
+ checking that XPathResult.booleanValue == true
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResult-booleanValue"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="BOOLEAN_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+ <var name="nodeType" type="int"/>
+ <var name="parent" type="Node"/>
+ <var name="owner" type="Node"/>
+ <var name="ownerType" type="int"/>
+ <var name="booleanValue" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <booleanValue obj="outresult"
+ var="booleanValue"
+ />
+
+ <assertTrue id="true"
+ actual="booleanValue"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ANY_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ANY_TYPE.xml
new file mode 100644
index 0000000..5a19d48
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ANY_TYPE.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_invalidIteratorState_ANY_TYPE">
+ <metadata>
+ <title>XPathResult_invalidIteratorState_ANY_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a ANY_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that iterator XPathResults
+ are invalidated XPathResult.invalidIteratorState == true.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult-invalid-iterator-state"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="ANY_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+ <var name="invalidIteratorState" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertTrue id="true"
+ actual="invalidIteratorState"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ANY_UNORDERED_NODE_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ANY_UNORDERED_NODE_TYPE.xml
new file mode 100644
index 0000000..83ad159
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ANY_UNORDERED_NODE_TYPE.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_invalidIteratorState_ANY_UNORDERED_NODE_TYPE">
+ <metadata>
+ <title>XPathResult_invalidIteratorState_ANY_UNORDERED_NODE_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a ANY_UNORDERED_NODE_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that iterator XPathResults
+ are not invalidated XPathResult.invalidIteratorState == false.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult-invalid-iterator-state"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="ANY_UNORDERED_NODE_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+ <var name="invalidIteratorState" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertFalse id="false"
+ actual="invalidIteratorState"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_BOOLEAN_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_BOOLEAN_TYPE.xml
new file mode 100644
index 0000000..09679ed
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_BOOLEAN_TYPE.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_invalidIteratorState_BOOLEAN_TYPE">
+ <metadata>
+ <title>XPathResult_invalidIteratorState_BOOLEAN_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a BOOLEAN_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that iterator XPathResults
+ are not invalidated XPathResult.invalidIteratorState == false.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult-invalid-iterator-state"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="BOOLEAN_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+ <var name="invalidIteratorState" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertFalse id="false"
+ actual="invalidIteratorState"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_FIRST_ORDERED_NODE_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_FIRST_ORDERED_NODE_TYPE.xml
new file mode 100644
index 0000000..99931f4
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_FIRST_ORDERED_NODE_TYPE.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_invalidIteratorState_FIRST_ORDERED_NODE_TYPE">
+ <metadata>
+ <title>XPathResult_invalidIteratorState_FIRST_ORDERED_NODE_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a FIRST_ORDERED_NODE_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that iterator XPathResults
+ are not invalidated XPathResult.invalidIteratorState == false.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult-invalid-iterator-state"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="FIRST_ORDERED_NODE_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+ <var name="invalidIteratorState" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertFalse id="false"
+ actual="invalidIteratorState"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_NUMBER_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_NUMBER_TYPE.xml
new file mode 100644
index 0000000..f845eb3
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_NUMBER_TYPE.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_invalidIteratorState_NUMBER_TYPE">
+ <metadata>
+ <title>XPathResult_invalidIteratorState_NUMBER_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a NUMBER_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that iterator XPathResults
+ are not invalidated XPathResult.invalidIteratorState == false.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult-invalid-iterator-state"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="NUMBER_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+ <var name="invalidIteratorState" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertFalse id="false"
+ actual="invalidIteratorState"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ORDERED_NODE_ITERATOR_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ORDERED_NODE_ITERATOR_TYPE.xml
new file mode 100644
index 0000000..9da142c
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ORDERED_NODE_ITERATOR_TYPE.xml
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_invalidIteratorState_ORDERED_NODE_ITERATOR_TYPE">
+ <metadata>
+ <title>XPathResult_invalidIteratorState_ORDERED_NODE_ITERATOR_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a ORDERED_NODE_ITERATOR_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that iterator XPathResults
+ are invalidated XPathResult.invalidIteratorState == true.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult-invalid-iterator-state"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="ORDERED_NODE_ITERATOR_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+ <var name="invalidIteratorState" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertFalse id="false"
+ actual="invalidIteratorState"
+ />
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertTrue id="true"
+ actual="invalidIteratorState"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ORDERED_NODE_SNAPSHOT_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ORDERED_NODE_SNAPSHOT_TYPE.xml
new file mode 100644
index 0000000..ed41282
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_ORDERED_NODE_SNAPSHOT_TYPE.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_invalidIteratorState_ORDERED_NODE_SNAPSHOT_TYPE">
+ <metadata>
+ <title>XPathResult_invalidIteratorState_ORDERED_NODE_SNAPSHOT_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a ORDERED_NODE_SNAPSHOT_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that iterator XPathResults
+ are not invalidated XPathResult.invalidIteratorState == false.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult-invalid-iterator-state"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="ORDERED_NODE_SNAPSHOT_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+ <var name="invalidIteratorState" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertFalse id="false"
+ actual="invalidIteratorState"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_STRING_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_STRING_TYPE.xml
new file mode 100644
index 0000000..5348d82
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_STRING_TYPE.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_invalidIteratorState_STRING_TYPE">
+ <metadata>
+ <title>XPathResult_invalidIteratorState_STRING_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a STRING_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that iterator XPathResults
+ are not invalidated XPathResult.invalidIteratorState == false.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult-invalid-iterator-state"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="STRING_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+ <var name="invalidIteratorState" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertFalse id="false"
+ actual="invalidIteratorState"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_UNORDERED_NODE_ITERATOR_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_UNORDERED_NODE_ITERATOR_TYPE.xml
new file mode 100644
index 0000000..92c0a36
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_UNORDERED_NODE_ITERATOR_TYPE.xml
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_invalidIteratorState_UNORDERED_NODE_ITERATOR_TYPE">
+ <metadata>
+ <title>XPathResult_invalidIteratorState_UNORDERED_NODE_ITERATOR_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a UNORDERED_NODE_ITERATOR_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that iterator XPathResults
+ are invalidated XPathResult.invalidIteratorState == true.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult-invalid-iterator-state"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="UNORDERED_NODE_ITERATOR_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+ <var name="invalidIteratorState" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertFalse id="false"
+ actual="invalidIteratorState"
+ />
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertTrue id="true"
+ actual="invalidIteratorState"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_UNORDERED_NODE_SNAPSHOT_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_UNORDERED_NODE_SNAPSHOT_TYPE.xml
new file mode 100644
index 0000000..f4c02d5
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_invalidIteratorState_UNORDERED_NODE_SNAPSHOT_TYPE.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_invalidIteratorState_UNORDERED_NODE_SNAPSHOT_TYPE">
+ <metadata>
+ <title>XPathResult_invalidIteratorState_UNORDERED_NODE_SNAPSHOT_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a UNORDERED_NODE_SNAPSHOT_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that iterator XPathResults
+ are not invalidated XPathResult.invalidIteratorState == false.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult-invalid-iterator-state"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="UNORDERED_NODE_SNAPSHOT_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+ <var name="invalidIteratorState" type="boolean"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <invalidIteratorState obj="outresult"
+ var="invalidIteratorState"
+ />
+
+ <assertFalse id="false"
+ actual="invalidIteratorState"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_iterateNext_INVALID_STATE_ERR.xml b/test/testcases/tests/level3/xpath/XPathResult_iterateNext_INVALID_STATE_ERR.xml
new file mode 100644
index 0000000..cfec132
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_iterateNext_INVALID_STATE_ERR.xml
@@ -0,0 +1,113 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_iterateNext_INVALID_STATE_ERR">
+ <metadata>
+ <title>XPathResult_iterateNext_INVALID_STATE_ERR</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a ANY_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that XPathResults.iterateNext
+ throws DOMException INVALID_STATE_ERR.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathEvaluator"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathNSResolver"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResult-iterateNext"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="ANY_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+ <var name="nodeType" type="int"/>
+ <var name="parent" type="Node"/>
+ <var name="owner" type="Node"/>
+ <var name="ownerType" type="int"/>
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <!-- Test Body -->
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <assertDOMException id="throw_INVALID_STATE_ERR">
+ <INVALID_STATE_ERR>
+ <iterateNext var="outNode" obj="outresult"/>
+ </INVALID_STATE_ERR>
+ </assertDOMException>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_iteratorNext_ORDERED_NODE_ITERATOR_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_iteratorNext_ORDERED_NODE_ITERATOR_TYPE.xml
new file mode 100644
index 0000000..3a41bfd
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_iteratorNext_ORDERED_NODE_ITERATOR_TYPE.xml
@@ -0,0 +1,160 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_iteratorNext_ORDERED_NODE_ITERATOR_TYPE">
+ <metadata>
+ <title>XPathResult_iteratorNext_ORDERED_NODE_ITERATOR_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult ORDERED_NODE_ITERATOR_TYPE XPathResultType for
+ expression /staff/employee/employeeId/text() checking that:
+ XPathResult.iteratorNext returns the nodes in document order,
+ and that the correct number is returned.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult-iteratorNext"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee/employeeId/text()&quot;"/>
+ <var name="xpathType" type="short" value="ORDERED_NODE_ITERATOR_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+ <var name="index" type="int"/>
+ <var name="text" type="DOMString" />
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <assign var="index"
+ value="0"
+ />
+
+ <iterateNext var="outNode" obj="outresult"/>
+ <while>
+ <notNull obj="outNode"/>
+
+ <data obj="outNode"
+ interface="CharacterData"
+ var="text"
+ />
+
+ <if><equals actual="index" expected="0" />
+
+ <assertEquals id="first"
+ actual="text"
+ expected="&quot;EMP0001&quot;"
+ ignoreCase="false"
+ />
+ </if>
+
+ <if><equals actual="index" expected="1" />
+
+ <assertEquals id="second"
+ actual="text"
+ expected="&quot;EMP0002&quot;"
+ ignoreCase="false"
+ />
+ </if>
+
+ <if><equals actual="index" expected="2" />
+
+ <assertEquals id="third"
+ actual="text"
+ expected="&quot;EMP0003&quot;"
+ ignoreCase="false"
+ />
+ </if>
+
+ <if><equals actual="index" expected="3" />
+
+ <assertEquals id="fourth"
+ actual="text"
+ expected="&quot;EMP0004&quot;"
+ ignoreCase="false"
+ />
+ </if>
+
+ <if><equals actual="index" expected="4" />
+
+ <assertEquals id="fifth"
+ actual="text"
+ expected="&quot;EMP0005&quot;"
+ ignoreCase="false"
+ />
+ </if>
+
+ <increment var="index"
+ value="1"
+ />
+
+ <iterateNext var="outNode" obj="outresult"/>
+
+ </while>
+
+ <assertEquals id="count"
+ actual="index"
+ expected="5"
+ ignoreCase="false"
+ />
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_iteratorNext_UNORDERED_NODE_ITERATOR_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_iteratorNext_UNORDERED_NODE_ITERATOR_TYPE.xml
new file mode 100644
index 0000000..ff0629b
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_iteratorNext_UNORDERED_NODE_ITERATOR_TYPE.xml
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_iteratorNext_UNORDERED_NODE_ITERATOR_TYPE">
+ <metadata>
+ <title>XPathResult_iteratorNext_UNORDERED_NODE_ITERATOR_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult UNORDERED_NODE_ITERATOR_TYPE XPathResultType for
+ expression /staff/employee/employeeId/text() checking that:
+ XPathResult.iteratorNext contains the correct number of nodes.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult-iteratorNext"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee/employeeId/text()&quot;"/>
+ <var name="xpathType" type="short" value="UNORDERED_NODE_ITERATOR_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+ <var name="nodeType" type="int"/>
+ <var name="parent" type="Node"/>
+ <var name="owner" type="Node"/>
+ <var name="ownerType" type="int"/>
+ <var name="index" type="int"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <assign var="index"
+ value="0"
+ />
+
+ <iterateNext var="outNode" obj="outresult"/>
+ <while>
+ <notNull obj="outNode"/>
+
+ <increment var="index"
+ value="1"
+ />
+
+ <iterateNext var="outNode" obj="outresult"/>
+
+ </while>
+
+ <assertEquals id="count"
+ actual="index"
+ expected="4"
+ ignoreCase="false"
+ />
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_numberValue.xml b/test/testcases/tests/level3/xpath/XPathResult_numberValue.xml
new file mode 100644
index 0000000..dd6a2ee
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_numberValue.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_numberValue">
+ <metadata>
+ <title>XPathResult_numberValue</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult NUMBER_VALUE XPathResultType for expression
+ /staff/employee/salary[text() = '56,000'] checking that the
+ XPathResult.numberValue == 56.0
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult-numberValue"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;substring-before(/staff/employee/salary[text() = '56,000'], ',')&quot;"/>
+ <var name="xpathType" type="short" value="NUMBER_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="numberValue" type="double"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <numberValue obj="outresult"
+ var="numberValue"
+ />
+
+ <assertEquals id="same"
+ actual="numberValue"
+ expected="56.0"
+ ignoreCase="false"
+ />
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_resultType.xml b/test/testcases/tests/level3/xpath/XPathResult_resultType.xml
new file mode 100644
index 0000000..05b4414
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_resultType.xml
@@ -0,0 +1,179 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_resultType">
+ <metadata>
+ <title>XPathResult_resultType</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult for the expression /staff/employee
+ for each type of XPathResultType, checking that the resultType
+ of the XPathResult matches the requested type.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ <subject resource="&spec;#XPathEvaluator-evaluate"/>
+ <subject resource="&spec;#XPathResult-resultType"/>
+ <subject resource="&spec;#XPathException"/>
+
+ </metadata>
+
+ <var name="doc" type="Document"/>
+ <var name="resolver" type="XPathNSResolver"/>
+ <var name="evaluator" type="XPathEvaluator"/>
+ <var name="expression" type="DOMString" value="&quot;/staff/employee&quot;"/>
+ <var name="contextNode" type="Node"/>
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+ <var name="inNodeType" type="short"/>
+ <var name="outNodeType" type="short"/>
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+ <var name="isTypeEqual" type="boolean"/>
+
+ <var name="nodeTypeList" type="List">
+ <member type="short">0</member>
+ <member type="short">1</member>
+ <member type="short">2</member>
+ <member type="short">3</member>
+ <member type="short">4</member>
+ <member type="short">5</member>
+ <member type="short">6</member>
+ <member type="short">7</member>
+ <member type="short">8</member>
+ <member type="short">9</member>
+ </var>
+
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <for-each collection="nodeTypeList" member="inNodeType">
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="inNodeType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <resultType obj="outresult"
+ var="outNodeType"/>
+
+ <if>
+ <equals expected="inNodeType" actual="ANY_TYPE"/>
+ <assertEquals id="ANY_TYPE_resulttype"
+ actual="outNodeType"
+ expected="UNORDERED_NODE_ITERATOR_TYPE"
+ ignoreCase="false"
+ />
+ </if>
+ <if>
+ <equals expected="inNodeType" actual="NUMBER_TYPE"/>
+ <assertEquals id="NUMBER_TYPE_resulttype"
+ actual="outNodeType"
+ expected="NUMBER_TYPE"
+ ignoreCase="false"
+ />
+ </if>
+ <if>
+ <equals expected="inNodeType" actual="STRING_TYPE"/>
+ <assertEquals id="STRING_TYPE_resulttype"
+ actual="outNodeType"
+ expected="STRING_TYPE"
+ ignoreCase="false"
+ />
+ </if>
+ <if>
+ <equals expected="inNodeType" actual="BOOLEAN_TYPE"/>
+ <assertEquals id="BOOLEAN_TYPE_resulttype"
+ actual="outNodeType"
+ expected="BOOLEAN_TYPE"
+ ignoreCase="false"
+ />
+ </if>
+ <if>
+ <equals expected="inNodeType" actual="UNORDERED_NODE_ITERATOR_TYPE"/>
+ <assertEquals id="UNORDERED_NODE_ITERATOR_TYPE_resulttype"
+ actual="outNodeType"
+ expected="UNORDERED_NODE_ITERATOR_TYPE"
+ ignoreCase="false"
+ />
+ </if>
+ <if>
+ <equals expected="inNodeType" actual="ORDERED_NODE_ITERATOR_TYPE"/>
+ <assertEquals id="ORDERED_NODE_ITERATOR_TYPE_resulttype"
+ actual="outNodeType"
+ expected="ORDERED_NODE_ITERATOR_TYPE"
+ ignoreCase="false"
+ />
+ </if>
+ <if>
+ <equals expected="inNodeType" actual="UNORDERED_NODE_SNAPSHOT_TYPE"/>
+ <assertEquals id="UNORDERED_NODE_SNAPSHOT_TYPE_resulttype"
+ actual="outNodeType"
+ expected="UNORDERED_NODE_SNAPSHOT_TYPE"
+ ignoreCase="false"
+ />
+ </if>
+ <if>
+ <equals expected="inNodeType" actual="ORDERED_NODE_SNAPSHOT_TYPE"/>
+ <assertEquals id="ORDERED_NODE_SNAPSHOT_TYPE_resulttype"
+ actual="outNodeType"
+ expected="ORDERED_NODE_SNAPSHOT_TYPE"
+ ignoreCase="false"
+ />
+ </if>
+ <if>
+ <equals expected="inNodeType" actual="ANY_UNORDERED_NODE_TYPE"/>
+ <assertEquals id="ANY_UNORDERED_NODE_TYPE_resulttype"
+ actual="outNodeType"
+ expected="ANY_UNORDERED_NODE_TYPE"
+ ignoreCase="false"
+ />
+ </if>
+ <if>
+ <equals expected="inNodeType" actual="FIRST_ORDERED_NODE_TYPE"/>
+ <assertEquals id="FIRST_ORDERED_NODE_TYPE_resulttype"
+ actual="outNodeType"
+ expected="FIRST_ORDERED_NODE_TYPE"
+ ignoreCase="false"
+ />
+ </if>
+
+ </for-each>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_singleNodeValue_ANY_UNORDERED_NODE_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_singleNodeValue_ANY_UNORDERED_NODE_TYPE.xml
new file mode 100644
index 0000000..dacbe43
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_singleNodeValue_ANY_UNORDERED_NODE_TYPE.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_singleNodeValue_ANY_UNORDERED_NODE_TYPE">
+ <metadata>
+ <title>XPathResult_singleNodeValue_ANY_UNORDERED_NODE_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create ANY_UNORDERED_NODE_TYPE XPathResult matching /staff/employee/employeeId,
+ checking that XPathResult.singleNodeValue matches.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee/employeeId&quot;"/>
+ <var name="xpathType" type="short" value="ANY_UNORDERED_NODE_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+ <var name="employeeId" type="Node"/>
+ <var name="localName" type="DOMString"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <singleNodeValue obj="outresult"
+ var="outNode"
+ />
+
+ <localName obj="outNode"
+ var="localName"
+ />
+
+ <assertEquals id="equals"
+ actual="localName"
+ expected="&quot;employeeId&quot;"
+ ignoreCase="false"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_singleNodeValue_FIRST_ORDERED_NODE_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_singleNodeValue_FIRST_ORDERED_NODE_TYPE.xml
new file mode 100644
index 0000000..67e497e
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_singleNodeValue_FIRST_ORDERED_NODE_TYPE.xml
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_singleNodeValue_FIRST_ORDERED_NODE_TYPE">
+ <metadata>
+ <title>XPathResult_singleNodeValue_FIRST_ORDERED_NODE_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create FIRST_ORDERED_NODE_TYPE XPathResult matching /staff/employee/employeeId/text(),
+ checking that XPathResult.singleNodeValue matches the first EMP0001.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee/employeeId/text()&quot;"/>
+ <var name="xpathType" type="short" value="FIRST_ORDERED_NODE_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+ <var name="data" type="DOMString"/>
+ <var name="nodeName" type="DOMString"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <singleNodeValue obj="outresult"
+ var="outNode"
+ />
+
+ <data obj="outNode"
+ interface="CharacterData"
+ var="data"
+ />
+
+ <assertEquals id="equals"
+ actual="data"
+ expected="&quot;EMP0001&quot;"
+ ignoreCase="false"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_null.xml b/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_null.xml
new file mode 100644
index 0000000..a7f6daa
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_null.xml
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_null">
+ <metadata>
+ <title>XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_null</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult ORDERED_NODE_SNAPSHOT_TYPE XPathResultType for
+ expression /staff/employee/employeeId/text() checking that:
+ XPathResult.snapshotItem(xPathResult.snapshotLength) == null,
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult-snapshot-length"/>
+ <subject resource="&spec;#XPathResult-snapshotItem"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee/employeeId/text()&quot;"/>
+ <var name="xpathType" type="short" value="ORDERED_NODE_SNAPSHOT_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="snapshotItem" type="Node"/>
+ <var name="snapshotLength" type="int"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <snapshotLength obj="outresult"
+ var="snapshotLength"
+ />
+
+ <snapshotItem obj="outresult"
+ var="snapshotItem"
+ index="snapshotLength"
+ />
+
+ <assertNull id="null"
+ actual="snapshotItem"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_order.xml b/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_order.xml
new file mode 100644
index 0000000..63bdb69
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_order.xml
@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_order">
+ <metadata>
+ <title>XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_order</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult ORDERED_NODE_SNAPSHOT_TYPE XPathResultType for
+ expression /staff/employee/employeeId/text() checking that:
+ XPathResult.snapshotItem(0..3) are in document order.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult-snapshot-length"/>
+ <subject resource="&spec;#XPathResult-snapshotItem"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee/employeeId/text()&quot;"/>
+ <var name="xpathType" type="short" value="ORDERED_NODE_SNAPSHOT_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="snapshotItem" type="Node"/>
+ <var name="snapshotLength" type="int"/>
+ <var name="index" type="int"/>
+ <var name="text" type="DOMString" />
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <assign var="index"
+ value="0"
+ />
+
+ <while>
+ <less actual="index"
+ expected="4"
+ />
+
+ <snapshotItem obj="outresult"
+ var="snapshotItem"
+ index="index"
+ />
+
+ <data obj="snapshotItem"
+ interface="CharacterData"
+ var="text"
+ />
+
+ <if><equals actual="index" expected="0" />
+
+ <assertEquals id="first"
+ actual="text"
+ expected="&quot;EMP0001&quot;"
+ ignoreCase="false"
+ />
+ </if>
+
+ <if><equals actual="index" expected="1" />
+
+ <assertEquals id="second"
+ actual="text"
+ expected="&quot;EMP0002&quot;"
+ ignoreCase="false"
+ />
+ </if>
+
+ <if><equals actual="index" expected="2" />
+
+ <assertEquals id="third"
+ actual="text"
+ expected="&quot;EMP0003&quot;"
+ ignoreCase="false"
+ />
+ </if>
+
+ <if><equals actual="index" expected="3" />
+
+ <assertEquals id="fourth"
+ actual="text"
+ expected="&quot;EMP0004&quot;"
+ ignoreCase="false"
+ />
+ </if>
+
+ <increment var="index"
+ value="1"
+ />
+
+ </while>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_count.xml b/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_count.xml
new file mode 100644
index 0000000..6d3b708
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_count.xml
@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_count">
+ <metadata>
+ <title>XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_count</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult UNORDERED_NODE_SNAPSHOT_TYPE XPathResultType for
+ expression /staff/employee/employeeId/text() checking that:
+ XPathResult.snapshotItem(0..3) exist.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult-snapshot-length"/>
+ <subject resource="&spec;#XPathResult-snapshotItem"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee/employeeId/text()&quot;"/>
+ <var name="xpathType" type="short" value="UNORDERED_NODE_SNAPSHOT_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="snapshotItem" type="Node"/>
+ <var name="snapshotLength" type="int"/>
+ <var name="index" type="int"/>
+ <var name="text" type="DOMString" />
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <assign var="index"
+ value="0"
+ />
+
+ <while>
+ <less actual="index"
+ expected="5"
+ />
+
+ <snapshotItem obj="outresult"
+ var="snapshotItem"
+ index="index"
+ />
+
+ <assertNotNull id="notnull"
+ actual="snapshotItem"
+ />
+
+ <increment var="index"
+ value="1"
+ />
+
+ </while>
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_null.xml b/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_null.xml
new file mode 100644
index 0000000..b10271f
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_null.xml
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_null">
+ <metadata>
+ <title>XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_null</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult UNORDERED_NODE_SNAPSHOT_TYPE XPathResultType for
+ expression /staff/employee/employeeId/text() checking that:
+ XPathResult.snapshotItem(xPathResult.snapshotLength) == null,
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult-snapshot-length"/>
+ <subject resource="&spec;#XPathResult-snapshotItem"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee/employeeId/text()&quot;"/>
+ <var name="xpathType" type="short" value="UNORDERED_NODE_SNAPSHOT_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="snapshotItem" type="Node"/>
+ <var name="snapshotLength" type="int"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <snapshotLength obj="outresult"
+ var="snapshotLength"
+ />
+
+ <snapshotItem obj="outresult"
+ var="snapshotItem"
+ index="snapshotLength"
+ />
+
+ <assertNull id="null"
+ actual="snapshotItem"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_snapshotLength_ORDERED_NODE_SNAPSHOT_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_snapshotLength_ORDERED_NODE_SNAPSHOT_TYPE.xml
new file mode 100644
index 0000000..2e7774c
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_snapshotLength_ORDERED_NODE_SNAPSHOT_TYPE.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_snapshotLength_ORDERED_NODE_SNAPSHOT_TYPE">
+ <metadata>
+ <title>XPathResult_snapshotLength_ORDERED_NODE_SNAPSHOT_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult ORDERED_NODE_SNAPSHOT_TYPE XPathResultType for
+ expression /staff/employee/employeeId/text() checking that:
+ XPathResult.snapshotLength is correct value.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult-snapshot-length"/>
+ <subject resource="&spec;#XPathResult-snapshotItem"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee/employeeId/text()&quot;"/>
+ <var name="xpathType" type="short" value="ORDERED_NODE_SNAPSHOT_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="snapshotItem" type="Node"/>
+ <var name="snapshotLength" type="int"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <snapshotLength obj="outresult"
+ var="snapshotLength"
+ />
+
+ <assertEquals id="same"
+ actual="snapshotLength"
+ expected="5"
+ ignoreCase="false"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_snapshotLength_UNORDERED_NODE_SNAPSHOT_TYPE.xml b/test/testcases/tests/level3/xpath/XPathResult_snapshotLength_UNORDERED_NODE_SNAPSHOT_TYPE.xml
new file mode 100644
index 0000000..5146a4f
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_snapshotLength_UNORDERED_NODE_SNAPSHOT_TYPE.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_snapshotLength_UNORDERED_NODE_SNAPSHOT_TYPE">
+ <metadata>
+ <title>XPathResult_snapshotLength_UNORDERED_NODE_SNAPSHOT_TYPE</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult UNORDERED_NODE_SNAPSHOT_TYPE XPathResultType for
+ expression /staff/employee/employeeId/text() checking that:
+ XPathResult.snapshotLength is correct value.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult-snapshot-length"/>
+ <subject resource="&spec;#XPathResult-snapshotItem"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee/employeeId/text()&quot;"/>
+ <var name="xpathType" type="short" value="UNORDERED_NODE_SNAPSHOT_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="snapshotItem" type="Node"/>
+ <var name="snapshotLength" type="int"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <snapshotLength obj="outresult"
+ var="snapshotLength"
+ />
+
+ <assertEquals id="same"
+ actual="snapshotLength"
+ expected="5"
+ ignoreCase="false"
+ />
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/XPathResult_stringValue.xml b/test/testcases/tests/level3/xpath/XPathResult_stringValue.xml
new file mode 100644
index 0000000..bc68069
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_stringValue.xml
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<test xmlns="&level3;" name="XPathResult_stringValue">
+ <metadata>
+ <title>XPathResult_stringValue</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create an XPathResult STRING_VALUE XPathResultType for expression
+ /staff/employee/salary[text()='56,000'] checking that the
+ XPathResult.stringValue == "56,000"
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <subject resource="&spec;#XPathResult-stringValue"/>
+ <subject resource="&spec;#XPathResult"/>
+ <subject resource="&spec;#XPathResultType"/>
+ <subject resource="&spec;#XPathEvaluator-createNSResolver"/>
+ </metadata>
+
+ <!-- Standard Variables -->
+
+ <var name="ANY_TYPE" type="short" value="0"/>
+ <var name="NUMBER_TYPE" type="short" value="1"/>
+ <var name="STRING_TYPE" type="short" value="2"/>
+ <var name="BOOLEAN_TYPE" type="short" value="3"/>
+ <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/>
+ <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/>
+ <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/>
+ <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/>
+ <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/>
+ <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/>
+
+ <var name="doc" type="Document" />
+ <var name="resolver" type="XPathNSResolver" />
+ <var name="evaluator" type="XPathEvaluator" />
+ <var name="contextNode" type="Node" />
+ <var name="inresult" type="XPathResult" isNull="true"/>
+ <var name="outresult" type="XPathResult" isNull="true"/>
+
+ <!-- Inputs -->
+
+ <var name="expression" type="DOMString" value="&quot;/staff/employee/salary[text()='56,000']&quot;"/>
+ <var name="xpathType" type="short" value="STRING_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="stringValue" type="DOMString"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="false"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" nodeResolver="doc"/>
+
+ <assign var="contextNode" value="doc"/>
+
+ <evaluate obj="evaluator"
+ var="outresult"
+ expression="expression"
+ contextNode="contextNode"
+ resolver="resolver"
+ type="xpathType"
+ result="inresult"
+ interface="XPathEvaluator"
+ />
+
+ <stringValue obj="outresult"
+ var="stringValue"
+ />
+
+ <assertEquals id="same"
+ actual="stringValue"
+ expected="&quot;56,000&quot;"
+ ignoreCase="false"
+ />
+
+
+</test>
diff --git a/test/testcases/tests/level3/xpath/alltests.xml b/test/testcases/tests/level3/xpath/alltests.xml
new file mode 100644
index 0000000..b5187c6
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/alltests.xml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE suite SYSTEM "dom3.dtd" [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<suite xmlns="&level3;" name="alltests">
+ <metadata>
+ <title>DOM Level 3 XPath Test Suite</title>
+ <creator>DOM Test Suite Project</creator>
+ </metadata>
+ <suite.member href="XPathEvaluatorCast01.xml"/>
+ <suite.member href="Element_Nodes.xml"/>
+ <suite.member href="Attribute_Nodes.xml"/>
+ <suite.member href="Attribute_Nodes_xmlns.xml"/>
+ <suite.member href="Text_Nodes.xml"/>
+ <suite.member href="Comment_Nodes.xml"/>
+ <suite.member href="Processing_Instruction_Nodes.xml"/>
+ <suite.member href="Conformance_Expressions.xml"/>
+ <suite.member href="Conformance_hasFeature_3.xml"/>
+ <suite.member href="Conformance_hasFeature_empty.xml"/>
+ <suite.member href="Conformance_hasFeature_null.xml"/>
+ <suite.member href="Conformance_ID.xml"/>
+ <suite.member href="Conformance_isSupported_3.xml"/>
+ <suite.member href="Conformance_isSupported_empty.xml"/>
+ <suite.member href="Conformance_isSupported_null.xml"/>
+ <suite.member href="XPathEvaluator_createExpression_no_NS.xml"/>
+ <suite.member href="XPathEvaluator_createExpression_NS.xml"/>
+ <suite.member href="XPathEvaluator_createExpression_NAMESPACE_ERR_01.xml"/>
+ <suite.member href="XPathEvaluator_createExpression_INVALID_EXPRESSION_ERR.xml"/>
+ <suite.member href="XPathEvaluator_createExpression_NAMESPACE_ERR_02.xml"/>
+ <suite.member href="XPathEvaluator_createNSResolver_document.xml"/>
+ <suite.member href="XPathEvaluator_createNSResolver_documentElement.xml"/>
+ <suite.member href="XPathEvaluator_createNSResolver_all.xml"/>
+ <suite.member href="XPathEvaluator_evaluate_documentElement.xml"/>
+ <suite.member href="XPathEvaluator_evaluate_document.xml"/>
+ <suite.member href="XPathEvaluator_evaluate_INVALID_EXPRESSION_ERR.xml"/>
+ <suite.member href="XPathEvaluator_evaluate_NAMESPACE_ERR.xml"/>
+ <suite.member href="XPathEvaluator_evaluate_WRONG_DOCUMENT_ERR.xml"/>
+ <suite.member href="XPathEvaluator_evaluate_NOT_SUPPORTED_ERR.xml"/>
+ <suite.member href="XPathEvaluator_evaluate_TYPE_ERR.xml"/>
+ <suite.member href="XPathExpression_evaluate_documentElement.xml"/>
+ <suite.member href="XPathExpression_evaluate_document.xml"/>
+ <suite.member href="XPathExpression_evaluate_WRONG_DOCUMENT_ERR.xml"/>
+ <suite.member href="XPathExpression_evaluate_NOT_SUPPORTED_ERR.xml"/>
+ <suite.member href="XPathNSResolver_lookupNamespaceURI_prefix.xml"/>
+ <suite.member href="XPathNSResolver_lookupNamespaceURI_nist_dmstc.xml"/>
+ <suite.member href="XPathNSResolver_lookupNamespaceURI_xml.xml"/>
+ <suite.member href="XPathNSResolver_lookupNamespaceURI_null.xml"/>
+ <suite.member href="XPathResult_booleanValue_true.xml"/>
+ <suite.member href="XPathResult_booleanValue_false.xml"/>
+ <suite.member href="XPathResult_iterateNext_INVALID_STATE_ERR.xml"/>
+ <suite.member href="XPathResult_invalidIteratorState_ANY_TYPE.xml"/>
+ <suite.member href="XPathResult_invalidIteratorState_ANY_UNORDERED_NODE_TYPE.xml"/>
+ <suite.member href="XPathResult_invalidIteratorState_BOOLEAN_TYPE.xml"/>
+ <suite.member href="XPathResult_invalidIteratorState_FIRST_ORDERED_NODE_TYPE.xml"/>
+ <suite.member href="XPathResult_invalidIteratorState_NUMBER_TYPE.xml"/>
+ <suite.member href="XPathResult_invalidIteratorState_ORDERED_NODE_ITERATOR_TYPE.xml"/>
+ <suite.member href="XPathResult_invalidIteratorState_ORDERED_NODE_SNAPSHOT_TYPE.xml"/>
+ <suite.member href="XPathResult_invalidIteratorState_STRING_TYPE.xml"/>
+ <suite.member href="XPathResult_invalidIteratorState_UNORDERED_NODE_ITERATOR_TYPE.xml"/>
+ <suite.member href="XPathResult_invalidIteratorState_UNORDERED_NODE_SNAPSHOT_TYPE.xml"/>
+ <suite.member href="XPathResult_iteratorNext_ORDERED_NODE_ITERATOR_TYPE.xml"/>
+ <suite.member href="XPathResult_numberValue.xml"/>
+ <suite.member href="XPathResult_resultType.xml"/>
+ <suite.member href="XPathResult_singleNodeValue_ANY_UNORDERED_NODE_TYPE.xml"/>
+ <suite.member href="XPathResult_singleNodeValue_FIRST_ORDERED_NODE_TYPE.xml"/>
+ <suite.member href="XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_null.xml"/>
+ <suite.member href="XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_order.xml"/>
+ <suite.member href="XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_null.xml"/>
+ <suite.member href="XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_count.xml"/>
+ <suite.member href="XPathResult_snapshotLength_ORDERED_NODE_SNAPSHOT_TYPE.xml"/>
+ <suite.member href="XPathResult_snapshotLength_UNORDERED_NODE_SNAPSHOT_TYPE.xml"/>
+ <suite.member href="XPathResult_stringValue.xml"/>
+ <suite.member href="XPathResult_TYPE_ERR.xml"/>
+</suite>
+
diff --git a/test/testcases/tests/level3/xpath/dom3xpathents.ent b/test/testcases/tests/level3/xpath/dom3xpathents.ent
new file mode 100644
index 0000000..8dd1053
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/dom3xpathents.ent
@@ -0,0 +1,16 @@
+<!ENTITY level3 "http://www.w3.org/2001/DOM-Test-Suite/Level-3">
+<!ENTITY spec "http://www.w3.org/TR/2003/CR-DOM-Level-3-XPath-20030331/xpath">
+
+<!ENTITY vars
+ "
+ <!-- common variables -->
+ <var name='doc' type='Document'/>
+ <var name='xpEvaluator' type='XPathEvaluator'/>
+ ">
+
+<!-- the following entity requires the entity vars as well -->
+<!ENTITY findXPathEvaluator
+ "
+ <load var='doc' href='staffNS' willBeModified='false'/>
+ <createXPathEvaluator var='xpEvaluator' document='doc'/>
+">
diff --git a/test/testcases/tests/level3/xpath/files/CVS/Entries b/test/testcases/tests/level3/xpath/files/CVS/Entries
new file mode 100644
index 0000000..6a27afe
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/CVS/Entries
@@ -0,0 +1,11 @@
+/internaldtd.svg/1.2/Fri Apr 3 02:47:58 2009/-kb/
+/internaldtd.xml/1.1/Fri Apr 3 02:47:58 2009//
+/staff.dtd/1.1/Fri Apr 3 02:47:58 2009//
+/staff.svg/1.1/Fri Apr 3 02:47:58 2009/-kb/
+/staff.xml/1.1/Fri Apr 3 02:47:58 2009//
+/staffNS.dtd/1.1/Fri Apr 3 02:47:58 2009//
+/staffNS.svg/1.1/Fri Apr 3 02:47:58 2009/-kb/
+/staffNS.xml/1.1/Fri Apr 3 02:47:58 2009//
+/svgtest.js/1.1/Fri Apr 3 02:47:58 2009/-kb/
+/svgunit.js/1.1/Fri Apr 3 02:47:58 2009/-kb/
+D
diff --git a/test/testcases/tests/level3/xpath/files/CVS/Repository b/test/testcases/tests/level3/xpath/files/CVS/Repository
new file mode 100644
index 0000000..b343eb6
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/level3/xpath/files
diff --git a/test/testcases/tests/level3/xpath/files/CVS/Root b/test/testcases/tests/level3/xpath/files/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/level3/xpath/files/CVS/Template b/test/testcases/tests/level3/xpath/files/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/CVS/Template
diff --git a/test/testcases/tests/level3/xpath/files/internaldtd.svg b/test/testcases/tests/level3/xpath/files/internaldtd.svg
new file mode 100644
index 0000000..2464ef1
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/internaldtd.svg
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<!DOCTYPE svg [
+ <!ELEMENT test (child)+ >
+ <!ATTLIST test xmlns CDATA #IMPLIED>
+ <!ELEMENT child EMPTY>
+ <!ATTLIST child id ID #IMPLIED>
+ <!ATTLIST child check CDATA #IMPLIED>
+ <!ELEMENT svg (rect, script, test)>
+ <!ATTLIST svg
+ xmlns CDATA #FIXED "http://www.w3.org/2000/svg"
+ name CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ELEMENT script (#PCDATA)>
+ <!ATTLIST script type CDATA #IMPLIED>
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+<test xmlns="http://www.example.org">
+ <child id="child1" check="child1"/>
+ <child id="child2" check="child2"/>
+</test>
+</svg>
+
diff --git a/test/testcases/tests/level3/xpath/files/internaldtd.xml b/test/testcases/tests/level3/xpath/files/internaldtd.xml
new file mode 100644
index 0000000..0844f5c
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/internaldtd.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!DOCTYPE test [
+ <!ELEMENT test (child)+ >
+ <!ELEMENT child EMPTY>
+ <!ATTLIST child id ID #IMPLIED>
+ <!ATTLIST child check CDATA #IMPLIED>
+]>
+<test>
+ <child id="child1" check="child1"/>
+ <child id="child2" check="child2"/>
+</test>
+
diff --git a/test/testcases/tests/level3/xpath/files/staff.dtd b/test/testcases/tests/level3/xpath/files/staff.dtd
new file mode 100644
index 0000000..02a994d
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/staff.dtd
@@ -0,0 +1,17 @@
+<!ELEMENT employeeId (#PCDATA)>
+<!ELEMENT name (#PCDATA)>
+<!ELEMENT position (#PCDATA)>
+<!ELEMENT salary (#PCDATA)>
+<!ELEMENT address (#PCDATA)>
+<!ELEMENT entElement ( #PCDATA ) >
+<!ELEMENT gender ( #PCDATA | entElement )* >
+<!ELEMENT employee (employeeId, name, position, salary, gender, address) >
+<!ELEMENT staff (employee)+>
+<!ATTLIST entElement
+ attr1 CDATA "Attr">
+<!ATTLIST address
+ domestic CDATA #IMPLIED
+ street CDATA "Yes">
+<!ATTLIST entElement
+ domestic CDATA "MALE" >
+
diff --git a/test/testcases/tests/level3/xpath/files/staff.svg b/test/testcases/tests/level3/xpath/files/staff.svg
new file mode 100644
index 0000000..abc7a98
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/staff.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg SYSTEM "staff.dtd" [
+ <!ENTITY ent1 "es">
+ <!ENTITY ent2 "1900 Dallas Road">
+ <!ENTITY ent3 "Texas">
+ <!ENTITY ent4 "<entElement domestic='Yes'>Element data</entElement><?PItarget PIdata?>">
+ <!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+ <!ENTITY ent1 "This entity should be discarded">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ATTLIST employee xmlns CDATA #IMPLIED>
+ <!ELEMENT svg (rect, script, employee+)>
+ <!ATTLIST svg
+ xmlns CDATA #FIXED "http://www.w3.org/2000/svg"
+ name CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ELEMENT script (#PCDATA)>
+ <!ATTLIST script type CDATA #IMPLIED>
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<!-- This is comment number 1.-->
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0002</employeeId>
+ <name>Martha Raynolds<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></name>
+ <position>Secretary</position>
+ <salary>35,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Yes">&ent2; Dallas, &ent3;
+ 98554</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0003</employeeId>
+ <name>Roger
+ Jones</name>
+ <position>Department Manager</position>
+ <salary>100,000</salary>
+ <gender>&ent4;</gender>
+ <address domestic="Yes" street="No">PO Box 27 Irving, texas 98553</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0004</employeeId>
+ <name>Jeny Oconnor</name>
+ <position>Personnel Director</position>
+ <salary>95,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Y&ent1;">27 South Road. Dallas, Texas 98556</address>
+ </employee>
+ <employee xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1/Files">
+ <employeeId>EMP0005</employeeId>
+ <name>Robert Myers</name>
+ <position>Computer Specialist</position>
+ <salary>90,000</salary>
+ <gender>male</gender>
+ <address street="Yes">1821 Nordic. Road, Irving Texas 98558</address>
+ </employee>
+ </svg>
diff --git a/test/testcases/tests/level3/xpath/files/staff.xml b/test/testcases/tests/level3/xpath/files/staff.xml
new file mode 100644
index 0000000..f89c510
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/staff.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE staff SYSTEM "staff.dtd" [
+ <!ENTITY ent1 "es">
+ <!ENTITY ent2 "1900 Dallas Road">
+ <!ENTITY ent3 "Texas">
+ <!ENTITY ent4 "<entElement domestic='Yes'>Element data</entElement><?PItarget PIdata?>">
+ <!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+ <!ENTITY ent1 "This entity should be discarded">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+]>
+<!-- This is comment number 1.-->
+<staff>
+ <employee>
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0002</employeeId>
+ <name>Martha Raynolds<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></name>
+ <position>Secretary</position>
+ <salary>35,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Yes">&ent2; Dallas, &ent3;
+ 98554</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0003</employeeId>
+ <name>Roger
+ Jones</name>
+ <position>Department Manager</position>
+ <salary>100,000</salary>
+ <gender>&ent4;</gender>
+ <address domestic="Yes" street="No">PO Box 27 Irving, texas 98553</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0004</employeeId>
+ <name>Jeny Oconnor</name>
+ <position>Personnel Director</position>
+ <salary>95,000</salary>
+ <gender>Female</gender>
+ <address domestic="Yes" street="Y&ent1;">27 South Road. Dallas, Texas 98556</address>
+ </employee>
+ <employee>
+ <employeeId>EMP0005</employeeId>
+ <name>Robert Myers</name>
+ <position>Computer Specialist</position>
+ <salary>90,000</salary>
+ <gender>male</gender>
+ <address street="Yes">1821 Nordic. Road, Irving Texas 98558</address>
+ </employee>
+ </staff>
diff --git a/test/testcases/tests/level3/xpath/files/staffNS.dtd b/test/testcases/tests/level3/xpath/files/staffNS.dtd
new file mode 100644
index 0000000..877a943
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/staffNS.dtd
@@ -0,0 +1,47 @@
+<!ELEMENT staff (employee+,emp:employee,employee) >
+<!ATTLIST staff xmlns CDATA #IMPLIED>
+<!ATTLIST staff xmlns:nist CDATA #IMPLIED>
+<!ELEMENT employee (employeeId,name,position,salary,gender,address) >
+<!ATTLIST employee xmlns CDATA #IMPLIED>
+<!ATTLIST employee xmlns:dmstc CDATA #IMPLIED>
+<!ATTLIST employee xmlns:emp2 CDATA #IMPLIED>
+
+<!ELEMENT employeeId (#PCDATA) >
+
+<!ELEMENT name (#PCDATA) >
+
+<!ELEMENT position (#PCDATA) >
+
+<!ELEMENT salary (#PCDATA) >
+
+<!ELEMENT entElement1 (#PCDATA) >
+<!ELEMENT gender (#PCDATA | entElement1)* >
+<!ATTLIST entElement1 xmlns:local1 CDATA #IMPLIED >
+
+<!ELEMENT address (#PCDATA) >
+<!ATTLIST address dmstc:domestic CDATA #IMPLIED>
+<!ATTLIST address street CDATA #IMPLIED>
+<!ATTLIST address domestic CDATA #IMPLIED>
+<!ATTLIST address xmlns CDATA #IMPLIED>
+
+<!ELEMENT emp:employee (emp:employeeId,nm:name,emp:position,emp:salary,emp:gender,emp:address) >
+<!ATTLIST emp:employee xmlns:emp CDATA #IMPLIED>
+<!ATTLIST emp:employee xmlns:nm CDATA #IMPLIED>
+<!ATTLIST emp:employee defaultAttr CDATA 'defaultVal'>
+
+<!ELEMENT emp:employeeId (#PCDATA) >
+
+<!ELEMENT nm:name (#PCDATA) >
+
+<!ELEMENT emp:position (#PCDATA) >
+
+<!ELEMENT emp:salary (#PCDATA) >
+
+<!ELEMENT emp:gender (#PCDATA) >
+
+<!ELEMENT emp:address (#PCDATA) >
+<!ATTLIST emp:address emp:domestic CDATA #IMPLIED>
+<!ATTLIST emp:address street CDATA #IMPLIED>
+<!ATTLIST emp:address emp:zone ID #IMPLIED>
+<!ATTLIST emp:address emp:district CDATA 'DISTRICT'>
+<!ATTLIST emp:address emp:local1 CDATA 'FALSE'>
diff --git a/test/testcases/tests/level3/xpath/files/staffNS.svg b/test/testcases/tests/level3/xpath/files/staffNS.svg
new file mode 100644
index 0000000..d7c620d
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/staffNS.svg
@@ -0,0 +1,73 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE svg PUBLIC "STAFF" "staffNS.dtd"
+[
+ <!ENTITY ent1 "es">
+ <!ENTITY ent2 "1900 Dallas Road">
+ <!ENTITY ent3 "Texas">
+ <!ENTITY ent4 "<entElement1 xmlns:local1='www.xyz.com'>Element data</entElement1><?PItarget PIdata?>">
+ <!ENTITY ent5 PUBLIC "entityURI" "entityFile" NDATA notation1>
+ <!ENTITY ent6 PUBLIC "uri" "file" NDATA notation2>
+ <!ENTITY ent1 "This entity should be discarded">
+ <!NOTATION notation1 PUBLIC "notation1File">
+ <!NOTATION notation2 SYSTEM "notation2File">
+ <!ELEMENT svg (rect, script, employee+, emp:employee, employee*)>
+ <!ATTLIST svg
+ xmlns CDATA #FIXED "http://www.w3.org/2000/svg"
+ name CDATA #IMPLIED>
+ <!ELEMENT rect EMPTY>
+ <!ATTLIST rect
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED>
+ <!ELEMENT script (#PCDATA)>
+ <!ATTLIST script type CDATA #IMPLIED>
+ <!ENTITY svgunit SYSTEM "svgunit.js">
+ <!ENTITY svgtest SYSTEM "svgtest.js">
+]>
+<!-- This is comment number 1.-->
+<svg xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="100" height="100"/><script type="text/ecmascript">&svgtest;&svgunit;</script>
+ <employee xmlns="http://www.nist.gov" xmlns:dmstc="http://www.usa.com">
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address dmstc:domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ <employee xmlns:dmstc="http://www.usa.com" xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2/Files">
+ <employeeId>EMP0002</employeeId>
+ <name>Martha Raynolds
+<![CDATA[This is a CDATASection with EntityReference number 2 &ent2;]]>
+<![CDATA[This is an adjacent CDATASection with a reference to a tab &tab;]]></name>
+ <position>Secretary</position>
+ <salary>35,000</salary>
+ <gender>Female</gender>
+ <address dmstc:domestic="Yes" street="Yes">&ent2; Dallas, &ent3;
+ 98554</address>
+ </employee>
+ <employee xmlns:dmstc="http://www.netzero.com" xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2/Files">
+ <employeeId>EMP0003</employeeId>
+ <name>Roger
+ Jones</name>
+ <position>Department Manager</position>
+ <salary>100,000</salary>
+ <gender>&ent4;</gender>
+ <address dmstc:domestic="Yes" street="No">PO Box 27 Irving, texas 98553</address>
+ </employee>
+ <emp:employee xmlns:emp="http://www.nist.gov" xmlns:nm="http://www.altavista.com" > <emp:employeeId>EMP0004</emp:employeeId>
+ <nm:name>Jeny Oconnor</nm:name>
+ <emp:position>Personnel Director</emp:position>
+ <emp:salary>95,000</emp:salary>
+ <emp:gender>Female</emp:gender>
+ <emp:address emp:domestic="Yes" street="Y&ent1;" emp:zone="CANADA" emp:local1="TRUE">27 South Road. Dallas, texas 98556</emp:address>
+ </emp:employee>
+ <employee xmlns:emp2="http://www.nist.gov" xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2/Files">
+ <employeeId>EMP0005</employeeId>
+ <name>Robert Myers</name>
+ <position>Computer Specialist</position>
+ <salary>90,000</salary>
+ <gender>male</gender>
+ <address street="Yes" xmlns="http://www.nist.gov">1821 Nordic. Road, Irving Texas 98558</address>
+ </employee>
+ </svg>
diff --git a/test/testcases/tests/level3/xpath/files/staffNS.xml b/test/testcases/tests/level3/xpath/files/staffNS.xml
new file mode 100644
index 0000000..e46a7c5
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/staffNS.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0"?><?TEST-STYLE PIDATA?>
+<!DOCTYPE staff PUBLIC "STAFF" "staffNS.dtd">
+<staff xmlns="http://www.nist.gov" xmlns:nist="http://www.nist.gov">
+ <employee xmlns:dmstc="http://www.usa.com">
+ <employeeId>EMP0001</employeeId>
+ <name>Margaret Martin</name>
+ <position>Accountant</position>
+ <salary>56,000</salary>
+ <gender>Female</gender>
+ <address dmstc:domestic="Yes">1230 North Ave. Dallas, Texas 98551</address>
+ </employee>
+ <employee xmlns:dmstc="http://www.usa.com">
+ <employeeId>EMP0002</employeeId>
+ <name>Martha Raynolds</name>
+ <position>Secretary</position>
+ <salary>35,000</salary>
+ <gender>Female</gender>
+ <address dmstc:domestic="Yes" street="Yes">1900 Dallas Road Dallas, Texas 98554</address>
+ </employee>
+ <employee xmlns:dmstc="http://www.netzero.com">
+ <employeeId>EMP0003</employeeId>
+ <name>Roger
+ Jones</name>
+ <position>Department Manager</position>
+ <salary>100,000</salary>
+ <gender>Male</gender>
+ <address dmstc:domestic="Yes" street="No">PO Box 27 Irving, texas 98553</address>
+ </employee>
+ <emp:employee xmlns:emp="http://www.nist.gov" xmlns:nm="http://www.altavista.com" > <emp:employeeId>EMP0004</emp:employeeId>
+ <nm:name>Jeny Oconnor</nm:name>
+ <emp:position>Personnel Director</emp:position>
+ <emp:salary>95,000</emp:salary>
+ <emp:gender>Female</emp:gender>
+ <emp:address emp:domestic="Yes" street="Yes" emp:zone="CANADA" emp:local1="TRUE">27 South Road. Dallas, texas 98556</emp:address>
+ </emp:employee>
+ <employee xmlns:emp2="http://www.nist.gov">
+ <employeeId>EMP0005</employeeId>
+ <name>Robert Myers</name>
+ <position>Computer Specialist</position>
+ <salary>90,000</salary>
+ <gender>male</gender>
+ <address street="Yes" xmlns="http://www.nist.gov">1821 Nordic. Road, Irving Texas 98558</address>
+ </employee>
+</staff>
diff --git a/test/testcases/tests/level3/xpath/files/svgtest.js b/test/testcases/tests/level3/xpath/files/svgtest.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/svgtest.js
diff --git a/test/testcases/tests/level3/xpath/files/svgunit.js b/test/testcases/tests/level3/xpath/files/svgunit.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/files/svgunit.js
diff --git a/test/testcases/tests/level3/xpath/metadata.xml b/test/testcases/tests/level3/xpath/metadata.xml
new file mode 100644
index 0000000..4a47a00
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2003 World Wide Web Consortium,
+
+ (Massachusetts Institute of Technology, European Research Consortium for
+ Informatics and Mathematics, Keio University). All Rights Reserved. This
+ work is distributed under the W3C(r) Software License [1] 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.
+
+ [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+
+<!DOCTYPE metadata SYSTEM 'dom3.dtd' [
+ <!ENTITY % entities SYSTEM "dom3xpathents.ent">
+ %entities;
+]>
+<metadata xmlns="&level3;">
+</metadata>
diff --git a/test/testcases/tests/submittedtests/CVS/Entries b/test/testcases/tests/submittedtests/CVS/Entries
new file mode 100644
index 0000000..cdc8b2a
--- /dev/null
+++ b/test/testcases/tests/submittedtests/CVS/Entries
@@ -0,0 +1 @@
+D/netscapeHTML////
diff --git a/test/testcases/tests/submittedtests/CVS/Repository b/test/testcases/tests/submittedtests/CVS/Repository
new file mode 100644
index 0000000..50d9759
--- /dev/null
+++ b/test/testcases/tests/submittedtests/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/submittedtests
diff --git a/test/testcases/tests/submittedtests/CVS/Root b/test/testcases/tests/submittedtests/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/submittedtests/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/submittedtests/CVS/Template b/test/testcases/tests/submittedtests/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/submittedtests/CVS/Template
diff --git a/test/testcases/tests/submittedtests/netscapeHTML/CVS/Entries b/test/testcases/tests/submittedtests/netscapeHTML/CVS/Entries
new file mode 100644
index 0000000..1784810
--- /dev/null
+++ b/test/testcases/tests/submittedtests/netscapeHTML/CVS/Entries
@@ -0,0 +1 @@
+D
diff --git a/test/testcases/tests/submittedtests/netscapeHTML/CVS/Repository b/test/testcases/tests/submittedtests/netscapeHTML/CVS/Repository
new file mode 100644
index 0000000..22b1c83
--- /dev/null
+++ b/test/testcases/tests/submittedtests/netscapeHTML/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/submittedtests/netscapeHTML
diff --git a/test/testcases/tests/submittedtests/netscapeHTML/CVS/Root b/test/testcases/tests/submittedtests/netscapeHTML/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/submittedtests/netscapeHTML/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/submittedtests/netscapeHTML/CVS/Template b/test/testcases/tests/submittedtests/netscapeHTML/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/submittedtests/netscapeHTML/CVS/Template
diff --git a/test/testcases/tests/validation/CVS/Entries b/test/testcases/tests/validation/CVS/Entries
new file mode 100644
index 0000000..2f98306
--- /dev/null
+++ b/test/testcases/tests/validation/CVS/Entries
@@ -0,0 +1 @@
+D/files////
diff --git a/test/testcases/tests/validation/CVS/Repository b/test/testcases/tests/validation/CVS/Repository
new file mode 100644
index 0000000..df8b728
--- /dev/null
+++ b/test/testcases/tests/validation/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/validation
diff --git a/test/testcases/tests/validation/CVS/Root b/test/testcases/tests/validation/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/validation/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/validation/CVS/Template b/test/testcases/tests/validation/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/validation/CVS/Template
diff --git a/test/testcases/tests/validation/files/CVS/Entries b/test/testcases/tests/validation/files/CVS/Entries
new file mode 100644
index 0000000..1784810
--- /dev/null
+++ b/test/testcases/tests/validation/files/CVS/Entries
@@ -0,0 +1 @@
+D
diff --git a/test/testcases/tests/validation/files/CVS/Repository b/test/testcases/tests/validation/files/CVS/Repository
new file mode 100644
index 0000000..b621621
--- /dev/null
+++ b/test/testcases/tests/validation/files/CVS/Repository
@@ -0,0 +1 @@
+2001/DOM-Test-Suite/tests/validation/files
diff --git a/test/testcases/tests/validation/files/CVS/Root b/test/testcases/tests/validation/files/CVS/Root
new file mode 100644
index 0000000..3c7177e
--- /dev/null
+++ b/test/testcases/tests/validation/files/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.w3.org:/sources/public
diff --git a/test/testcases/tests/validation/files/CVS/Template b/test/testcases/tests/validation/files/CVS/Template
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/testcases/tests/validation/files/CVS/Template