libdom: branch rupindersingh/libdom updated. release/0.1.0-40-g482cf86
by NetSurf Browser Project
Gitweb links:
...log http://git.netsurf-browser.org/libdom.git/shortlog/482cf86318623374da7801...
...commit http://git.netsurf-browser.org/libdom.git/commit/482cf86318623374da78018c...
...tree http://git.netsurf-browser.org/libdom.git/tree/482cf86318623374da78018c16...
The branch, rupindersingh/libdom has been updated
discards 1d85cffff6d3a4636369c67dbb8f41b1f05f502f (commit)
discards c072247622a8ec126e5e12699fa802b29ed12314 (commit)
discards c8f1949529a0fe143cb639ed79f001faaf689a40 (commit)
discards a7e6dde7d8b3284dff4020198a90db802f4990b0 (commit)
discards bff78dcc12f3f69388b4ab37989a518cad945038 (commit)
discards 2c304c2a72314cb33730a9d9aa6217ee8f1f4465 (commit)
discards 565c9dbb9895b579e4b299657615711272d30e8c (commit)
discards 8bf355f162e247b3e5526eebeff34f770e244a92 (commit)
discards 5d2baaa74795bb9b27ddd33ab27ca33647b3a347 (commit)
discards 956dcdc1c0e541a105d31919c3bdc9f140e3f141 (commit)
discards e05636e77debb97cfecd957d53b76cf6a700c8a5 (commit)
discards 26107018e31664cc2fda5e25892b60eb7795944a (commit)
discards b4e93a32c9f4bf568074a6f51cc540bc955d34ee (commit)
discards 9bc9204c9a361923c464d050db9a25cc2149e072 (commit)
discards 974c5fa86e18c379a3419c6d0d98c896e26f725e (commit)
discards eb297cf94ce8a94c51a77f97799703e527edc72b (commit)
via 482cf86318623374da78018c16c8b86869bec949 (commit)
via d797c09542bd17c4f5bbbe0b9b62aca6c6644d45 (commit)
via 196777ec2a849e423750264c6f3a8f50a374735b (commit)
via 092d75289c1b7fa0eea76db5f362d008f1a3ec85 (commit)
via e5a9d8e4e23d2076d2286dbbac6c26fd1d93569e (commit)
via 6c6359d20389deea57df5e28ebd5e2642588215b (commit)
via c0ed79aea3739d40d7f41eb13a8b30403a2383cc (commit)
via e26da7c6d2d8970d224797f5d851c6d77f910ffb (commit)
via 3f044d706e4f5de44f47c525dabaccda8c1eec24 (commit)
via 3ed550a3e5f7ba946d1bc51358430508b26479db (commit)
via d4ec4046687df3635feddeb3d9bdfb94d612af15 (commit)
via ba808a3f83e46269a3d032d3291d7a2d0b2a01ad (commit)
via 2e3daed498978d920f7e275d038f9e1cae6f15af (commit)
via f9e0f0d8cd616712d46e95b14a99021e483b9aa0 (commit)
via 1d5bdc9a3443ecc50c71c9f34c431bcc26f32408 (commit)
via 3bf3fa90e78231623e4b11daa4bec8c49bf729a0 (commit)
This update added new revisions after undoing existing revisions. That is
to say, the old revision is not a strict subset of the new revision. This
situation occurs when you --force push a change and generate a repository
containing something like this:
* -- * -- B -- O -- O -- O (1d85cffff6d3a4636369c67dbb8f41b1f05f502f)
\
N -- N -- N (482cf86318623374da78018c16c8b86869bec949)
When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff http://git.netsurf-browser.org/libdom.git/commit/?id=482cf86318623374da78...
commit 482cf86318623374da78018c16c8b86869bec949
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: rsk1994 <rsk1coder99(a)gmail.com>
Missed inputElement Test files && bubbling and cancelability of generic events & buttonElement tests
diff --git a/src/html/TODO b/src/html/TODO
index e7d4853..183f10d 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -15,8 +15,8 @@ HTMLFormElement html_form_element DONE
HTMLSelectElement html_select_element DONE
HTMLOptGroupElement html_optgroup_element DONE
HTMLOptionElement html_option_element DONE
-HTMLInputElement html_input_element DONE
-HTMLTextAreaElement html_textarea_element MISSING
+HTMLInputElement html_input_element MISSING
+HTMLTextAreaElement html_textarea_element DONE
HTMLButtonElement html_button_element MISSING
HTMLLabelElement html_label_element DONE
HTMLFieldSetElement html_fieldset_element DONE
diff --git a/src/html/html_anchor_element.c b/src/html/html_anchor_element.c
index a215900..77f8cef 100644
--- a/src/html/html_anchor_element.c
+++ b/src/html/html_anchor_element.c
@@ -198,11 +198,11 @@ dom_exception dom_html_anchor_element_blur(dom_html_anchor_element *ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /* This event does not bubble & is non-cancelable. Mentioned in w3 specs. More research is needed to prove why. */
return _dom_dispatch_generic_event((dom_document *) doc,
(dom_event_target *) ele,
- doc->memoised[hds_blur], true,
- true, &success);
+ doc->memoised[hds_blur], false,
+ false, &success);
}
/**
@@ -218,10 +218,10 @@ dom_exception dom_html_anchor_element_focus(dom_html_anchor_element *ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /* This event does not bubble & is non-cancelable. Mentioned in w3 specs. More research is needed to prove why. */
return _dom_dispatch_generic_event((dom_document *)doc,
(dom_event_target *) ele,
- doc->memoised[hds_focus], true,
- true, &success);
+ doc->memoised[hds_focus], false,
+ false, &success);
}
diff --git a/src/html/html_text_area_element.c b/src/html/html_text_area_element.c
index eea5b4e..ac90a76 100644
--- a/src/html/html_text_area_element.c
+++ b/src/html/html_text_area_element.c
@@ -438,11 +438,11 @@ dom_exception dom_html_text_area_element_blur(dom_html_text_area_element *ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /* This event does not bubble & is Non-cancellable. Mentioned in w3 specs. More research is needed to prove why. */
return _dom_dispatch_generic_event((dom_document *) doc,
(dom_event_target *) ele,
- doc->memoised[hds_blur], true,
- true, &success);
+ doc->memoised[hds_blur], false,
+ false, &success);
}
/**
@@ -458,11 +458,11 @@ dom_exception dom_html_text_area_element_focus(dom_html_text_area_element *ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /* This event does not bubble & is Non-cancellable. Mentioned in w3 specs. More research is needed to prove why. */
return _dom_dispatch_generic_event((dom_document *)doc,
(dom_event_target *) ele,
- doc->memoised[hds_focus], true,
- true, &success);
+ doc->memoised[hds_focus], false,
+ false, &success);
}
/**
@@ -478,9 +478,9 @@ dom_exception dom_html_text_area_element_select(dom_html_text_area_element *ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /* This event bubbles & is non-cancelable. Mentioned in w3 specs. More research is needed to prove why. */
return _dom_dispatch_generic_event((dom_document *)doc,
(dom_event_target *) ele,
doc->memoised[hds_select], true,
- true, &success);
+ false, &success);
}
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-1403..."/>
+</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/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-7125..."/>
+</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/button01.xml.notimpl b/test/testcases/tests/level1/html/button01.xml.notimpl
deleted file mode 100644
index f128ea8..0000000
--- a/test/testcases/tests/level1/html/button01.xml.notimpl
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7125..."/>
-</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-7125..."/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6353..."/>
+</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/button02.xml.notimpl b/test/testcases/tests/level1/html/button02.xml.notimpl
deleted file mode 100644
index bd072ef..0000000
--- a/test/testcases/tests/level1/html/button02.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7125..."/>
-<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6353..."/>
-</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-7125..."/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7404..."/>
+</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/button03.xml.notimpl b/test/testcases/tests/level1/html/button03.xml.notimpl
deleted file mode 100644
index 4074059..0000000
--- a/test/testcases/tests/level1/html/button03.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7125..."/>
-<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7404..."/>
-</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-7125..."/>
+<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8254..."/>
+</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/button04.xml.notimpl b/test/testcases/tests/level1/html/button04.xml.notimpl
deleted file mode 100644
index 737ddaa..0000000
--- a/test/testcases/tests/level1/html/button04.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7125..."/>
-<subject resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8254..."/>
-</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-7316..."/>
+</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/button05.xml.notimpl b/test/testcases/tests/level1/html/button05.xml.notimpl
deleted file mode 100644
index ecff6b5..0000000
--- a/test/testcases/tests/level1/html/button05.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7316..."/>
-</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-3919..."/>
+</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/button06.xml.notimpl b/test/testcases/tests/level1/html/button06.xml.notimpl
deleted file mode 100644
index 7a5e558..0000000
--- a/test/testcases/tests/level1/html/button06.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-3919..."/>
-</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-2743..."/>
+</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/button07.xml.notimpl b/test/testcases/tests/level1/html/button07.xml.notimpl
deleted file mode 100644
index daddf76..0000000
--- a/test/testcases/tests/level1/html/button07.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-2743..."/>
-</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-9275..."/>
+</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/button08.xml.notimpl b/test/testcases/tests/level1/html/button08.xml.notimpl
deleted file mode 100644
index a4dbb0b..0000000
--- a/test/testcases/tests/level1/html/button08.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-9275..."/>
-</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-7285..."/>
+</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/button09.xml.notimpl b/test/testcases/tests/level1/html/button09.xml.notimpl
deleted file mode 100644
index d0efa94..0000000
--- a/test/testcases/tests/level1/html/button09.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7285..."/>
-</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/level2/html/files/input.html b/test/testcases/tests/level2/html/files/input.html
new file mode 100644
index 0000000..c36e87d
--- /dev/null
+++ b/test/testcases/tests/level2/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/level2/html/files/input.xhtml b/test/testcases/tests/level2/html/files/input.xhtml
new file mode 100644
index 0000000..b7704ad
--- /dev/null
+++ b/test/testcases/tests/level2/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/level2/html/files/input.xml b/test/testcases/tests/level2/html/files/input.xml
new file mode 100644
index 0000000..b7704ad
--- /dev/null
+++ b/test/testcases/tests/level2/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>
commitdiff http://git.netsurf-browser.org/libdom.git/commit/?id=d797c09542bd17c4f5bb...
commit d797c09542bd17c4f5bbbe0b9b62aca6c6644d45
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: rsk1994 <rsk1coder99(a)gmail.com>
changing size attribute of Input Element to be of type int
diff --git a/include/dom/html/html_input_element.h b/include/dom/html/html_input_element.h
index eb6aecd..086e1cb 100644
--- a/include/dom/html/html_input_element.h
+++ b/include/dom/html/html_input_element.h
@@ -85,10 +85,10 @@ dom_exception dom_html_input_element_set_read_only(
dom_html_input_element *input, bool read_only);
dom_exception dom_html_input_element_get_size(
- dom_html_input_element *input, dom_string **size);
+ dom_html_input_element *input, int32_t *size);
dom_exception dom_html_input_element_set_size(
- dom_html_input_element *input, dom_string *size);
+ dom_html_input_element *input, uint32_t size);
dom_exception dom_html_input_element_get_src(
dom_html_input_element *input, dom_string **src);
diff --git a/src/html/TODO b/src/html/TODO
index 6a3d190..e7d4853 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -15,7 +15,7 @@ HTMLFormElement html_form_element DONE
HTMLSelectElement html_select_element DONE
HTMLOptGroupElement html_optgroup_element DONE
HTMLOptionElement html_option_element DONE
-HTMLInputElement html_input_element MISSING
+HTMLInputElement html_input_element DONE
HTMLTextAreaElement html_textarea_element MISSING
HTMLButtonElement html_button_element MISSING
HTMLLabelElement html_label_element DONE
diff --git a/src/html/html_input_element.c b/src/html/html_input_element.c
index bab79f2..c4cfc05 100644
--- a/src/html/html_input_element.c
+++ b/src/html/html_input_element.c
@@ -349,12 +349,24 @@ SIMPLE_GET_SET(access_key);
SIMPLE_GET_SET(align);
SIMPLE_GET_SET(alt);
SIMPLE_GET_SET(name);
-SIMPLE_GET_SET(size);
SIMPLE_GET_SET(src);
SIMPLE_GET(type);
SIMPLE_GET_SET(use_map);
SIMPLE_GET_SET(value);
+dom_exception dom_html_input_element_get_size(
+ dom_html_input_element *input, int32_t *size)
+{
+ return dom_html_element_get_int32_t_property(&input->base, "size",
+ SLEN("size"), size);
+}
+
+dom_exception dom_html_input_element_set_size(
+ dom_html_input_element *input, uint32_t size)
+{
+ return dom_html_element_set_int32_t_property(&input->base, "size",
+ SLEN("size"), size);
+}
dom_exception dom_html_input_element_get_tab_index(
dom_html_input_element *input, int32_t *tab_index)
{
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/HTMLInputElement13.xml.kfail b/test/testcases/tests/level2/html/HTMLInputElement13.xml.kfail
deleted file mode 100644
index e243035..0000000
--- a/test/testcases/tests/level2/html/HTMLInputElement13.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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>
commitdiff http://git.netsurf-browser.org/libdom.git/commit/?id=196777ec2a849e423750...
commit 196777ec2a849e423750264c6f3a8f50a374735b
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: rsk1994 <rsk1coder99(a)gmail.com>
OptionElement && disabling Isindex
diff --git a/include/dom/html/html_option_element.h b/include/dom/html/html_option_element.h
index 53ba286..aa0d11c 100644
--- a/include/dom/html/html_option_element.h
+++ b/include/dom/html/html_option_element.h
@@ -28,7 +28,7 @@ dom_exception dom_html_option_element_get_text(
dom_html_option_element *option, dom_string **text);
dom_exception dom_html_option_element_get_index(
- dom_html_option_element *option, unsigned long *index);
+ dom_html_option_element *option, int32_t *index);
dom_exception dom_html_option_element_get_disabled(
dom_html_option_element *option, bool *disabled);
diff --git a/src/html/TODO b/src/html/TODO
index 8e004e1..6a3d190 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -13,8 +13,8 @@ HTMLStyleElement html_style_element DONE
HTMLBodyElement html_body_element MISSING
HTMLFormElement html_form_element DONE
HTMLSelectElement html_select_element DONE
-HTMLOptGroupElement html_optgroup_element MISSING
-HTMLOptionElement html_option_element MISSING
+HTMLOptGroupElement html_optgroup_element DONE
+HTMLOptionElement html_option_element DONE
HTMLInputElement html_input_element MISSING
HTMLTextAreaElement html_textarea_element MISSING
HTMLButtonElement html_button_element MISSING
diff --git a/src/html/html_option_element.c b/src/html/html_option_element.c
index b133deb..b777c5f 100644
--- a/src/html/html_option_element.c
+++ b/src/html/html_option_element.c
@@ -255,13 +255,22 @@ dom_exception dom_html_option_element_get_text(
* \return DOM_NO_ERR on success, appropriate error otherwise.
*/
dom_exception dom_html_option_element_get_index(
- dom_html_option_element *option, unsigned long *index)
+ dom_html_option_element *option, int32_t *index)
{
- UNUSED(option);
- UNUSED(index);
+ dom_html_document *doc = (dom_html_document *) dom_node_get_owner(option);
+ int32_t idx = 0;
+ dom_node_internal *n = ((dom_node_internal *)option)->parent;
- /** \todo Implement */
- return DOM_NOT_SUPPORTED_ERR;
+ for(n = n->first_child;n != NULL; n = n->next) {
+ if((dom_node_internal *)option == n) {
+ *index = idx;
+ break;
+ } else if(dom_string_caseless_isequal(n->name,doc->memoised[hds_OPTION])) {
+ idx += 1;
+ }
+ }
+
+ return DOM_NO_ERR;
}
/**
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement05.xml.kfail b/test/testcases/tests/level1/html/HTMLOptionElement05.xml.kfail
deleted file mode 100644
index 46812a1..0000000
--- a/test/testcases/tests/level1/html/HTMLOptionElement05.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-1403..."/>
-</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>
commitdiff http://git.netsurf-browser.org/libdom.git/commit/?id=092d75289c1b7fa0eea7...
commit 092d75289c1b7fa0eea76db5f362d008f1a3ec85
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: rsk1994 <rsk1coder99(a)gmail.com>
select element && disabling IsIndex Element
diff --git a/src/html/Makefile b/src/html/Makefile
index 8c20362..2cb85d9 100644
--- a/src/html/Makefile
+++ b/src/html/Makefile
@@ -3,7 +3,7 @@ DIR_SOURCES := \
html_document.c html_collection.c html_options_collection.c \
html_element.c html_html_element.c html_head_element.c \
html_link_element.c html_title_element.c html_meta_element.c \
- html_base_element.c html_isindex_element.c html_style_element.c \
+ html_base_element.c html_style_element.c \
html_body_element.c html_form_element.c html_select_element.c \
html_button_element.c html_input_element.c html_text_area_element.c \
html_opt_group_element.c html_option_element.c html_hr_element.c \
@@ -20,7 +20,7 @@ DIR_SOURCES := \
html_table_element.c html_tablerow_element.c
UNINMPLEMENTED_SOURCES := \
- html_frameset_element.c \
+ html_frameset_element.c html_isindex_element.c \
html_frame_element.c html_iframe_element.c
include $(NSBUILD)/Makefile.subdir
diff --git a/src/html/TODO b/src/html/TODO
index d817e68..8e004e1 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -12,7 +12,7 @@ HTMLIsIndexElement html_isindex_element MISSING
HTMLStyleElement html_style_element DONE
HTMLBodyElement html_body_element MISSING
HTMLFormElement html_form_element DONE
-HTMLSelectElement html_select_element MISSING
+HTMLSelectElement html_select_element DONE
HTMLOptGroupElement html_optgroup_element MISSING
HTMLOptionElement html_option_element MISSING
HTMLInputElement html_input_element MISSING
diff --git a/src/html/html_select_element.c b/src/html/html_select_element.c
index 1e49c75..bbc82cf 100644
--- a/src/html/html_select_element.c
+++ b/src/html/html_select_element.c
@@ -65,8 +65,8 @@ dom_exception _dom_html_select_element_initialise(struct dom_html_document *doc,
ele->form = NULL;
return _dom_html_element_initialise(doc, &ele->base,
- doc->memoised[hds_SELECT],
- namespace, prefix);
+ doc->memoised[hds_SELECT],
+ namespace, prefix);
}
/**
@@ -125,16 +125,16 @@ dom_exception _dom_html_select_element_copy(dom_node_internal *old,
/* Public APIs */
static dom_exception _dom_html_select_element_make_collection(
- dom_html_select_element *ele,
- dom_html_options_collection **col)
+ dom_html_select_element *ele,
+ dom_html_options_collection **col)
{
dom_html_document *doc = (dom_html_document *) dom_node_get_owner(ele);
assert(doc != NULL);
return _dom_html_options_collection_create(doc,
- (dom_node_internal *) ele,
- is_option, ele, col);
+ (dom_node_internal *) ele,
+ is_option, ele, col);
}
/**
@@ -178,7 +178,7 @@ dom_exception dom_html_select_element_get_selected_index(
dom_node *option;
bool selected;
dom_html_options_collection *col;
-
+
err = _dom_html_select_element_make_collection(ele, &col);
err = dom_html_options_collection_get_length(col, &len);
@@ -194,7 +194,7 @@ dom_exception dom_html_select_element_get_selected_index(
dom_html_options_collection_unref(col);
return err;
}
-
+
err = dom_html_option_element_get_selected(
(dom_html_option_element *) option, &selected);
@@ -204,7 +204,7 @@ dom_exception dom_html_select_element_get_selected_index(
dom_html_options_collection_unref(col);
return err;
}
-
+
if (selected) {
*index = idx;
dom_html_options_collection_unref(col);
@@ -228,11 +228,30 @@ dom_exception dom_html_select_element_get_selected_index(
dom_exception dom_html_select_element_set_selected_index(
dom_html_select_element *ele, int32_t index)
{
- UNUSED(ele);
- UNUSED(index);
+ dom_exception err;
+ dom_node *option;
+ dom_html_options_collection *col;
- /** \todo Implement */
- return DOM_NOT_SUPPORTED_ERR;
+ err = _dom_html_select_element_make_collection(ele, &col);
+
+ err = dom_html_options_collection_item(col,
+ index, &option);
+ if (err != DOM_NO_ERR) {
+ dom_html_options_collection_unref(col);
+ return err;
+ }
+
+ err = dom_html_option_element_set_selected(
+ (dom_html_option_element *) option, true);
+
+ dom_node_unref(option);
+
+ dom_html_options_collection_unref(col);
+ if (err != DOM_NO_ERR) {
+ return err;
+ }
+
+ return DOM_NO_ERR;
}
/**
@@ -250,7 +269,7 @@ dom_exception dom_html_select_element_get_value(
dom_node *option;
bool selected;
dom_html_options_collection *col;
-
+
err = _dom_html_select_element_make_collection(ele, &col);
if (err != DOM_NO_ERR)
return err;
@@ -291,7 +310,7 @@ dom_exception dom_html_select_element_get_value(
*value = NULL;
dom_html_options_collection_unref(col);
-
+
return DOM_NO_ERR;
}
@@ -305,11 +324,54 @@ dom_exception dom_html_select_element_get_value(
dom_exception dom_html_select_element_set_value(
dom_html_select_element *ele, dom_string *value)
{
- UNUSED(ele);
- UNUSED(value);
+ dom_exception err;
+ uint32_t idx, len;
+ dom_node *option;
+ bool selected;
+ dom_html_options_collection *col;
+
+ err = _dom_html_select_element_make_collection(ele, &col);
+ if (err != DOM_NO_ERR)
+ return err;
+
+ err = dom_html_select_element_get_length(ele, &len);
+ if (err != DOM_NO_ERR) {
+ dom_html_options_collection_unref(col);
+ return err;
+ }
+
+ for (idx = 0; idx < len; idx++) {
+ err = dom_html_options_collection_item(col,
+ idx, &option);
+ if (err != DOM_NO_ERR) {
+ dom_html_options_collection_unref(col);
+ return err;
+ }
+
+ err = dom_html_option_element_get_selected(
+ (dom_html_option_element *) option, &selected);
+ if (err != DOM_NO_ERR) {
+ dom_html_options_collection_unref(col);
+ dom_node_unref(option);
+ return err;
+ }
+
+ if (selected) {
+ err = dom_html_option_element_set_value(
+ (dom_html_option_element *) option,
+ value);
+
+ dom_html_options_collection_unref(col);
+ dom_node_unref(option);
+
+ return err;
+ }
+ }
+
+ dom_html_options_collection_unref(col);
+
+ return DOM_NO_ERR;
- /** \todo Implement */
- return DOM_NOT_SUPPORTED_ERR;
}
/**
@@ -362,7 +424,7 @@ dom_exception dom_html_select_element_set_length(
* \return DOM_NO_ERR on success, appropriate error otherwise.
*/
dom_exception dom_html_select_element_get_form(
- dom_html_select_element *select, dom_html_form_element **form)
+ dom_html_select_element *select, dom_html_form_element **form)
{
*form = select->form;
@@ -536,12 +598,12 @@ dom_exception dom_html_select_element_set_tab_index(
dom_exception dom__html_select_element_add(dom_html_select_element *select,
struct dom_html_element *ele, struct dom_html_element *before)
{
- UNUSED(select);
- UNUSED(ele);
- UNUSED(before);
- /** \todo Implement */
- return DOM_NOT_SUPPORTED_ERR;
+ return _dom_node_insert_before((dom_node_internal *)select,
+ (dom_node_internal *)ele, (dom_node_internal *)before,
+ (dom_node_internal **)&ele);
+
+
}
dom_exception dom_html_select_element_remove(dom_html_select_element *ele,
@@ -549,6 +611,7 @@ dom_exception dom_html_select_element_remove(dom_html_select_element *ele,
{
dom_exception err;
uint32_t len;
+ dom_node *option;
err = dom_html_select_element_get_length(ele, &len);
if (err != DOM_NO_ERR)
@@ -557,9 +620,22 @@ dom_exception dom_html_select_element_remove(dom_html_select_element *ele,
/* Ensure index is in range */
if (index < 0 || (uint32_t)index >= len)
return DOM_NO_ERR;
+ dom_html_options_collection *col;
- /** \todo What does remove mean? Remove option from tree and destroy it? */
- return DOM_NOT_SUPPORTED_ERR;
+ err = _dom_html_select_element_make_collection(ele, &col);
+ if (err != DOM_NO_ERR)
+ return err;
+
+ err = dom_html_options_collection_item(col,
+ index, &option);
+
+ if (err != DOM_NO_ERR) {
+ dom_html_options_collection_unref(col);
+ return err;
+ }
+ return _dom_node_remove_child(((dom_node_internal *)option)->parent,
+ (dom_node_internal *)option,
+ (dom_node_internal **)&option);
}
/**
@@ -577,9 +653,9 @@ dom_exception dom_html_select_element_blur(struct dom_html_select_element *ele)
/** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
return _dom_dispatch_generic_event((dom_document *) doc,
- (dom_event_target *) ele,
- doc->memoised[hds_blur], true,
- true, &success);
+ (dom_event_target *) ele,
+ doc->memoised[hds_blur], true,
+ true, &success);
}
/**
@@ -597,9 +673,9 @@ dom_exception dom_html_select_element_focus(struct dom_html_select_element *ele)
/** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
return _dom_dispatch_generic_event((dom_document *) doc,
- (dom_event_target *) ele,
- doc->memoised[hds_focus], true,
- true, &success);
+ (dom_event_target *) ele,
+ doc->memoised[hds_focus], true,
+ true, &success);
}
@@ -611,7 +687,7 @@ bool is_option(struct dom_node_internal *node, void *ctx)
{
dom_html_select_element *ele = ctx;
dom_html_document *doc = (dom_html_document *) dom_node_get_owner(ele);
-
+
if (dom_string_isequal(node->name, doc->memoised[hds_OPTION]))
return true;
@@ -619,7 +695,7 @@ bool is_option(struct dom_node_internal *node, void *ctx)
}
dom_exception _dom_html_select_element_set_form(
- dom_html_select_element *select, dom_html_form_element *form)
+ dom_html_select_element *select, dom_html_form_element *form)
{
select->form = form;
diff --git a/src/html/html_style_element.c b/src/html/html_style_element.c
index 3b295f1..681f0b8 100644
--- a/src/html/html_style_element.c
+++ b/src/html/html_style_element.c
@@ -35,7 +35,7 @@ dom_exception _dom_html_style_element_create(struct dom_html_document *doc,
*ele = malloc(sizeof(dom_html_style_element));
if (*ele == NULL)
return DOM_NO_MEM_ERR;
-
+
/* Set up vtables */
node = (struct dom_node_internal *) *ele;
node->base.vtable = &_dom_html_element_vtable;
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/HTMLSelectElement05.xml.int-broken b/test/testcases/tests/level1/html/HTMLSelectElement05.xml.int-broken
deleted file mode 100644
index 16c78e1..0000000
--- a/test/testcases/tests/level1/html/HTMLSelectElement05.xml.int-broken
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/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-3340..."/>
+</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/HTMLSelectElement16.xml.kfail b/test/testcases/tests/level1/html/HTMLSelectElement16.xml.kfail
deleted file mode 100644
index a5e9422..0000000
--- a/test/testcases/tests/level1/html/HTMLSelectElement16.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?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-3340..."/>
-</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-3340..."/>
+</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/HTMLSelectElement17.xml.int-broken b/test/testcases/tests/level1/html/HTMLSelectElement17.xml.int-broken
deleted file mode 100644
index 03549ff..0000000
--- a/test/testcases/tests/level1/html/HTMLSelectElement17.xml.int-broken
+++ /dev/null
@@ -1,43 +0,0 @@
-<?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-3340..."/>
-</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-1449..."/>
+</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/HTMLSelectElement18.xml.kfail b/test/testcases/tests/level1/html/HTMLSelectElement18.xml.kfail
deleted file mode 100644
index aff29d9..0000000
--- a/test/testcases/tests/level1/html/HTMLSelectElement18.xml.kfail
+++ /dev/null
@@ -1,57 +0,0 @@
-<?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-1449..."/>
-</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..5d06fe1
--- /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-1449..."/>
+</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="Node"/>
+<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/HTMLSelectElement19.xml.kfail b/test/testcases/tests/level1/html/HTMLSelectElement19.xml.kfail
deleted file mode 100644
index 2d2a732..0000000
--- a/test/testcases/tests/level1/html/HTMLSelectElement19.xml.kfail
+++ /dev/null
@@ -1,61 +0,0 @@
-<?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-1449..."/>
-</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/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/HTMLSelectElement20.xml.kfail b/test/testcases/tests/level2/html/HTMLSelectElement20.xml.kfail
deleted file mode 100644
index ddbe2f7..0000000
--- a/test/testcases/tests/level2/html/HTMLSelectElement20.xml.kfail
+++ /dev/null
@@ -1,56 +0,0 @@
-<?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/files/select.html b/test/testcases/tests/level2/html/files/select.html
new file mode 100644
index 0000000..7820624
--- /dev/null
+++ b/test/testcases/tests/level2/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/level2/html/files/select.xhtml b/test/testcases/tests/level2/html/files/select.xhtml
new file mode 100644
index 0000000..491a74c
--- /dev/null
+++ b/test/testcases/tests/level2/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/level2/html/files/select.xml b/test/testcases/tests/level2/html/files/select.xml
new file mode 100644
index 0000000..491a74c
--- /dev/null
+++ b/test/testcases/tests/level2/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>
+
commitdiff http://git.netsurf-browser.org/libdom.git/commit/?id=e5a9d8e4e23d2076d228...
commit e5a9d8e4e23d2076d2286dbbac6c26fd1d93569e
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: rsk1994 <rsk1coder99(a)gmail.com>
Style Element
diff --git a/Makefile b/Makefile
index adb8d59..9b47c36 100644
--- a/Makefile
+++ b/Makefile
@@ -129,6 +129,8 @@ INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablecol_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablesection_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_table_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablerow_element.h
+INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_base_element.h
+INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_style_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR)/pkgconfig:lib$(COMPONENT).pc.in
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR):$(OUTPUT)
diff --git a/include/dom/dom.h b/include/dom/dom.h
index 2c312f4..68ae227 100644
--- a/include/dom/dom.h
+++ b/include/dom/dom.h
@@ -89,6 +89,7 @@
#include <dom/html/html_table_element.h>
#include <dom/html/html_tablerow_element.h>
#include <dom/html/html_base_element.h>
+#include <dom/html/html_style_element.h>
/* DOM Events header */
#include <dom/events/events.h>
diff --git a/include/dom/html/html_isindex_element.h b/include/dom/html/html_isindex_element.h
index 4961ccc..966b2d2 100644
--- a/include/dom/html/html_isindex_element.h
+++ b/include/dom/html/html_isindex_element.h
@@ -22,5 +22,10 @@ typedef struct dom_html_isindex_element dom_html_isindex_element;
dom_exception dom_html_isindex_element_get_form(dom_html_isindex_element *ele,
struct dom_html_form_element **form);
+dom_exception dom_html_isindex_element_get_prompt(dom_html_isindex_element *ele,
+ dom_string **prompt);
+
+dom_exception dom_html_isindex_element_set_prompt(dom_html_isindex_element *ele,
+ dom_string *prompt);
#endif
diff --git a/include/dom/html/html_style_element.h b/include/dom/html/html_style_element.h
index 868a043..5b3cd41 100644
--- a/include/dom/html/html_style_element.h
+++ b/include/dom/html/html_style_element.h
@@ -10,6 +10,7 @@
#include <stdbool.h>
#include <dom/core/exceptions.h>
+#include <dom/core/string.h>
typedef struct dom_html_style_element dom_html_style_element;
@@ -19,5 +20,17 @@ dom_exception dom_html_style_element_get_disabled(dom_html_style_element *ele,
dom_exception dom_html_style_element_set_disabled(dom_html_style_element *ele,
bool disabled);
+dom_exception dom_html_style_element_get_media(dom_html_style_element *ele,
+ dom_string **media);
+
+dom_exception dom_html_style_element_set_media(dom_html_style_element *ele,
+ dom_string *media);
+
+dom_exception dom_html_style_element_get_type(dom_html_style_element *ele,
+ dom_string **type);
+
+dom_exception dom_html_style_element_set_type(dom_html_style_element *ele,
+ dom_string *type);
+
#endif
diff --git a/src/html/TODO b/src/html/TODO
index 97eab8e..d817e68 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -9,7 +9,7 @@ HTMLTitleElement html_title_element DONE
HTMLMetaElement html_meta_element DONE
HTMLBaseElement html_base_element DONE
HTMLIsIndexElement html_isindex_element MISSING
-HTMLStyleElement html_style_element MISSING
+HTMLStyleElement html_style_element DONE
HTMLBodyElement html_body_element MISSING
HTMLFormElement html_form_element DONE
HTMLSelectElement html_select_element MISSING
diff --git a/src/html/html_document.c b/src/html/html_document.c
index 25abca3..0e39f77 100644
--- a/src/html/html_document.c
+++ b/src/html/html_document.c
@@ -56,6 +56,7 @@
#include "html/html_tablesection_element.h"
#include "html/html_table_element.h"
#include "html/html_tablerow_element.h"
+#include "html/html_style_element.h"
#include "core/attr.h"
#include "core/string.h"
@@ -361,6 +362,9 @@ _dom_html_document_create_element_internal(dom_html_document *html,
} else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_TD])) {
exc = _dom_html_table_row_element_create(html, namespace, prefix,
(dom_html_table_row_element **) result);
+ } else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_STYLE])) {
+ exc = _dom_html_style_element_create(html,
+ (dom_html_style_element **) result);
} else {
exc = _dom_html_element_create(html, tag_name, namespace,
prefix, result);
diff --git a/src/html/html_document_strings.h b/src/html/html_document_strings.h
index 8ded892..5d5ddaf 100644
--- a/src/html/html_document_strings.h
+++ b/src/html/html_document_strings.h
@@ -105,6 +105,7 @@ HTML_DOCUMENT_STRINGS_ACTION1(scope)
HTML_DOCUMENT_STRINGS_ACTION1(frame)
HTML_DOCUMENT_STRINGS_ACTION1(rules)
HTML_DOCUMENT_STRINGS_ACTION1(summary)
+HTML_DOCUMENT_STRINGS_ACTION1(prompt)
HTML_DOCUMENT_STRINGS_ACTION(tab_index,tabindex)
HTML_DOCUMENT_STRINGS_ACTION(html_for,for)
HTML_DOCUMENT_STRINGS_ACTION(date_time,datetime)
diff --git a/src/html/html_style_element.c b/src/html/html_style_element.c
index 98eb79b..3b295f1 100644
--- a/src/html/html_style_element.c
+++ b/src/html/html_style_element.c
@@ -8,6 +8,7 @@
#include <stdlib.h>
#include "html/html_style_element.h"
+#include "html/html_document.h"
#include "core/node.h"
#include "utils/utils.h"
@@ -54,13 +55,20 @@ dom_exception _dom_html_style_element_initialise(struct dom_html_document *doc,
struct dom_html_style_element *ele)
{
dom_string *name = NULL;
+ dom_string *media_default = NULL;
dom_exception err;
err = dom_string_create((const uint8_t *) "STYLE", SLEN("STYLE"),
&name);
if (err != DOM_NO_ERR)
return err;
+
+ err = dom_string_create((const uint8_t *) "screen", SLEN("screen"),
+ &media_default);
+ if (err != DOM_NO_ERR)
+ return err;
+ ele->media = media_default;
err = _dom_html_element_initialise(doc, &ele->base, name, NULL, NULL);
dom_string_unref(name);
@@ -119,9 +127,49 @@ dom_exception _dom_html_style_element_copy(dom_node_internal *old,
return _dom_html_element_copy(old, copy);
}
+
/*-----------------------------------------------------------------------*/
/* Public APIs */
+#define SIMPLE_GET(attr) \
+ dom_exception dom_html_style_element_get_##attr( \
+ dom_html_style_element *element, \
+ dom_string **attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_get_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+#define SIMPLE_SET(attr) \
+dom_exception dom_html_style_element_set_##attr( \
+ dom_html_style_element *element, \
+ dom_string *attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_set_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+
+#define SIMPLE_GET_SET(attr) SIMPLE_GET(attr) SIMPLE_SET(attr)
+SIMPLE_GET_SET(type);
+SIMPLE_SET(media);
+
/**
* Get the disabled property
*
@@ -150,3 +198,36 @@ dom_exception dom_html_style_element_set_disabled(dom_html_style_element *ele,
SLEN("disabled"), disabled);
}
+/**
+ * Get the media property
+ *
+ * \param ele The dom_html_style_element object
+ * \param media The returned status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_style_element_get_media(dom_html_style_element *ele,
+ dom_string **media)
+{
+ dom_html_document *doc;
+ bool has_value = false;
+ dom_exception err;
+
+ doc = (dom_html_document *) ((dom_node_internal *) ele)->owner;
+
+ err = dom_element_has_attribute(ele,
+ doc->memoised[hds_media], &has_value);
+ if(err !=DOM_NO_ERR)
+ return err;
+
+ if(has_value) {
+ return dom_element_get_attribute(ele,
+ doc->memoised[hds_media], media);
+ }
+
+ *media = ele->media;
+ if (*media != NULL)
+ dom_string_ref(*media);
+ return DOM_NO_ERR;
+
+}
+
diff --git a/src/html/html_style_element.h b/src/html/html_style_element.h
index e7a47e5..285da94 100644
--- a/src/html/html_style_element.h
+++ b/src/html/html_style_element.h
@@ -15,6 +15,8 @@
struct dom_html_style_element {
struct dom_html_element base;
/**< The base class */
+ dom_string *media;
+ /**< The default string value for the media attribute*/
};
/* Create a dom_html_style_element object */
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-6538..."/>
+</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-7384..."/>
+</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/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-5116..."/>
+</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/HTMLStyleElement01.xml.kfail b/test/testcases/tests/level1/html/HTMLStyleElement01.xml.kfail
deleted file mode 100644
index 60c2e57..0000000
--- a/test/testcases/tests/level1/html/HTMLStyleElement01.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-5116..."/>
-</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-7641..."/>
+</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/HTMLStyleElement02.xml.kfail b/test/testcases/tests/level1/html/HTMLStyleElement02.xml.kfail
deleted file mode 100644
index 727df54..0000000
--- a/test/testcases/tests/level1/html/HTMLStyleElement02.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7641..."/>
-</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-2247..."/>
+</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/HTMLStyleElement03.xml.kfail b/test/testcases/tests/level1/html/HTMLStyleElement03.xml.kfail
deleted file mode 100644
index 54394e3..0000000
--- a/test/testcases/tests/level1/html/HTMLStyleElement03.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-2247..."/>
-</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>
commitdiff http://git.netsurf-browser.org/libdom.git/commit/?id=6c6359d20389deea57df...
commit 6c6359d20389deea57df5e28ebd5e2642588215b
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: rsk1994 <rsk1coder99(a)gmail.com>
Base Element
diff --git a/include/dom/dom.h b/include/dom/dom.h
index fb39388..2c312f4 100644
--- a/include/dom/dom.h
+++ b/include/dom/dom.h
@@ -88,6 +88,7 @@
#include <dom/html/html_tablesection_element.h>
#include <dom/html/html_table_element.h>
#include <dom/html/html_tablerow_element.h>
+#include <dom/html/html_base_element.h>
/* DOM Events header */
#include <dom/events/events.h>
diff --git a/include/dom/html/html_base_element.h b/include/dom/html/html_base_element.h
index 5ff28ee..c8283f3 100644
--- a/include/dom/html/html_base_element.h
+++ b/include/dom/html/html_base_element.h
@@ -8,7 +8,23 @@
#ifndef dom_html_base_element_h_
#define dom_html_base_element_h_
+#include <stdbool.h>
+#include <dom/core/exceptions.h>
+#include <dom/core/string.h>
+
typedef struct dom_html_base_element dom_html_base_element;
+dom_exception dom_html_base_element_get_href(
+ dom_html_base_element *element, dom_string **href);
+
+dom_exception dom_html_base_element_set_href(
+ dom_html_base_element *element, dom_string *href);
+
+dom_exception dom_html_base_element_get_target(
+ dom_html_base_element *element, dom_string **target);
+
+dom_exception dom_html_base_element_set_target(
+ dom_html_base_element *element, dom_string *target);
+
#endif
diff --git a/src/html/TODO b/src/html/TODO
index 0a75535..97eab8e 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -4,10 +4,10 @@ as far as the test suite is concerned.
HTMLElement html_element DONE
HTMLHtmlElement html_html_element DONE
HTMLHeadElement html_head_element DONE
-HTMLLinkElement html_link_element MISSING
+HTMLLinkElement html_link_element DONE
HTMLTitleElement html_title_element DONE
-HTMLMetaElement html_meta_element MISSING
-HTMLBaseElement html_base_element MISSING
+HTMLMetaElement html_meta_element DONE
+HTMLBaseElement html_base_element DONE
HTMLIsIndexElement html_isindex_element MISSING
HTMLStyleElement html_style_element MISSING
HTMLBodyElement html_body_element MISSING
diff --git a/src/html/html_base_element.c b/src/html/html_base_element.c
index 150ef37..6be8e3a 100644
--- a/src/html/html_base_element.c
+++ b/src/html/html_base_element.c
@@ -7,6 +7,7 @@
#include <stdlib.h>
+#include "html/html_document.h"
#include "html/html_base_element.h"
#include "core/node.h"
@@ -118,3 +119,45 @@ dom_exception _dom_html_base_element_copy(dom_node_internal *old,
return _dom_html_element_copy(old, copy);
}
+/*-----------------------------------------------------------------------*/
+/* API functions */
+
+#define SIMPLE_GET(attr) \
+ dom_exception dom_html_base_element_get_##attr( \
+ dom_html_base_element *element, \
+ dom_string **attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_get_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+#define SIMPLE_SET(attr) \
+dom_exception dom_html_base_element_set_##attr( \
+ dom_html_base_element *element, \
+ dom_string *attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_set_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+
+#define SIMPLE_GET_SET(attr) SIMPLE_GET(attr) SIMPLE_SET(attr)
+
+SIMPLE_GET_SET(href);
+SIMPLE_GET_SET(target);
diff --git a/test/testcases/tests/level1/html/HTMLBaseElement01.xml.notimpl b/test/testcases/tests/level1/html/HTMLBaseElement01.xml.notimpl
deleted file mode 100644
index fa6eacc..0000000
--- a/test/testcases/tests/level1/html/HTMLBaseElement01.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6538..."/>
-</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.notimpl b/test/testcases/tests/level1/html/HTMLBaseElement02.xml.notimpl
deleted file mode 100644
index d2a20a5..0000000
--- a/test/testcases/tests/level1/html/HTMLBaseElement02.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7384..."/>
-</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>
commitdiff http://git.netsurf-browser.org/libdom.git/commit/?id=c0ed79aea3739d40d7f4...
commit c0ed79aea3739d40d7f41eb13a8b30403a2383cc
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: rsk1994 <rsk1coder99(a)gmail.com>
tableSectionElement Rev.2 && tableCellElement Rev.4 && tableElement Rev.1 && tableRowElement Rev.1 && DOMTSHandler(Test Suite) Revised and implemented inefficient ways to produce correct .c's && other minor bg fixes in HTMLCollection... Tests expecting 2nd attribute of dom_html_collection_get_length to be of type int32_t aren't enabled yet. Will be done in a later commit.
diff --git a/Makefile b/Makefile
index 0745e10..adb8d59 100644
--- a/Makefile
+++ b/Makefile
@@ -127,6 +127,8 @@ INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablecaption_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablecell_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablecol_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablesection_element.h
+INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_table_element.h
+INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablerow_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR)/pkgconfig:lib$(COMPONENT).pc.in
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR):$(OUTPUT)
diff --git a/include/dom/dom.h b/include/dom/dom.h
index 071ca2c..fb39388 100644
--- a/include/dom/dom.h
+++ b/include/dom/dom.h
@@ -86,6 +86,8 @@
#include <dom/html/html_tablecell_element.h>
#include <dom/html/html_tablecol_element.h>
#include <dom/html/html_tablesection_element.h>
+#include <dom/html/html_table_element.h>
+#include <dom/html/html_tablerow_element.h>
/* DOM Events header */
#include <dom/events/events.h>
diff --git a/include/dom/html/html_table_element.h b/include/dom/html/html_table_element.h
index 2e182d5..6fcd7ed 100644
--- a/include/dom/html/html_table_element.h
+++ b/include/dom/html/html_table_element.h
@@ -3,5 +3,128 @@
* Licensed under the MIT License,
* http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
*/
+#ifndef dom_html_table_element_h_
+#define dom_html_table_element_h_
+
+#include <stdbool.h>
+#include <dom/core/exceptions.h>
+#include <dom/core/string.h>
+
+#include<dom/html/html_element.h>
+#include<dom/html/html_tablecaption_element.h>
+#include<dom/html/html_tablesection_element.h>
+#include<dom/html/html_tablerow_element.h>
+
+typedef struct dom_html_table_element dom_html_table_element;
+
+dom_exception dom_html_table_element_get_caption(
+ dom_html_table_element *element, dom_html_table_caption_element **caption);
+
+dom_exception dom_html_table_element_set_caption(
+ dom_html_table_element *element, dom_html_table_caption_element *caption);
+
+dom_exception dom_html_table_element_get_t_head(
+ dom_html_table_element *element, dom_html_table_section_element **t_head);
+
+dom_exception dom_html_table_element_set_t_head(
+ dom_html_table_element *element, dom_html_table_section_element *t_head);
+
+dom_exception dom_html_table_element_get_t_foot(
+ dom_html_table_element *element, dom_html_table_section_element **t_foot);
+
+dom_exception dom_html_table_element_set_t_foot(
+ dom_html_table_element *element, dom_html_table_section_element *t_foot);
+
+dom_exception dom_html_table_element_get_rows(
+ dom_html_table_element *element, dom_html_collection **rows);
+
+dom_exception dom_html_table_element_get_t_bodies(
+ dom_html_table_element *element, dom_html_collection **t_bodies);
+
+dom_exception dom_html_table_element_get_align(
+ dom_html_table_element *table, dom_string **align);
+
+dom_exception dom_html_table_element_set_align(
+ dom_html_table_element *table, dom_string *align);
+
+dom_exception dom_html_table_element_get_bg_color(
+ dom_html_table_element *table, dom_string **bg_color);
+
+dom_exception dom_html_table_element_set_bg_color(
+ dom_html_table_element *table, dom_string *bg_color);
+
+dom_exception dom_html_table_element_get_border(
+ dom_html_table_element *table, dom_string **border);
+
+dom_exception dom_html_table_element_set_border(
+ dom_html_table_element *table, dom_string *border);
+
+dom_exception dom_html_table_element_get_cell_padding(
+ dom_html_table_element *table, dom_string **cell_padding);
+
+dom_exception dom_html_table_element_set_cell_padding(
+ dom_html_table_element *table, dom_string *cell_padding);
+
+dom_exception dom_html_table_element_get_cell_spacing(
+ dom_html_table_element *table, dom_string **cell_spacing);
+
+dom_exception dom_html_table_element_set_cell_spacing(
+ dom_html_table_element *table, dom_string *cell_spacing);
+
+dom_exception dom_html_table_element_get_frame(
+ dom_html_table_element *table, dom_string **frame);
+
+dom_exception dom_html_table_element_set_frame(
+ dom_html_table_element *table, dom_string *frame);
+
+dom_exception dom_html_table_element_get_rules(
+ dom_html_table_element *table, dom_string **rules);
+
+dom_exception dom_html_table_element_set_rules(
+ dom_html_table_element *table, dom_string *rules);
+
+dom_exception dom_html_table_element_get_summary(
+ dom_html_table_element *table, dom_string **summary);
+
+dom_exception dom_html_table_element_set_summary(
+ dom_html_table_element *table, dom_string *summary);
+
+dom_exception dom_html_table_element_get_width(
+ dom_html_table_element *table, dom_string **width);
+
+dom_exception dom_html_table_element_set_width(
+ dom_html_table_element *table, dom_string *width);
+
+dom_exception dom_html_table_element_create_caption(
+ dom_html_table_element *element,
+ dom_html_element **caption);
+
+dom_exception dom_html_table_element_delete_caption(
+ dom_html_table_element *element);
+
+dom_exception dom_html_table_element_create_t_head(
+ dom_html_table_element *element,
+ dom_html_element **t_head);
+
+dom_exception dom_html_table_element_delete_t_head(
+ dom_html_table_element *element);
+
+dom_exception dom_html_table_element_create_t_foot(
+ dom_html_table_element *element,
+ dom_html_element **t_foot);
+
+dom_exception dom_html_table_element_delete_t_foot(
+ dom_html_table_element *element);
+
+dom_exception dom_html_table_element_insert_row(
+ dom_html_table_element *element,
+ int32_t index, dom_html_element **row);
+
+dom_exception dom_html_table_element_delete_row(
+ dom_html_table_element *element,
+ int32_t index);
+
+#endif
diff --git a/include/dom/html/html_tablerow_element.h b/include/dom/html/html_tablerow_element.h
index 2e182d5..897e243 100644
--- a/include/dom/html/html_tablerow_element.h
+++ b/include/dom/html/html_tablerow_element.h
@@ -3,5 +3,67 @@
* Licensed under the MIT License,
* http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
*/
+#ifndef dom_html_table_row_element_h_
+#define dom_html_table_row_element_h_
+
+#include <stdbool.h>
+#include <dom/core/exceptions.h>
+#include <dom/core/string.h>
+
+#include<dom/html/html_element.h>
+#include<dom/html/html_collection.h>
+
+typedef struct dom_html_table_row_element dom_html_table_row_element;
+
+dom_exception dom_html_table_row_element_get_align(
+ dom_html_table_row_element *table, dom_string **align);
+
+dom_exception dom_html_table_row_element_set_align(
+ dom_html_table_row_element *table, dom_string *align);
+
+dom_exception dom_html_table_row_element_get_bg_color(
+ dom_html_table_row_element *table, dom_string **bg_color);
+
+dom_exception dom_html_table_row_element_set_bg_color(
+ dom_html_table_row_element *table, dom_string *bg_color);
+
+dom_exception dom_html_table_row_element_get_ch(
+ dom_html_table_row_element *table, dom_string **ch);
+
+dom_exception dom_html_table_row_element_set_ch(
+ dom_html_table_row_element *table, dom_string *ch);
+
+dom_exception dom_html_table_row_element_get_ch_off(
+ dom_html_table_row_element *table, dom_string **ch_off);
+
+dom_exception dom_html_table_row_element_set_ch_off(
+ dom_html_table_row_element *table, dom_string *ch_off);
+
+dom_exception dom_html_table_row_element_get_v_align(
+ dom_html_table_row_element *table, dom_string **v_align);
+
+dom_exception dom_html_table_row_element_set_v_align(
+ dom_html_table_row_element *table, dom_string *v_align);
+
+dom_exception dom_html_table_row_element_get_row_index(
+ dom_html_table_row_element *table, int32_t *index);
+
+dom_exception dom_html_table_row_element_get_section_row_index(
+ dom_html_table_row_element *table_row, int32_t *section_row_index);
+
+dom_exception dom_html_table_row_element_get_cells(
+ dom_html_table_row_element *element,
+ dom_html_collection **cells);
+
+dom_exception dom_html_table_row_element_delete_cell(
+ dom_html_table_row_element *element,
+ int32_t index);
+
+dom_exception dom_html_table_row_element_insert_cell(
+ dom_html_table_row_element *element,
+ int32_t index, dom_html_element **cell);
+
+#endif
diff --git a/include/dom/html/html_tablesection_element.h b/include/dom/html/html_tablesection_element.h
index e3b0065..bceec18 100644
--- a/include/dom/html/html_tablesection_element.h
+++ b/include/dom/html/html_tablesection_element.h
@@ -16,6 +16,8 @@
#include <dom/html/html_collection.h>
#include <dom/html/html_element.h>
+#include <dom/html/html_tablerow_element.h>
+
typedef struct dom_html_table_section_element dom_html_table_section_element;
dom_exception dom_html_table_section_element_get_align(
@@ -47,7 +49,7 @@ dom_exception dom_html_table_section_element_get_rows(
dom_exception dom_html_table_section_element_insert_row(
dom_html_table_section_element *element,
- int32_t index, dom_html_element **newRow);
+ int32_t index, dom_html_element **new_row);
dom_exception dom_html_table_section_element_delete_row(
dom_html_table_section_element *element,
diff --git a/src/html/Makefile b/src/html/Makefile
index 8fc029d..8c20362 100644
--- a/src/html/Makefile
+++ b/src/html/Makefile
@@ -16,11 +16,11 @@ DIR_SOURCES := \
html_basefont_element.c html_image_element.c html_object_element.c \
html_param_element.c html_applet_element.c html_area_element.c \
html_map_element.c html_script_element.c html_tablecaption_element.c \
- html_tablecell_element.c html_tablecol_element.c html_tablesection_element.c
+ html_tablecell_element.c html_tablecol_element.c html_tablesection_element.c \
+ html_table_element.c html_tablerow_element.c
UNINMPLEMENTED_SOURCES := \
- html_table_element.c \
- html_tablerow_element.c html_frameset_element.c \
+ html_frameset_element.c \
html_frame_element.c html_iframe_element.c
include $(NSBUILD)/Makefile.subdir
diff --git a/src/html/TODO b/src/html/TODO
index 50e905c..0a75535 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -46,11 +46,11 @@ HTMLAppletElement html_applet_element DONE
HTMLMapElement html_map_element DONE
HTMLAreaElement html_area_element DONE
HTMLScriptElement html_script_element DONE
-HTMLTableElement html_table_element MISSING
+HTMLTableElement html_table_element DONE
HTMLTableCaptionElement html_tablecaption_element DONE
HTMLTableColElement html_tablecol_element DONE
HTMLTableSectionElement html_tablesection_element DONE
-HTMLTableRowElement html_tablerow_element MISSING
+HTMLTableRowElement html_tablerow_element DONE
HTMLTableCellElement html_tablecell_element DONE
HTMLFrameSetElement html_frameset_element MISSING
HTMLFrameElement html_frame_element MISSING
diff --git a/src/html/html_collection.c b/src/html/html_collection.c
index fb801d9..2b4d8aa 100644
--- a/src/html/html_collection.c
+++ b/src/html/html_collection.c
@@ -132,7 +132,7 @@ dom_exception dom_html_collection_get_length(dom_html_collection *col,
/* No children and siblings */
struct dom_node_internal *parent = node->parent;
- while (parent != col->root &&
+ while (node != col->root &&
node == parent->last_child) {
node = parent;
parent = parent->parent;
diff --git a/src/html/html_document.c b/src/html/html_document.c
index 692dd98..25abca3 100644
--- a/src/html/html_document.c
+++ b/src/html/html_document.c
@@ -54,6 +54,8 @@
#include "html/html_tablecell_element.h"
#include "html/html_tablecol_element.h"
#include "html/html_tablesection_element.h"
+#include "html/html_table_element.h"
+#include "html/html_tablerow_element.h"
#include "core/attr.h"
#include "core/string.h"
@@ -350,9 +352,15 @@ _dom_html_document_create_element_internal(dom_html_document *html,
(dom_html_table_col_element **) result);
} else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_THEAD])||
dom_string_caseless_isequal(tag_name, html->memoised[hds_TBODY])||
- dom_string_caseless_isequal(tag_name, html->memoised[hds_TBODY])) {
+ dom_string_caseless_isequal(tag_name, html->memoised[hds_TFOOT])) {
exc = _dom_html_table_section_element_create(html, tag_name, namespace, prefix,
(dom_html_table_section_element **) result);
+ } else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_TABLE])) {
+ exc = _dom_html_table_element_create(html, namespace, prefix,
+ (dom_html_table_element **) result);
+ } else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_TD])) {
+ exc = _dom_html_table_row_element_create(html, namespace, prefix,
+ (dom_html_table_row_element **) result);
} else {
exc = _dom_html_element_create(html, tag_name, namespace,
prefix, result);
diff --git a/src/html/html_document_strings.h b/src/html/html_document_strings.h
index 38b0004..8ded892 100644
--- a/src/html/html_document_strings.h
+++ b/src/html/html_document_strings.h
@@ -102,6 +102,9 @@ HTML_DOCUMENT_STRINGS_ACTION1(abbr)
HTML_DOCUMENT_STRINGS_ACTION1(axis)
HTML_DOCUMENT_STRINGS_ACTION1(headers)
HTML_DOCUMENT_STRINGS_ACTION1(scope)
+HTML_DOCUMENT_STRINGS_ACTION1(frame)
+HTML_DOCUMENT_STRINGS_ACTION1(rules)
+HTML_DOCUMENT_STRINGS_ACTION1(summary)
HTML_DOCUMENT_STRINGS_ACTION(tab_index,tabindex)
HTML_DOCUMENT_STRINGS_ACTION(html_for,for)
HTML_DOCUMENT_STRINGS_ACTION(date_time,datetime)
@@ -112,6 +115,8 @@ HTML_DOCUMENT_STRINGS_ACTION(value_type,valuetype)
HTML_DOCUMENT_STRINGS_ACTION(v_align,valign)
HTML_DOCUMENT_STRINGS_ACTION(ch,char)
HTML_DOCUMENT_STRINGS_ACTION(ch_off,charoff)
+HTML_DOCUMENT_STRINGS_ACTION(cell_padding,cellpadding)
+HTML_DOCUMENT_STRINGS_ACTION(cell_spacing,cellspacing)
/* HTML_DOCUMENT_STRINGS_ACTION1(type) */
HTML_DOCUMENT_STRINGS_ACTION(use_map,usemap)
/* HTML_DOCUMENT_STRINGS_ACTION1(value) */
diff --git a/src/html/html_table_element.c b/src/html/html_table_element.c
index 2e182d5..fc96c23 100644
--- a/src/html/html_table_element.c
+++ b/src/html/html_table_element.c
@@ -3,5 +3,745 @@
* Licensed under the MIT License,
* http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar<rsk1coder99(a)gmail.com>
*/
+#include <assert.h>
+#include <stdlib.h>
+
+#include <dom/html/html_table_element.h>
+
+#include "html/html_document.h"
+#include "html/html_table_element.h"
+#include "html/html_tablecaption_element.h"
+#include "html/html_tablesection_element.h"
+#include "html/html_tablerow_element.h"
+#include "html/html_collection.h"
+
+#include "core/node.h"
+#include "core/attr.h"
+#include "utils/utils.h"
+
+static struct dom_element_protected_vtable _protect_vtable = {
+ {
+ DOM_NODE_PROTECT_VTABLE_HTML_TABLE_ELEMENT
+ },
+ DOM_HTML_TABLE_ELEMENT_PROTECT_VTABLE
+};
+
+/**
+ * Create a dom_html_table_element object
+ *
+ * \param doc The document object
+ * \param ele The returned element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception _dom_html_table_element_create(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_table_element **ele)
+{
+ struct dom_node_internal *node;
+
+ *ele = malloc(sizeof(dom_html_table_element));
+ if (*ele == NULL)
+ return DOM_NO_MEM_ERR;
+
+ /* Set up vtables */
+ node = (struct dom_node_internal *) *ele;
+ node->base.vtable = &_dom_html_element_vtable;
+ node->vtable = &_protect_vtable;
+
+ return _dom_html_table_element_initialise(doc, namespace, prefix, *ele);
+}
+
+/**
+ * Initialise a dom_html_table_element object
+ *
+ * \param doc The document object
+ * \param ele The dom_html_table_element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception _dom_html_table_element_initialise(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_table_element *ele)
+{
+ ele->caption = NULL;
+ ele->t_head = NULL;
+ ele->t_foot = NULL;
+ return _dom_html_element_initialise(doc, &ele->base,
+ doc->memoised[hds_TABLE],
+ namespace, prefix);
+}
+
+/**
+ * Finalise a dom_html_table_element object
+ *
+ * \param ele The dom_html_table_element object
+ */
+void _dom_html_table_element_finalise(struct dom_html_table_element *ele)
+{
+ _dom_html_element_finalise(&ele->base);
+}
+
+/**
+ * Destroy a dom_html_table_element object
+ *
+ * \param ele The dom_html_table_element object
+ */
+void _dom_html_table_element_destroy(struct dom_html_table_element *ele)
+{
+ _dom_html_table_element_finalise(ele);
+ free(ele);
+}
+
+/*------------------------------------------------------------------------*/
+/* The protected virtual functions */
+
+/* The virtual function used to parse attribute value, see src/core/element.c
+ * for detail */
+dom_exception _dom_html_table_element_parse_attribute(dom_element *ele,
+ dom_string *name, dom_string *value,
+ dom_string **parsed)
+{
+ UNUSED(ele);
+ UNUSED(name);
+
+ dom_string_ref(value);
+ *parsed = value;
+
+ return DOM_NO_ERR;
+}
+
+/* The virtual destroy function, see src/core/node.c for detail */
+void _dom_virtual_html_table_element_destroy(dom_node_internal *node)
+{
+ _dom_html_table_element_destroy((struct dom_html_table_element *) node);
+}
+
+/* The virtual copy function, see src/core/node.c for detail */
+dom_exception _dom_html_table_element_copy(dom_node_internal *old,
+ dom_node_internal **copy)
+{
+ return _dom_html_element_copy(old, copy);
+}
+
+/*-----------------------------------------------------------------------*/
+/* API functions */
+
+#define SIMPLE_GET(attr) \
+ dom_exception dom_html_table_element_get_##attr( \
+ dom_html_table_element *element, \
+ dom_string **attr) \
+{ \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)-> \
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_get_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+}
+#define SIMPLE_SET(attr) \
+ dom_exception dom_html_table_element_set_##attr( \
+ dom_html_table_element *element, \
+ dom_string *attr) \
+{ \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)-> \
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_set_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+}
+
+#define SIMPLE_GET_SET(attr) SIMPLE_GET(attr) SIMPLE_SET(attr)
+SIMPLE_GET_SET(align);
+SIMPLE_GET_SET(bg_color);
+SIMPLE_GET_SET(border);
+SIMPLE_GET_SET(cell_padding);
+SIMPLE_GET_SET(cell_spacing);
+SIMPLE_GET_SET(frame);
+SIMPLE_GET_SET(rules);
+SIMPLE_GET_SET(summary);
+SIMPLE_GET_SET(width);
+
+/**
+ * Get the caption Attribute
+ *
+ * \param table The dom_html_table_element object
+ */
+dom_exception dom_html_table_element_get_caption(
+ dom_html_table_element *table, dom_html_table_caption_element **caption)
+{
+ dom_node_internal *node_tmp = ((dom_node_internal *)table);
+ dom_html_document *doc = (dom_html_document *)(node_tmp->owner);
+
+ if(table->caption == NULL) {
+ for (node_tmp = node_tmp->first_child; node_tmp != NULL; node_tmp = node_tmp->next) {
+ if((node_tmp->type == DOM_ELEMENT_NODE) &&
+ dom_string_caseless_isequal(doc->memoised[hds_CAPTION],node_tmp->name)) {
+ break;
+ }
+ }
+ table->caption = (dom_html_table_caption_element *)node_tmp;
+ }
+ *caption = (table->caption);
+ return DOM_NO_ERR;
+}
+
+/**
+ * Set the caption Attribute
+ *
+ * \param table The dom_html_table_element object
+ * \param table The dom_html_table_element object
+ */
+dom_exception dom_html_table_element_set_caption(
+ dom_html_table_element *table, dom_html_table_caption_element *caption)
+{
+ dom_node_internal *check_node = ((dom_node_internal *)caption);
+ dom_html_document *doc = (dom_html_document *)(((dom_node_internal *)table)->owner);
+ if(check_node == NULL) {
+ return DOM_HIERARCHY_REQUEST_ERR;
+ }
+ if(!dom_string_caseless_isequal(doc->memoised[hds_CAPTION],check_node->name)) {
+ return DOM_HIERARCHY_REQUEST_ERR;
+ }
+ table->caption = caption;
+ return DOM_NO_ERR;
+}
+
+/**
+ * Get the t_head Attribute
+ *
+ * \param table The dom_html_table_element object
+ */
+dom_exception dom_html_table_element_get_t_head(
+ dom_html_table_element *table, dom_html_table_section_element **t_head)
+{
+ dom_node_internal *node_tmp = ((dom_node_internal *)table);
+ dom_html_document *doc = (dom_html_document *)(node_tmp->owner);
+
+ if(table->t_head == NULL) {
+ for (node_tmp = node_tmp->first_child; node_tmp != NULL; node_tmp = node_tmp->next) {
+ if((node_tmp->type == DOM_ELEMENT_NODE) &&
+ dom_string_caseless_isequal(doc->memoised[hds_THEAD],node_tmp->name)) {
+ break;
+ }
+ }
+ table->t_head = (dom_html_table_section_element *)node_tmp;
+ }
+ *t_head = table->t_head;
+ return DOM_NO_ERR;
+}
+
+/**
+ * Set the t_head Attribute
+ *
+ * \param table The dom_html_table_element object
+ * \param table The dom_html_table_element object
+ */
+dom_exception dom_html_table_element_set_t_head(
+ dom_html_table_element *table, dom_html_table_section_element *t_head)
+{
+ dom_node_internal *check_node = ((dom_node_internal *)t_head);
+ dom_html_document *doc = (dom_html_document *)(((dom_node_internal *)table)->owner);
+ if(check_node == NULL) {
+ return DOM_HIERARCHY_REQUEST_ERR;
+ }
+ if(!dom_string_caseless_isequal(doc->memoised[hds_CAPTION],check_node->name)) {
+ return DOM_HIERARCHY_REQUEST_ERR;
+ }
+ table->t_head = t_head;
+ return DOM_NO_ERR;
+}
+
+/**
+ * Get the t_foot Attribute
+ *
+ * \param table The dom_html_table_element object
+ */
+dom_exception dom_html_table_element_get_t_foot(
+ dom_html_table_element *table, dom_html_table_section_element **t_foot)
+{
+ dom_node_internal *node_tmp = ((dom_node_internal *)table);
+ dom_html_document *doc = (dom_html_document *)(node_tmp->owner);
+
+ if(table->t_foot == NULL) {
+ for (node_tmp = node_tmp->first_child; node_tmp != NULL; node_tmp = node_tmp->next) {
+ if((node_tmp->type == DOM_ELEMENT_NODE) &&
+ dom_string_caseless_isequal(doc->memoised[hds_TFOOT],node_tmp->name)) {
+ break;
+ }
+ }
+ table->t_foot = (dom_html_table_section_element *)node_tmp;
+ }
+ *t_foot = (table->t_foot);
+ return DOM_NO_ERR;
+}
+
+/**
+ * Set the t_foot Attribute
+ *
+ * \param table The dom_html_table_element object
+ */
+dom_exception dom_html_table_element_set_t_foot(
+ dom_html_table_element *table, dom_html_table_section_element *t_foot)
+{
+ dom_node_internal *check_node = ((dom_node_internal *)t_foot); /*< temporary node to check for raised exceptions */
+ dom_html_document *doc = (dom_html_document *)(((dom_node_internal *)table)->owner);
+ if(check_node == NULL) {
+ return DOM_HIERARCHY_REQUEST_ERR;
+ }
+ if(!dom_string_caseless_isequal(doc->memoised[hds_TFOOT],check_node->name)) {
+ return DOM_HIERARCHY_REQUEST_ERR;
+ }
+ table->t_foot = t_foot;
+ return DOM_NO_ERR;
+}
+
+/**
+ * Callback for creating the rows collection
+ *
+ * \param node The dom_html_table_element object
+ * \param ctx The dom_html_document object (void *)
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+bool table_rows_callback(struct dom_node_internal *node, void *ctx)
+{
+ if(node->type == DOM_ELEMENT_NODE &&
+ dom_string_caseless_isequal(node->name,
+ ((dom_html_document *)ctx)->memoised[hds_TR])) {
+ return true;
+ }
+ return false;
+}
+
+/**
+ * Get the rows collection
+ *
+ * \param element The dom_html_table_element object
+ * \param rows The Status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_element_get_rows(
+ dom_html_table_element *element,
+ dom_html_collection **rows)
+{
+ dom_html_document *doc = (dom_html_document *) ((dom_node_internal *) element)->owner;
+ return _dom_html_collection_create(doc, (dom_node_internal *)element,
+ table_rows_callback, (void *)doc, rows);
+}
+
+/**
+ * Callback for creating the tbodies collection
+ *
+ * \param node The dom_html_table_element object
+ * \param ctx The dom_html_document object (void *)
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+bool table_t_bodies_callback(struct dom_node_internal *node, void *ctx)
+{
+ if(node->type == DOM_ELEMENT_NODE &&
+ dom_string_caseless_isequal(node->name,
+ ((dom_html_document *)ctx)->memoised[hds_TBODY])) {
+ return true;
+ }
+ return false;
+}
+
+/**
+ * Get the tBodies collection
+ *
+ * \param element The dom_html_table_element object
+ * \param t_bodies The Status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_element_get_t_bodies(
+ dom_html_table_element *element,
+ dom_html_collection **t_bodies)
+{
+ dom_html_document *doc = (dom_html_document *) ((dom_node_internal *) element)->owner;
+ return _dom_html_collection_create(doc, (dom_node_internal *)element,
+ table_t_bodies_callback, (void *)doc, t_bodies);
+}
+
+/**
+ * Get or Create the table caption
+ *
+ * \param element The dom_html_table_element object
+ * \param caption The Status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_element_create_caption(
+ dom_html_table_element *element,
+ dom_html_element **caption)
+{
+ dom_exception exp;
+ if((exp = dom_html_table_element_get_caption(element,
+ (dom_html_table_caption_element **)caption)) != DOM_NO_ERR) {
+ return exp;
+ }
+ if((*caption) == NULL) {
+ dom_html_document *doc = (dom_html_document *)
+ ((dom_node_internal *) element)->owner;
+ exp = _dom_html_table_caption_element_create(doc,
+ ((dom_node_internal *)element)->namespace,
+ ((dom_node_internal *)element)->prefix,
+ (dom_html_table_caption_element **)caption);
+ if(exp != DOM_NO_ERR) {
+ return exp;
+ }
+ _dom_node_append_child((dom_node_internal *)element,
+ (dom_node_internal *)*caption,
+ (dom_node_internal **)caption);
+ element->caption = (dom_html_table_caption_element *)*caption;
+
+ }
+ return DOM_NO_ERR;
+}
+
+/**
+ * Delete the table caption, if one exists
+ *
+ * \param element The dom_html_table_element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_element_delete_caption(
+ dom_html_table_element *element)
+{
+ dom_html_table_caption_element *caption;
+ dom_html_table_element_get_caption(element, &caption);
+ _dom_node_remove_child((dom_node_internal *)element,
+ (dom_node_internal *)caption,
+ (dom_node_internal **)&caption);
+ element->caption = NULL;
+ return DOM_NO_ERR;
+}
+
+/**
+ * Get or Create the table Foot
+ *
+ * \param element The dom_html_table_element object
+ * \param t_foot The Status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_element_create_t_foot(
+ dom_html_table_element *element,
+ dom_html_element **t_foot)
+{
+ dom_exception exp;
+ exp = dom_html_table_element_get_t_foot(element,
+ (dom_html_table_section_element **)t_foot);
+ if(exp !=DOM_NO_ERR) {
+ return exp;
+ }
+ if((*t_foot) == NULL) {
+ dom_html_document *doc = (dom_html_document *)
+ ((dom_node_internal *) element)->owner;
+ exp = _dom_html_table_section_element_create(doc,
+ doc->memoised[hds_TFOOT],
+ ((dom_node_internal *)element)->namespace,
+ ((dom_node_internal *)element)->prefix,
+ (dom_html_table_section_element **)t_foot);
+ if(exp != DOM_NO_ERR) {
+ return exp;
+ }
+ _dom_node_append_child((dom_node_internal *)element,
+ (dom_node_internal *)*t_foot,
+ (dom_node_internal **)t_foot);
+ element->t_foot = (dom_html_table_section_element *)*t_foot;
+
+ }
+ return DOM_NO_ERR;
+}
+
+/**
+ * Delete the table Foot, if one exists
+ *
+ * \param element The dom_html_table_element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_element_delete_t_foot(
+ dom_html_table_element *element)
+{
+ dom_html_table_section_element *t_foot;
+ dom_html_table_element_get_t_foot(element, &t_foot);
+ _dom_node_remove_child((dom_node_internal *)element,
+ (dom_node_internal *)t_foot,
+ (dom_node_internal **)&t_foot);
+ element->t_foot = NULL;
+ return DOM_NO_ERR;
+}
+
+/**
+ * Get or Create the table Head
+ *
+ * \param element The dom_html_table_element object
+ * \param t_head The Status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_element_create_t_head(
+ dom_html_table_element *element,
+ dom_html_element **t_head)
+{
+ dom_html_table_element_get_t_head(element,
+ (dom_html_table_section_element **)t_head);
+ if((*t_head) == NULL) {
+ dom_exception exp;
+ dom_html_document *doc = (dom_html_document *)
+ ((dom_node_internal *) element)->owner;
+ exp = _dom_html_table_section_element_create(doc,
+ doc->memoised[hds_THEAD],
+ ((dom_node_internal *)element)->namespace,
+ ((dom_node_internal *)element)->prefix,
+ (dom_html_table_section_element **)t_head);
+ if(exp != DOM_NO_ERR) {
+ return exp;
+ }
+ _dom_node_append_child((dom_node_internal *)element,
+ (dom_node_internal *)*t_head,
+ (dom_node_internal **)t_head);
+ element->t_head = (dom_html_table_section_element *)*t_head;
+
+ }
+ return DOM_NO_ERR;
+}
+
+/**
+ * Delete the table Head, if one exists
+ *
+ * \param element The dom_html_table_element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_element_delete_t_head(
+ dom_html_table_element *element)
+{
+ dom_html_table_section_element *t_head;
+ dom_html_table_element_get_t_head(element, &t_head);
+ _dom_node_remove_child((dom_node_internal *)element,
+ (dom_node_internal *)t_head,
+ (dom_node_internal **)&t_head);
+ element->t_head = NULL;
+ return DOM_NO_ERR;
+}
+
+/**
+ * Get or Create the table Body
+ *
+ * \param element The dom_html_table_element object
+ * \param t_head The Status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_element_create_t_body(
+ dom_html_table_element *element,
+ dom_html_table_section_element **t_body)
+{
+ dom_html_collection *t_bodies;
+ uint32_t len;
+ dom_html_table_element_get_t_bodies(element,
+ &t_bodies);
+ dom_html_collection_get_length(t_bodies,
+ &len);
+
+ if(len == 0) {
+ dom_exception exp;
+ dom_html_document *doc = (dom_html_document *)
+ ((dom_node_internal *) element)->owner;
+ exp = _dom_html_table_section_element_create(doc,
+ doc->memoised[hds_TBODY],
+ ((dom_node_internal *)element)->namespace,
+ ((dom_node_internal *)element)->prefix,
+ t_body);
+ if(exp != DOM_NO_ERR) {
+ return exp;
+ }
+ return _dom_node_append_child((dom_node_internal *)element,
+ (dom_node_internal *)*t_body,
+ (dom_node_internal **)t_body);
+
+ } else {
+ return dom_html_collection_item(t_bodies,
+ 0, (dom_node **)t_body);
+ }
+ return DOM_NO_ERR;
+}
+/**
+ * Insert a new Row into the table
+ *
+ * \param element The dom_html_table_element object
+ * \param index The Index to insert the Row
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_element_insert_row(
+ dom_html_table_element *element,
+ int32_t index,
+ dom_html_element **row)
+{
+ dom_exception exp;
+ dom_html_collection* rows;
+ uint32_t len;
+ dom_html_document *doc = (dom_html_document *)
+ ((dom_node_internal *) element)->owner;
+
+ exp = dom_html_table_element_get_rows(element,
+ &rows);
+ if(exp != DOM_NO_ERR) {
+ return exp;
+ }
+ exp = dom_html_collection_get_length(rows,
+ &len);
+
+ exp = _dom_html_table_row_element_create(doc,
+ ((dom_node_internal *)element)->namespace,
+ ((dom_node_internal *)element)->prefix,
+ (dom_html_table_row_element **)row);
+ if(exp != DOM_NO_ERR) {
+ return exp;
+ }
+
+ if((uint32_t)index > len || index < -1) {
+ return DOM_INDEX_SIZE_ERR;
+ } else if(len == 0) {
+ dom_html_table_section_element *new_body;
+ exp = dom_html_table_element_create_t_body(element,
+ &new_body);
+ if(exp != DOM_NO_ERR) {
+ return exp;
+ }
+
+ return _dom_node_append_child((dom_node_internal *)new_body,
+ (dom_node_internal *)*row,
+ (dom_node_internal **)row);
+
+ } else {
+ if(index ==-1) {
+ index = (int32_t)len;
+ }
+
+ dom_html_collection* rows;
+ dom_html_table_section_element *t_head;
+ dom_html_table_section_element *t_foot;
+ uint32_t window_len = 0, section_len;
+
+ dom_html_table_element_get_t_head(element, &t_head);
+ dom_html_table_section_element_get_rows(t_head, &rows);
+ dom_html_collection_get_length(rows, §ion_len);
+
+ if(window_len + section_len > (uint32_t)index ||
+ window_len + section_len == len) {
+ return dom_html_table_section_element_insert_row(t_head,
+ index-window_len, row);
+ }
+
+ window_len += section_len;
+
+ dom_node_internal *n = (dom_node_internal *)element;
+
+ for (n = n->first_child; n != NULL; n = n->next) {
+ if((n->type == DOM_ELEMENT_NODE) &&
+ dom_string_caseless_isequal(doc->memoised[hds_TBODY],n->name)) {
+
+ dom_html_table_section_element_get_rows((dom_html_table_section_element *)n, &rows);
+ dom_html_collection_get_length(rows, §ion_len);
+
+ if(window_len + section_len > (uint32_t)index ||
+ window_len + section_len == len) {
+ return dom_html_table_section_element_insert_row(
+ (dom_html_table_section_element *)n,
+ index-window_len, row);
+ }
+
+ window_len += section_len;
+ }
+ }
+ dom_html_table_element_get_t_foot(element, &t_foot);
+ dom_html_table_section_element_get_rows(t_foot, &rows);
+ dom_html_collection_get_length(rows, §ion_len);
+ if(window_len + section_len > (uint32_t)index ||
+ window_len +section_len == len) {
+ return dom_html_table_section_element_insert_row(t_foot,
+ index-window_len, row);
+ }
+ return DOM_INDEX_SIZE_ERR;
+ }
+}
+/**
+ * Delete the table Head, if one exists
+ *
+ * \param element The dom_html_table_element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_element_delete_row(
+ dom_html_table_element *element,
+ int32_t index)
+{
+ dom_exception exp;
+ dom_html_collection* rows;
+ uint32_t len;
+ dom_html_document *doc = (dom_html_document *)
+ ((dom_node_internal *) element)->owner;
+
+ exp = dom_html_table_element_get_rows(element,
+ &rows);
+ if(exp != DOM_NO_ERR) {
+ return exp;
+ }
+ exp = dom_html_collection_get_length(rows,
+ &len);
+
+ if(exp != DOM_NO_ERR) {
+ return exp;
+ }
+
+ if((uint32_t)index >= len || index < -1 || len ==0) {
+ return DOM_INDEX_SIZE_ERR;
+ } else {
+ if(index ==-1) {
+ index = (int32_t)len-1;
+ }
+ dom_html_collection* rows;
+ dom_html_table_section_element *t_head;
+ dom_html_table_section_element *t_foot;
+ uint32_t window_len = 0, section_len;
+ dom_html_table_element_get_t_head(element, &t_head);
+ dom_html_table_section_element_get_rows(t_head, &rows);
+ dom_html_collection_get_length(rows, §ion_len);
+ if(window_len + section_len > (uint32_t)index) {
+ return dom_html_table_section_element_delete_row(t_head,
+ index-window_len);
+ }
+ window_len += section_len;
+ dom_node_internal *n = (dom_node_internal *)element;
+ for (n = n->first_child; n != NULL; n = n->next) {
+ if((n->type == DOM_ELEMENT_NODE) &&
+ dom_string_caseless_isequal(doc->memoised[hds_TBODY],n->name)) {
+ dom_html_table_section_element_get_rows((dom_html_table_section_element *)n, &rows);
+ dom_html_collection_get_length(rows, §ion_len);
+ if(window_len + section_len > (uint32_t)index) {
+ return dom_html_table_section_element_delete_row(
+ (dom_html_table_section_element *)n,
+ index-window_len);
+ }
+ window_len += section_len;
+ }
+ }
+ exp = dom_html_table_element_get_t_foot(element, &t_foot);
+ dom_html_table_section_element_get_rows(t_foot, &rows);
+ dom_html_collection_get_length(rows, §ion_len);
+ if(window_len + section_len > (uint32_t)index) {
+ return dom_html_table_section_element_delete_row(t_foot,
+ index-window_len);
+ }
+ return DOM_INDEX_SIZE_ERR;
+ }
+
+}
diff --git a/src/html/html_table_element.h b/src/html/html_table_element.h
index 2e182d5..caabbe8 100644
--- a/src/html/html_table_element.h
+++ b/src/html/html_table_element.h
@@ -3,5 +3,61 @@
* Licensed under the MIT License,
* http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
*/
+#ifndef dom_internal_html_table_element_h_
+#define dom_internal_html_table_element_h_
+
+#include <dom/html/html_table_element.h>
+#include "html/html_element.h"
+
+struct dom_html_table_element {
+ struct dom_html_element base;
+ /**< The base class */
+ dom_html_table_caption_element* caption;
+ /**< The caption associated with the table*/
+ dom_html_table_section_element* t_head;
+ /**< The thead element associated with the table*/
+ dom_html_table_section_element* t_foot;
+ /**< The tfoot element associated with the table*/
+};
+
+/* Create a dom_html_table_element object */
+dom_exception _dom_html_table_element_create(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_table_element **ele);
+
+/* Initialise a dom_html_table_element object */
+dom_exception _dom_html_table_element_initialise(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_table_element *ele);
+
+/* Finalise a dom_html_table_element object */
+void _dom_html_table_element_finalise(struct dom_html_table_element *ele);
+
+/* Destroy a dom_html_table_element object */
+void _dom_html_table_element_destroy(struct dom_html_table_element *ele);
+
+/* The protected virtual functions */
+dom_exception _dom_html_table_element_parse_attribute(dom_element *ele,
+ dom_string *name, dom_string *value,
+ dom_string **parsed);
+void _dom_virtual_html_table_element_destroy(dom_node_internal *node);
+dom_exception _dom_html_table_element_copy(dom_node_internal *old,
+ dom_node_internal **copy);
+
+#define DOM_HTML_TABLE_ELEMENT_PROTECT_VTABLE \
+ _dom_html_table_element_parse_attribute
+
+#define DOM_NODE_PROTECT_VTABLE_HTML_TABLE_ELEMENT \
+ _dom_virtual_html_table_element_destroy, \
+ _dom_html_table_element_copy
+
+#endif
+
+bool table_rows_callback(struct dom_node_internal *node, void *ctx);
+bool table_t_bodies_callback(struct dom_node_internal *node, void *ctx);
+dom_exception dom_html_table_element_create_t_body(
+ dom_html_table_element *element,
+ dom_html_table_section_element **t_body);
diff --git a/src/html/html_tablecell_element.c b/src/html/html_tablecell_element.c
index f8eaf01..cc596c1 100644
--- a/src/html/html_tablecell_element.c
+++ b/src/html/html_tablecell_element.c
@@ -191,6 +191,7 @@ dom_exception dom_html_table_cell_element_get_cell_index(
}
n = n->parent;
}
+ dom_node_internal *root = n;
while(n != NULL) {
if(n == (dom_node_internal *)table_cell) {
break;
@@ -207,18 +208,16 @@ dom_exception dom_html_table_cell_element_get_cell_index(
} else {
/* No children and siblings */
struct dom_node_internal *parent = n->parent;
-
- while (parent !=NULL) {
- if(n == parent->last_child) {
- n = parent;
- parent = parent->parent;
- } else {
- break;
- }
-
+ while (n == parent->last_child &&
+ n != root) {
+ n = parent;
+ parent = parent->parent;
}
- if(parent == NULL) {
+
+ if(n == root) {
n = NULL;
+ } else {
+ n = n->next;
}
}
}
diff --git a/src/html/html_tablerow_element.c b/src/html/html_tablerow_element.c
index 2e182d5..35f9dc2 100644
--- a/src/html/html_tablerow_element.c
+++ b/src/html/html_tablerow_element.c
@@ -3,5 +3,373 @@
* Licensed under the MIT License,
* http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
*/
+#include <assert.h>
+#include <stdlib.h>
+
+#include <dom/html/html_tablerow_element.h>
+#include <dom/html/html_table_element.h>
+
+#include "html/html_document.h"
+#include "html/html_tablerow_element.h"
+#include "html/html_collection.h"
+
+#include "core/node.h"
+#include "core/attr.h"
+#include "utils/utils.h"
+
+static struct dom_element_protected_vtable _protect_vtable = {
+ {
+ DOM_NODE_PROTECT_VTABLE_HTML_TABLE_ROW_ELEMENT
+ },
+ DOM_HTML_TABLE_ROW_ELEMENT_PROTECT_VTABLE
+};
+
+/**
+ * Create a dom_html_table_row_element table_row
+ *
+ * \param doc The document table_row
+ * \param ele The returned element table_row
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception _dom_html_table_row_element_create(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_table_row_element **ele)
+{
+ struct dom_node_internal *node;
+
+ *ele = malloc(sizeof(dom_html_table_row_element));
+ if (*ele == NULL)
+ return DOM_NO_MEM_ERR;
+
+ /* Set up vtables */
+ node = (struct dom_node_internal *) *ele;
+ node->base.vtable = &_dom_html_element_vtable;
+ node->vtable = &_protect_vtable;
+
+ return _dom_html_table_row_element_initialise(doc, namespace, prefix, *ele);
+}
+
+/**
+ * Initialise a dom_html_table_row_element table_row
+ *
+ * \param doc The document table_row
+ * \param ele The dom_html_table_row_element table_row
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception _dom_html_table_row_element_initialise(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_table_row_element *ele)
+{
+ return _dom_html_element_initialise(doc, &ele->base,
+ doc->memoised[hds_TR],
+ namespace, prefix);
+}
+
+/**
+ * Finalise a dom_html_table_row_element table_row
+ *
+ * \param ele The dom_html_table_row_element table_row
+ */
+void _dom_html_table_row_element_finalise(struct dom_html_table_row_element *ele)
+{
+ _dom_html_element_finalise(&ele->base);
+}
+
+/**
+ * Destroy a dom_html_table_row_element table_row
+ *
+ * \param ele The dom_html_table_row_element table_row
+ */
+void _dom_html_table_row_element_destroy(struct dom_html_table_row_element *ele)
+{
+ _dom_html_table_row_element_finalise(ele);
+ free(ele);
+}
+
+/*------------------------------------------------------------------------*/
+/* The protected virtual functions */
+
+/* The virtual function used to parse attribute value, see src/core/element.c
+ * for detail */
+dom_exception _dom_html_table_row_element_parse_attribute(dom_element *ele,
+ dom_string *name, dom_string *value,
+ dom_string **parsed)
+{
+ UNUSED(ele);
+ UNUSED(name);
+
+ dom_string_ref(value);
+ *parsed = value;
+
+ return DOM_NO_ERR;
+}
+
+/* The virtual destroy function, see src/core/node.c for detail */
+void _dom_virtual_html_table_row_element_destroy(dom_node_internal *node)
+{
+ _dom_html_table_row_element_destroy((struct dom_html_table_row_element *) node);
+}
+
+/* The virtual copy function, see src/core/node.c for detail */
+dom_exception _dom_html_table_row_element_copy(dom_node_internal *old,
+ dom_node_internal **copy)
+{
+ return _dom_html_element_copy(old, copy);
+}
+
+/*-----------------------------------------------------------------------*/
+/* API functions */
+
+#define SIMPLE_GET(attr) \
+ dom_exception dom_html_table_row_element_get_##attr( \
+ dom_html_table_row_element *element, \
+ dom_string **attr) \
+{ \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_get_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+}
+#define SIMPLE_SET(attr) \
+ dom_exception dom_html_table_row_element_set_##attr( \
+ dom_html_table_row_element *element, \
+ dom_string *attr) \
+{ \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_set_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+}
+
+#define SIMPLE_GET_SET(attr) SIMPLE_GET(attr) SIMPLE_SET(attr)
+
+SIMPLE_GET_SET(align);
+SIMPLE_GET_SET(bg_color);
+SIMPLE_GET_SET(ch);
+SIMPLE_GET_SET(ch_off);
+SIMPLE_GET_SET(v_align);
+
+/**
+ * Get the index of the Row in logical order
+ *
+ * \param element The dom_html_table_row_element object
+ * \param index The Status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_row_element_get_row_index(
+ dom_html_table_row_element *table_row, int32_t *row_index)
+{
+ dom_node_internal *n = ((dom_node_internal *)table_row)->parent;
+ dom_node_internal *parent = n;
+ dom_html_document *doc = (dom_html_document *) ((dom_node_internal *) table_row)->owner;
+ uint32_t count = 0;
+ for(n = n->first_child; n != (dom_node_internal *)table_row;
+ n = n->next) {
+ if(n->type == DOM_ELEMENT_NODE &&
+ dom_string_caseless_isequal(n->name,doc->memoised[hds_TR])) {
+ count += 1;
+ }
+ }
+
+ if(dom_string_caseless_isequal((parent->parent)->name, doc->memoised[hds_TABLE]) &&
+ dom_string_caseless_isequal(parent->name, doc->memoised[hds_THEAD])
+ ) {
+ *row_index = count;
+ }else if(dom_string_caseless_isequal((parent->parent)->name, doc->memoised[hds_TABLE]) &&
+ (dom_string_caseless_isequal(parent->name, doc->memoised[hds_TBODY]) ||
+ dom_string_caseless_isequal(parent->name, doc->memoised[hds_TFOOT]))) {
+ uint32_t len;
+ n = parent->parent;
+ dom_html_table_section_element *t_head;
+ dom_html_collection *rows;
+ dom_html_table_element_get_t_head(
+ (dom_html_table_element *)(parent->parent),
+ &t_head);
+ dom_html_table_section_element_get_rows(t_head,
+ &rows);
+ dom_html_collection_get_length(rows,
+ &len);
+ count += len;
+ for(n = n->first_child;n != parent && n != NULL;
+ n = n->next) {
+ if(dom_string_caseless_isequal(n->name, doc->memoised[hds_TBODY])) {
+ dom_html_table_section_element_get_rows(
+ (dom_html_table_section_element *)n,
+ &rows);
+ dom_html_collection_get_length(rows, &len);
+ count += len;
+ }
+ }
+ *row_index = (int32_t)count;
+
+ } else {
+ return DOM_HIERARCHY_REQUEST_ERR;
+ }
+ return DOM_NO_ERR;
+}
+
+/**
+ * Get the index of a row within its Section
+ *
+ * \param element The dom_html_table_row_element object
+ * \param index The Status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_row_element_get_section_row_index(
+ dom_html_table_row_element *table_row, int32_t *section_row_index)
+{
+ dom_node_internal *n = ((dom_node_internal *)table_row)->parent;
+ dom_html_document *doc = (dom_html_document *) ((dom_node_internal *) table_row)->owner;
+ int32_t count = 0;
+ for(n = n->first_child; n != (dom_node_internal *)table_row;
+ n = n->next) {
+ if(n->type == DOM_ELEMENT_NODE &&
+ dom_string_caseless_isequal(n->name, doc->memoised[hds_TR])) {
+ count += 1;
+ }
+ }
+ *section_row_index = count;
+ return DOM_NO_ERR;
+}
+
+/**
+ * Callback for creating the Cells collection
+ *
+ * \param node The dom_node_internal object
+ * \param ctx The dom_html_document object (void *)
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+bool table_cells_callback(struct dom_node_internal *node, void *ctx)
+{
+ if(node->type == DOM_ELEMENT_NODE &&
+ dom_string_caseless_isequal(node->name,
+ ((dom_html_document *)ctx)->memoised[hds_TD])) {
+ return true;
+ }
+ return false;
+}
+
+/**
+ * Get the Cells collection
+ *
+ * \param element The dom_html_table_element object
+ * \param t_bodies The Status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_row_element_get_cells(
+ dom_html_table_row_element *element,
+ dom_html_collection **cells)
+{
+ dom_html_document *doc = (dom_html_document *) ((dom_node_internal *) element)->owner;
+ return _dom_html_collection_create(doc, (dom_node_internal *)element,
+ table_cells_callback, (void *)doc, cells);
+}
+
+/**
+ * Insert Cell before the given Index
+ *
+ * \param element The dom_html_table_row_element object
+ * \param index The Index of the Cell node to be inserted
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_row_element_insert_cell(
+ dom_html_table_row_element *element,
+ int32_t index, dom_html_element **cell) {
+ dom_html_document *doc = (dom_html_document *) ((dom_node_internal *) element)->owner;
+
+ dom_node *node; /*< The node at the (index)th position*/
+
+ dom_html_collection *cells; /*< The collection of cells in input table_row_element*/
+ uint32_t len; /*< The size of the cell collection */
+ dom_exception exp; /*< Variable for getting the exceptions*/
+ exp = _dom_html_element_create(doc, doc->memoised[hds_TD],
+ ((dom_node_internal *)element)->namespace,
+ ((dom_node_internal *)element)->prefix,
+ cell);
+ if(exp != DOM_NO_ERR)
+ return exp;
+
+ exp = dom_html_table_row_element_get_cells(element, &cells);
+ if(exp != DOM_NO_ERR)
+ return exp;
+
+ exp = dom_html_collection_get_length(cells, &len);
+ if(exp != DOM_NO_ERR)
+ return exp;
+
+ if(index < -1 || (uint32_t)index > len) {
+ /* Check for index validity */
+ return DOM_INDEX_SIZE_ERR;
+ } else if(index == -1 || (uint32_t)index == len) {
+ return _dom_node_append_child((dom_node_internal *)element,
+ (dom_node_internal *)*cell,
+ (dom_node_internal **)cell);
+ } else {
+ dom_html_collection_item(cells,
+ index, &node);
+ return _dom_node_insert_before((dom_node_internal *)element,
+ (dom_node_internal *)*cell, (dom_node_internal *)node,
+ (dom_node_internal **)cell);
+ }
+}
+
+/**
+ * Delete Cell at given Index
+ *
+ * \param element The dom_html_table_row_element object
+ * \param index The Index of the Cell node to be deleted
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_table_row_element_delete_cell(
+ dom_html_table_row_element *element,
+ int32_t index) {
+ dom_node *node; /*< The node at the (index)th position*/
+
+ dom_html_collection *cells; /*< The collection of rows in input table_row_element*/
+ uint32_t len; /*< The size of the row collection */
+
+ dom_exception exp; /*< Temporary variable to store & check the exceptions*/
+
+ exp = dom_html_table_row_element_get_cells(element, &cells);
+ if(exp != DOM_NO_ERR) {
+ return exp;
+ }
+
+ exp = dom_html_collection_get_length(cells, &len);
+ if(exp != DOM_NO_ERR) {
+ return exp;
+ }
+
+ if(index < -1 || (uint32_t)index >= len || len ==0) {
+ /* Check for index validity */
+ return DOM_INDEX_SIZE_ERR;
+ } else if(index == -1) {
+ exp = dom_html_collection_item(cells,
+ len-1, &node);
+ } else {
+ exp = dom_html_collection_item(cells,
+ index, &node);
+ }
+ return _dom_node_remove_child((dom_node_internal *)element,
+ (dom_node_internal *)node,
+ (dom_node_internal **)&node);
+
+}
+
diff --git a/src/html/html_tablerow_element.h b/src/html/html_tablerow_element.h
index 2e182d5..2401790 100644
--- a/src/html/html_tablerow_element.h
+++ b/src/html/html_tablerow_element.h
@@ -3,5 +3,51 @@
* Licensed under the MIT License,
* http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
*/
+#ifndef dom_internal_html_table_row_element_h_
+#define dom_internal_html_table_row_element_h_
+
+#include <dom/html/html_tablerow_element.h>
+#include "html/html_element.h"
+
+struct dom_html_table_row_element {
+ struct dom_html_element base;
+ /**< The base class */
+};
+
+/* Create a dom_html_table_row_element object */
+dom_exception _dom_html_table_row_element_create(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_table_row_element **ele);
+
+/* Initialise a dom_html_table_row_element object */
+dom_exception _dom_html_table_row_element_initialise(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_table_row_element *ele);
+
+/* Finalise a dom_html_table_row_element object */
+void _dom_html_table_row_element_finalise(struct dom_html_table_row_element *ele);
+
+/* Destroy a dom_html_table_row_element object */
+void _dom_html_table_row_element_destroy(struct dom_html_table_row_element *ele);
+
+/* The protected virtual functions */
+dom_exception _dom_html_table_row_element_parse_attribute(dom_element *ele,
+ dom_string *name, dom_string *value,
+ dom_string **parsed);
+void _dom_virtual_html_table_row_element_destroy(dom_node_internal *node);
+dom_exception _dom_html_table_row_element_copy(dom_node_internal *old,
+ dom_node_internal **copy);
+
+#define DOM_HTML_TABLE_ROW_ELEMENT_PROTECT_VTABLE \
+ _dom_html_table_row_element_parse_attribute
+
+#define DOM_NODE_PROTECT_VTABLE_HTML_TABLE_ROW_ELEMENT \
+ _dom_virtual_html_table_row_element_destroy, \
+ _dom_html_table_row_element_copy
+
+#endif
+bool table_cells_callback(struct dom_node_internal *node, void *ctx);
+
diff --git a/src/html/html_tablesection_element.c b/src/html/html_tablesection_element.c
index 7468d01..7baf53c 100644
--- a/src/html/html_tablesection_element.c
+++ b/src/html/html_tablesection_element.c
@@ -12,6 +12,7 @@
#include "html/html_document.h"
#include "html/html_tablesection_element.h"
+#include "html/html_tablerow_element.h"
#include "html/html_collection.h"
#include "html/html_element.h"
@@ -169,8 +170,7 @@ bool table_section_callback(struct dom_node_internal *node, void *ctx)
{
if(node->type == DOM_ELEMENT_NODE &&
dom_string_caseless_isequal(node->name,
- ((dom_html_document *)ctx)->memoised[hds_TR]))
- {
+ ((dom_html_document *)ctx)->memoised[hds_TR])) {
return true;
}
return false;
@@ -179,7 +179,7 @@ bool table_section_callback(struct dom_node_internal *node, void *ctx)
/**
* Get the rows collection
*
- * \param element The dom_html_section_element object
+ * \param element The dom_html_table_section_element object
* \param rows The Status
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
@@ -188,21 +188,20 @@ dom_exception dom_html_table_section_element_get_rows(
dom_html_collection **rows)
{
dom_html_document *doc = (dom_html_document *) ((dom_node_internal *) element)->owner;
- _dom_html_collection_create(doc, (dom_node_internal *)element,
+ return _dom_html_collection_create(doc, (dom_node_internal *)element,
table_section_callback, (void *)doc, rows);
- return DOM_NO_ERR;
}
/**
* Insert Row before the given Index
*
- * \param element The dom_html_section_element object
+ * \param element The dom_html_table_section_element object
* \param index The Index of the Row node to be inserted
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
dom_exception dom_html_table_section_element_insert_row(
dom_html_table_section_element *element,
- int32_t index, dom_html_element **newRow) {
+ int32_t index, dom_html_element **new_row) {
dom_html_document *doc = (dom_html_document *) ((dom_node_internal *) element)->owner;
dom_node *node; /*< The node at the (index)th position*/
@@ -210,10 +209,10 @@ dom_exception dom_html_table_section_element_insert_row(
dom_html_collection *rows; /*< The collection of rows in input table_section_element*/
uint32_t len; /*< The size of the row collection */
dom_exception exp; /*< Variable for getting the exceptions*/
- exp = _dom_html_element_create(doc, doc->memoised[hds_TR],
+ exp = _dom_html_table_row_element_create(doc,
((dom_node_internal *)element)->namespace,
((dom_node_internal *)element)->prefix,
- newRow);
+ (dom_html_table_row_element **)new_row);
if(exp != DOM_NO_ERR)
return exp;
@@ -228,44 +227,23 @@ dom_exception dom_html_table_section_element_insert_row(
if(index < -1 || (uint32_t)index > len) {
/* Check for index validity */
return DOM_INDEX_SIZE_ERR;
- } else if((index == -1 || (uint32_t)index == len)
- &&len != 0) {
- dom_html_collection_item(rows,
- len-1, &node);
-
- dom_node_internal *internal_node = (dom_node_internal *)node; /*< The dom_node_internal row object at the (len-1)th position*/
-
- ((dom_node_internal *) *newRow)->next = internal_node->next;
- ((dom_node_internal *) *newRow)->previous = internal_node;
- internal_node->next = (dom_node_internal *)*newRow;
- } else if(len != 0) {
+ } else if(index == -1 || (uint32_t)index == len) {
+ return _dom_node_append_child((dom_node_internal *)element,
+ (dom_node_internal *)*new_row,
+ (dom_node_internal **)new_row);
+ } else {
dom_html_collection_item(rows,
index, &node);
-
- dom_node_internal *internal_node = (dom_node_internal *)node; /*< The dom_node_internal row object at the (index)th position*/
-
- ((dom_node_internal *) *newRow)->next = internal_node;
- ((dom_node_internal *) *newRow)->previous = internal_node->previous;
- if(internal_node->previous != NULL) {
- (internal_node->previous)->next = (dom_node_internal *)*newRow;
- internal_node->previous = (dom_node_internal *)*newRow;
- }
+ return _dom_node_insert_before((dom_node_internal *)element,
+ (dom_node_internal *)*new_row, (dom_node_internal *)node,
+ (dom_node_internal **)new_row);
}
-
- /*Adjust parent's pointers*/
- ((dom_node_internal *) *newRow)->parent = (dom_node_internal *)element;
- if(index == 0)
- ((dom_node_internal *)element)->first_child = (dom_node_internal *)*newRow;
- if((uint32_t)index == len)
- ((dom_node_internal *)element)->last_child = (dom_node_internal *)*newRow;
-
- return DOM_NO_ERR;
}
/**
* Delete Row at given Index
*
- * \param element The dom_html_section_element object
+ * \param element The dom_html_table_section_element object
* \param index The Index of the Row node to be deleted
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
@@ -299,20 +277,9 @@ dom_exception dom_html_table_section_element_delete_row(
exp = dom_html_collection_item(rows,
index, &node);
}
- if(exp != DOM_NO_ERR)
- return exp;
-
- dom_node_internal *internal_node = (dom_node_internal *)node;
-
- /*Fixing the sibling pointers*/
- if(internal_node->previous != NULL) {
- (internal_node->previous)->next = internal_node->next;
- }
- if(internal_node->next != NULL) {
- (internal_node->next)->previous = internal_node->previous;
- }
-
- _dom_html_element_destroy(internal_node);
+ exp = _dom_node_remove_child((dom_node_internal *)element,
+ (dom_node_internal *)node,
+ (dom_node_internal **)&node);
return DOM_NO_ERR;
}
diff --git a/src/html/html_tablesection_element.h b/src/html/html_tablesection_element.h
index fcab1cb..387882a 100644
--- a/src/html/html_tablesection_element.h
+++ b/src/html/html_tablesection_element.h
@@ -10,8 +10,8 @@
#define dom_internal_html_table_section_element_h_
#include <dom/html/html_tablesection_element.h>
-#include "html/html_element.h"
+#include "html/html_element.h"
struct dom_html_table_section_element {
struct dom_html_element base;
diff --git a/test/DOMTSHandler.pm b/test/DOMTSHandler.pm
index 78d5e7e..8953047 100644
--- a/test/DOMTSHandler.pm
+++ b/test/DOMTSHandler.pm
@@ -44,6 +44,10 @@ our %special_type = (
CDATASection => "dom_cdata_section *",
HTMLAnchorElement => "dom_html_anchor_element *",
HTMLElement => "dom_html_element *",
+ HTMLTableCaptionElement => "dom_html_table_caption_element *",
+ HTMLTableSectionElement => "dom_html_table_section_element *",
+ HTMLTableElement => "dom_html_table_element *",
+ HTMLTableRowElement => "dom_html_table_row_element *",
);
our %special_prefix = (
DOMString => "dom_string",
@@ -57,6 +61,20 @@ our %special_prefix = (
HTMLHRElement => "dom_html_hr_element",
HTMLBRElement => "dom_html_br_element",
HTMLLIElement => "dom_html_li_element",
+ HTMLTableCaptionElement => "dom_html_table_caption_element",
+ HTMLTableSectionElement => "dom_html_table_section_element",
+ HTMLIsIndexElement => "dom_html_isindex_element",
+ caption => "dom_html_table_caption_element *",
+ section => "dom_html_table_section_element *",
+ createCaption => "dom_html_element *",
+ createTHead => "dom_html_element *",
+ createTFoot => "dom_html_element *",
+ deleteCaption => "dom_html_element *",
+ deleteTHead => "dom_html_element *",
+ deleteTFoot => "dom_html_element *",
+ insertRow => "dom_html_element *",
+ deleteRow => "dom_html_element *",
+ form => "dom_html_form_element *",
);
our %unref_prefix = (
@@ -164,10 +182,14 @@ sub new {
# The name of the current List/Collection
list_name => "",
# The number of items of the current List/Collection
+ list_last_name => [],
+ # The number of items of the current List/Collection
list_num => 0,
# Whether List/Collection has members
list_hasmem => 0,
# The type of the current List/Collection
+ member_list_declared => 0,
+ # The type of the current List/Collection
list_type => "",
# Whether we are in exception assertion
exception => 0,
@@ -389,6 +411,7 @@ int main(int argc, char **argv)
perror("chdir (\\"$self->{chdir})\\"");
return 1;
}
+ int list_temp[100], count = -1;
__EOF__
}
@@ -442,7 +465,6 @@ sub generate_list {
# Yes, we are in List/Collection declaration
# Firstly, enclose the Array declaration
print "};\n";
-
# Now, we should create the list * for the List/Collection
# Note, we should deal with "int" or "string" type with different params.
if ($self->{"list_type"} eq "char *") {
@@ -450,18 +472,37 @@ sub generate_list {
}
if ($self->{"list_type"} eq "int *") {
print $self->{"list_name"}." = list_new(INT);\n";
+ while(defined ($x = pop @{$self->{"list_last_name"}})) {
+ print $x." = list_new(INT);\n";
+ }
}
+ while(defined($x = pop(@{$self->{"list_last_name"}}))) {
+ print $x." = list_new(DOM_STRING);\n";
+ }
+ $self->{"member_list_declared"} = 1;
if ($self->{"list_type"} eq "") {
die "A List/Collection has children member but no type is impossible!";
}
- for (my $i = 0; $i < $self->{"list_num"}; $i++) {
- # Use *(char **) to convert char *[] to char *
- print "list_add(".$self->{"list_name"}.", *(char **)(".$self->{"list_name"}."Array + $i));\n";
+ if ($self->{"list_type"} eq "int *") {
+
+ for (my $i = 0; $i < $self->{"list_num"}; $i++) {
+ # Use *(char **) to convert char *[] to char *
+ print "list_add(".$self->{"list_name"}.", (int *)(".$self->{"list_name"}."Array) + $i);\n";
+ }
+ } else {
+ for (my $i = 0; $i < $self->{"list_num"}; $i++) {
+ # Use *(char **) to convert char *[] to char *
+ print "list_add(".$self->{"list_name"}.", *(char **)(".$self->{"list_name"}."Array + $i));\n";
+ }
}
} else {
if ($self->{"list_name"} ne "") {
#TODO: generally, we set the list type as dom_string, but it may be dom_node
- print $self->{"list_name"}." = list_new(DOM_STRING);\n";
+ if( $self->{"member_list_declared"} eq 1) {
+ print $self->{"list_name"}." = list_new(DOM_STRING);\n";
+ } else {
+ push(@{$self->{"list_last_name"}}, $self->{"list_name"});
+ }
$self->{"list_type"} = "DOMString";
}
}
@@ -553,14 +594,19 @@ sub generate_framework_statement {
if (exists $ats->{"obj"}) {
$obj = $ats->{"obj"};
} else {
- $obj = $ats->{"item"}
+ $obj = $ats->{"item"};
}
-
+
if (not $self->{"var"}->{$col} =~ /^(List|Collection)/) {
die "Append data to some non-list type!";
}
-
- print "list_add($col, $obj);\n";
+ $type = $self->{"var"}->{$obj};
+ if ($type eq "int") {
+ print "\nlist_temp[++count] =$obj;\n";
+ print "list_add($col, &list_temp[count]);\n\n";
+ } else {
+ print "list_add($col, $obj);\n";
+ }
}
case [qw(plus subtract mult divide)] {
@@ -681,6 +727,8 @@ sub generate_method {
$method = to_cmethod($ats{'interface'}, $en);
my $cast = to_attribute_cast($ats{'interface'});
+ my $get_attribute = $node->getAttribute("name");
+ my $cast_get_attribute = to_get_attribute_cast($get_attribute);
my $ns = $dd->find("parameters/param", $node);
my $params = "${cast}$ats{'obj'}";
for ($count = 1; $count <= $ns->size; $count++) {
@@ -746,7 +794,7 @@ sub generate_method {
# Indicate that we have created a temp node
$temp_node = 1;
} else {
- $params = $params.", (void *) \&$ats{'var'}";
+ $params = $params.", $cast_get_attribute\&$ats{'var'}";
$unref = $self->param_unref($ats{'var'});
}
}
@@ -808,6 +856,8 @@ sub generate_attribute_fetcher {
my $fetcher = to_attribute_fetcher($ats{'interface'}, "$en");
my $cast = to_attribute_cast($ats{'interface'});
+ my $get_attribute = $node->getAttribute("name");
+ my $cast_get_attribute = to_get_attribute_cast($get_attribute);
my $unref = 0;
my $temp_node = 0;
# Deal with the situation like
@@ -833,7 +883,7 @@ sub generate_attribute_fetcher {
$temp_node = 1;
} else {
$unref = $self->param_unref($ats{'var'});
- print "\texp = $fetcher(${cast}$ats{'obj'}, \&$ats{'var'});\n";
+ print "\texp = $fetcher(${cast}$ats{'obj'}, ${cast_get_attribute}\&$ats{'var'});\n";
}
@@ -1424,7 +1474,26 @@ sub get_prefix {
}
return $prefix;
}
+sub to_get_attribute_cast {
+ my $type = shift;
+ my $ret = get_get_attribute_prefix($type);
+ if($ret eq "") {
+ return $ret;
+ }
+ $ret =~ s/h_t_m_l/html/;
+ return "(${ret} *)";
+}
+sub get_get_attribute_prefix {
+ my $type = shift;
+
+ if (exists $special_prefix{$type}) {
+ $prefix = $special_prefix{$type};
+ } else {
+ $prefix = "";
+ }
+ return $prefix;
+}
# This function remain unsed
sub get_suffix {
my $type = shift;
diff --git a/test/testcases/tests/level1/html/HTMLCollection01.xml.notimpl b/test/testcases/tests/level1/html/HTMLCollection01.xml.notimpl
deleted file mode 100644
index fd2cfe4..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection01.xml.notimpl
+++ /dev/null
@@ -1,49 +0,0 @@
-<?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-3326..."/>
-</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.kfail b/test/testcases/tests/level1/html/HTMLCollection02.xml.kfail
deleted file mode 100644
index 521d5ae..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection02.xml.kfail
+++ /dev/null
@@ -1,49 +0,0 @@
-<?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-7672..."/>
-</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.kfail b/test/testcases/tests/level1/html/HTMLCollection03.xml.kfail
deleted file mode 100644
index 36d489e..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection03.xml.kfail
+++ /dev/null
@@ -1,49 +0,0 @@
-<?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-2106..."/>
-</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.kfail b/test/testcases/tests/level1/html/HTMLCollection04.xml.kfail
new file mode 100644
index 0000000..5d78405
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection04.xml.kfail
@@ -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-4005..."/>
+</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.kfail b/test/testcases/tests/level1/html/HTMLCollection05.xml.kfail
new file mode 100644
index 0000000..ffb7d13
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection05.xml.kfail
@@ -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-4005..."/>
+</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/HTMLCollection09.xml.kfail b/test/testcases/tests/level1/html/HTMLCollection09.xml.kfail
new file mode 100644
index 0000000..f81e7af
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection09.xml.kfail
@@ -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-3326..."/>
+</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/HTMLCollection12.xml.kfail b/test/testcases/tests/level1/html/HTMLCollection12.xml.kfail
new file mode 100644
index 0000000..d7feb3d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection12.xml.kfail
@@ -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-2106..."/>
+</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/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-1459..."/>
+</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/HTMLTableElement01.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement01.xml.kfail
deleted file mode 100644
index 7135fd7..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement01.xml.kfail
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-1459..."/>
-</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-1459..."/>
+</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/HTMLTableElement02.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement02.xml.kfail
deleted file mode 100644
index fb9fa8f..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement02.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-1459..."/>
-</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/HTMLTableElement03.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement03.xml.kfail
deleted file mode 100644
index 0b59fe6..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement03.xml.kfail
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/HTMLTableElement04.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement04.xml.kfail
deleted file mode 100644
index 1e254b3..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement04.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6419..."/>
+</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/HTMLTableElement05.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement05.xml.kfail
deleted file mode 100644
index 15de11c..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement05.xml.kfail
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6419..."/>
-</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-6419..."/>
+</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/HTMLTableElement06.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement06.xml.kfail
deleted file mode 100644
index e18b8f8..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement06.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6419..."/>
-</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/HTMLTableElement07.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement07.xml.kfail
deleted file mode 100644
index 44be1c3..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement07.xml.kfail
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6320..."/>
+</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/HTMLTableElement08.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement08.xml.kfail
deleted file mode 100644
index 1a744b1..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement08.xml.kfail
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6320..."/>
-</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-6320..."/>
+</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/HTMLTableElement09.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement09.xml.kfail
deleted file mode 100644
index a0aecf3..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement09.xml.kfail
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6320..."/>
-</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-2318..."/>
+</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/HTMLTableElement10.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement10.xml.kfail
deleted file mode 100644
index 160afeb..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement10.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-2318..."/>
-</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-8353..."/>
+</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/HTMLTableElement11.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement11.xml.kfail
deleted file mode 100644
index 785c4d0..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement11.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-8353..."/>
-</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-5096..."/>
+</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/HTMLTableElement12.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement12.xml.kfail
deleted file mode 100644
index 811a147..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement12.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-5096..."/>
-</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-5916..."/>
+</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/HTMLTableElement13.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement13.xml.kfail
deleted file mode 100644
index 4a18d8d..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement13.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-5916..."/>
-</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-6890..."/>
+</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/HTMLTableElement14.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement14.xml.kfail
deleted file mode 100644
index 478e9c9..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement14.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6890..."/>
-</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-6480..."/>
+</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/HTMLTableElement15.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement15.xml.kfail
deleted file mode 100644
index 51f9763..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement15.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6480..."/>
-</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-2634..."/>
+</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/HTMLTableElement16.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement16.xml.kfail
deleted file mode 100644
index 7166437..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement16.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-2634..."/>
-</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-4499..."/>
+</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/HTMLTableElement17.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement17.xml.kfail
deleted file mode 100644
index 9337c09..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement17.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-4499..."/>
-</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-7744..."/>
+</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/HTMLTableElement18.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement18.xml.kfail
deleted file mode 100644
index 210e2b1..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement18.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7744..."/>
-</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-7031..."/>
+</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/HTMLTableElement19.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement19.xml.kfail
deleted file mode 100644
index 152174d..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement19.xml.kfail
+++ /dev/null
@@ -1,51 +0,0 @@
-<?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-7031..."/>
-</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-7031..."/>
+</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/HTMLTableElement20.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement20.xml.kfail
deleted file mode 100644
index 032725b..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement20.xml.kfail
+++ /dev/null
@@ -1,50 +0,0 @@
-<?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-7031..."/>
-</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.kfail b/test/testcases/tests/level1/html/HTMLTableElement21.xml.kfail
index 3903b69..b50a007 100644
--- a/test/testcases/tests/level1/html/HTMLTableElement21.xml.kfail
+++ b/test/testcases/tests/level1/html/HTMLTableElement21.xml.kfail
@@ -35,8 +35,8 @@ See W3C License http://www.w3.org/Consortium/Legal/ for more details.
<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="vsection1" type="HTMLTableSectionElement" />
+<var name="vsection2" type="HTMLTableSectionElement" />
<var name="vrows" type="int"/>
<var name="doc" type="Document"/>
<var name="result" type="List"/>
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/HTMLTableElement22.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement22.xml.kfail
deleted file mode 100644
index 6649b0f..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement22.xml.kfail
+++ /dev/null
@@ -1,51 +0,0 @@
-<?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/HTMLTableElement23.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement23.xml.kfail
deleted file mode 100644
index 1f53f03..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement23.xml.kfail
+++ /dev/null
@@ -1,50 +0,0 @@
-<?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.kfail b/test/testcases/tests/level1/html/HTMLTableElement24.xml.kfail
index d6f993c..58af66e 100644
--- a/test/testcases/tests/level1/html/HTMLTableElement24.xml.kfail
+++ b/test/testcases/tests/level1/html/HTMLTableElement24.xml.kfail
@@ -35,8 +35,8 @@ See W3C License http://www.w3.org/Consortium/Legal/ for more details.
<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="vsection1" type="HTMLTableSectionElement" />
+<var name="vsection2" type="HTMLTableSectionElement" />
<var name="vrows" type="int"/>
<var name="doc" type="Document"/>
<var name="result" type="List"/>
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-9692..."/>
+</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/HTMLTableElement25.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement25.xml.kfail
deleted file mode 100644
index a28ae65..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement25.xml.kfail
+++ /dev/null
@@ -1,49 +0,0 @@
-<?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-9692..."/>
-</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-9692..."/>
+</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/HTMLTableElement26.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement26.xml.kfail
deleted file mode 100644
index 5517f2f..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement26.xml.kfail
+++ /dev/null
@@ -1,52 +0,0 @@
-<?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-9692..."/>
-</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-2293..."/>
+</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/HTMLTableElement27.xml.kfail b/test/testcases/tests/level1/html/HTMLTableElement27.xml.kfail
deleted file mode 100644
index c387d69..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement27.xml.kfail
+++ /dev/null
@@ -1,47 +0,0 @@
-<?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-2293..."/>
-</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/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-6734..."/>
+</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/HTMLTableRowElement01.xml.kfail b/test/testcases/tests/level1/html/HTMLTableRowElement01.xml.kfail
deleted file mode 100644
index 0dbd008..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement01.xml.kfail
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6734..."/>
-</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-7910..."/>
+</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/HTMLTableRowElement02.xml.kfail b/test/testcases/tests/level1/html/HTMLTableRowElement02.xml.kfail
deleted file mode 100644
index 284bc84..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement02.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7910..."/>
-</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-7910..."/>
+</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/HTMLTableRowElement03.xml.kfail b/test/testcases/tests/level1/html/HTMLTableRowElement03.xml.kfail
deleted file mode 100644
index 341c2a5..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement03.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7910..."/>
-</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-7910..."/>
+</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/HTMLTableRowElement04.xml.kfail b/test/testcases/tests/level1/html/HTMLTableRowElement04.xml.kfail
deleted file mode 100644
index bca05d4..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement04.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7910..."/>
-</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/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-7409..."/>
+</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/HTMLTableRowElement06.xml.kfail b/test/testcases/tests/level1/html/HTMLTableRowElement06.xml.kfail
deleted file mode 100644
index 55fc2ac..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement06.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7409..."/>
-</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-1816..."/>
+</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/HTMLTableRowElement07.xml.kfail b/test/testcases/tests/level1/html/HTMLTableRowElement07.xml.kfail
deleted file mode 100644
index c586f6a..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement07.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-1816..."/>
-</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-1623..."/>
+</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/HTMLTableRowElement08.xml.kfail b/test/testcases/tests/level1/html/HTMLTableRowElement08.xml.kfail
deleted file mode 100644
index 751ef9e..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement08.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-1623..."/>
-</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-6820..."/>
+</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/HTMLTableRowElement09.xml.kfail b/test/testcases/tests/level1/html/HTMLTableRowElement09.xml.kfail
deleted file mode 100644
index eda033b..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement09.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6820..."/>
-</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-9000..."/>
+</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/HTMLTableRowElement10.xml.kfail b/test/testcases/tests/level1/html/HTMLTableRowElement10.xml.kfail
deleted file mode 100644
index 3554fb6..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement10.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-9000..."/>
-</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/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-8964..."/>
+</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/anchor01.xml.notimpl b/test/testcases/tests/level1/html/anchor01.xml.notimpl
deleted file mode 100644
index 19a2711..0000000
--- a/test/testcases/tests/level1/html/anchor01.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-8964..."/>
-</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-6761..."/>
+</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/anchor02.xml.notimpl b/test/testcases/tests/level1/html/anchor02.xml.notimpl
deleted file mode 100644
index 61486a7..0000000
--- a/test/testcases/tests/level1/html/anchor02.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6761..."/>
-</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-9207..."/>
+</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/anchor03.xml.notimpl b/test/testcases/tests/level1/html/anchor03.xml.notimpl
deleted file mode 100644
index e6bd32e..0000000
--- a/test/testcases/tests/level1/html/anchor03.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-9207..."/>
-</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.kfail b/test/testcases/tests/level1/html/anchor04.xml.kfail
new file mode 100644
index 0000000..b5ce201
--- /dev/null
+++ b/test/testcases/tests/level1/html/anchor04.xml.kfail
@@ -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-8851..."/>
+</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/anchor04.xml.notimpl b/test/testcases/tests/level1/html/anchor04.xml.notimpl
deleted file mode 100644
index b5ce201..0000000
--- a/test/testcases/tests/level1/html/anchor04.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-8851..."/>
-</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-6393..."/>
+</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/anchor05.xml.notimpl b/test/testcases/tests/level1/html/anchor05.xml.notimpl
deleted file mode 100644
index 27b34ac..0000000
--- a/test/testcases/tests/level1/html/anchor05.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6393..."/>
-</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-4989..."/>
+</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/anchor06.xml.notimpl b/test/testcases/tests/level1/html/anchor06.xml.notimpl
deleted file mode 100644
index 31190be..0000000
--- a/test/testcases/tests/level1/html/anchor06.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-4989..."/>
-</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/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-2173..."/>
+</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/dlist01.xml.notimpl b/test/testcases/tests/level1/html/dlist01.xml.notimpl
deleted file mode 100644
index 35cbe2c..0000000
--- a/test/testcases/tests/level1/html/dlist01.xml.notimpl
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-2173..."/>
-</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/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-1459..."/>
+</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/table01.xml.kfail b/test/testcases/tests/level1/html/table01.xml.kfail
deleted file mode 100644
index 4cee6f7..0000000
--- a/test/testcases/tests/level1/html/table01.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-1459..."/>
-</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-1459..."/>
+</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/table02.xml.kfail b/test/testcases/tests/level1/html/table02.xml.kfail
deleted file mode 100644
index 2433751..0000000
--- a/test/testcases/tests/level1/html/table02.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-1459..."/>
-</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/table03.xml.kfail b/test/testcases/tests/level1/html/table03.xml.kfail
deleted file mode 100644
index b8c3ef6..0000000
--- a/test/testcases/tests/level1/html/table03.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/table04.xml.kfail b/test/testcases/tests/level1/html/table04.xml.kfail
deleted file mode 100644
index 2d4fcf8..0000000
--- a/test/testcases/tests/level1/html/table04.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/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-6419..."/>
+</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/table08.xml.kfail b/test/testcases/tests/level1/html/table08.xml.kfail
deleted file mode 100644
index ea77b80..0000000
--- a/test/testcases/tests/level1/html/table08.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6419..."/>
-</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/table09.xml.kfail b/test/testcases/tests/level1/html/table09.xml.kfail
deleted file mode 100644
index fcb9018..0000000
--- a/test/testcases/tests/level1/html/table09.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6419..."/>
+</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/table10.xml.kfail b/test/testcases/tests/level1/html/table10.xml.kfail
deleted file mode 100644
index aa05594..0000000
--- a/test/testcases/tests/level1/html/table10.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6419..."/>
-</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-6419..."/>
+</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/table12.xml.kfail b/test/testcases/tests/level1/html/table12.xml.kfail
deleted file mode 100644
index 93e475b..0000000
--- a/test/testcases/tests/level1/html/table12.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6419..."/>
-</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/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-6419..."/>
+</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/table17.xml.kfail b/test/testcases/tests/level1/html/table17.xml.kfail
deleted file mode 100644
index 7223562..0000000
--- a/test/testcases/tests/level1/html/table17.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6419..."/>
-</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-8074..."/>
+</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/table18.xml.kfail b/test/testcases/tests/level1/html/table18.xml.kfail
deleted file mode 100644
index db8c161..0000000
--- a/test/testcases/tests/level1/html/table18.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-8074..."/>
-</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-7444..."/>
+</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/table19.xml.kfail b/test/testcases/tests/level1/html/table19.xml.kfail
deleted file mode 100644
index e88be88..0000000
--- a/test/testcases/tests/level1/html/table19.xml.kfail
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7444..."/>
-</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-7655..."/>
+</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/table20.xml.kfail b/test/testcases/tests/level1/html/table20.xml.kfail
deleted file mode 100644
index 2205987..0000000
--- a/test/testcases/tests/level1/html/table20.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7655..."/>
-</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-9843..."/>
+</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/table21.xml.kfail b/test/testcases/tests/level1/html/table21.xml.kfail
deleted file mode 100644
index fa22103..0000000
--- a/test/testcases/tests/level1/html/table21.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-9843..."/>
-</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-8813..."/>
+</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/table22.xml.kfail b/test/testcases/tests/level1/html/table22.xml.kfail
deleted file mode 100644
index 7c097b4..0000000
--- a/test/testcases/tests/level1/html/table22.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-8813..."/>
-</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-3091..."/>
+</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/table23.xml.kfail b/test/testcases/tests/level1/html/table23.xml.kfail
deleted file mode 100644
index 4ea8ace..0000000
--- a/test/testcases/tests/level1/html/table23.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-3091..."/>
-</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-2014..."/>
+</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/table24.xml.kfail b/test/testcases/tests/level1/html/table24.xml.kfail
deleted file mode 100644
index 7606917..0000000
--- a/test/testcases/tests/level1/html/table24.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-2014..."/>
-</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-8464..."/>
+</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/table25.xml.kfail b/test/testcases/tests/level1/html/table25.xml.kfail
deleted file mode 100644
index b8e10dd..0000000
--- a/test/testcases/tests/level1/html/table25.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-8464..."/>
-</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-8367..."/>
+</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/table26.xml.kfail b/test/testcases/tests/level1/html/table26.xml.kfail
deleted file mode 100644
index 9f09d4f..0000000
--- a/test/testcases/tests/level1/html/table26.xml.kfail
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-8367..."/>
-</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-6292..."/>
+</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/table27.xml.kfail b/test/testcases/tests/level1/html/table27.xml.kfail
deleted file mode 100644
index e0dc78d..0000000
--- a/test/testcases/tests/level1/html/table27.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6292..."/>
-</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-4823..."/>
+</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/table28.xml.kfail b/test/testcases/tests/level1/html/table28.xml.kfail
deleted file mode 100644
index d445a1c..0000000
--- a/test/testcases/tests/level1/html/table28.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-4823..."/>
-</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-3613..."/>
+</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/table29.xml.kfail b/test/testcases/tests/level1/html/table29.xml.kfail
deleted file mode 100644
index ae483d4..0000000
--- a/test/testcases/tests/level1/html/table29.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-3613..."/>
-</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-8910..."/>
+</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/table30.xml.kfail b/test/testcases/tests/level1/html/table30.xml.kfail
deleted file mode 100644
index 837be29..0000000
--- a/test/testcases/tests/level1/html/table30.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-8910..."/>
-</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-5828..."/>
+</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/table31.xml.kfail b/test/testcases/tests/level1/html/table31.xml.kfail
deleted file mode 100644
index f5c3fa6..0000000
--- a/test/testcases/tests/level1/html/table31.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-5828..."/>
-</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-2748..."/>
+</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/table32.xml.kfail b/test/testcases/tests/level1/html/table32.xml.kfail
deleted file mode 100644
index cf7e0cd..0000000
--- a/test/testcases/tests/level1/html/table32.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-2748..."/>
-</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-2318..."/>
+</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/table33.xml.kfail b/test/testcases/tests/level1/html/table33.xml.kfail
deleted file mode 100644
index 5c0e447..0000000
--- a/test/testcases/tests/level1/html/table33.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-2318..."/>
-</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-5096..."/>
+</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/table34.xml.kfail b/test/testcases/tests/level1/html/table34.xml.kfail
deleted file mode 100644
index 07443ef..0000000
--- a/test/testcases/tests/level1/html/table34.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-5096..."/>
-</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-8353..."/>
+</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/table35.xml.kfail b/test/testcases/tests/level1/html/table35.xml.kfail
deleted file mode 100644
index 32cce60..0000000
--- a/test/testcases/tests/level1/html/table35.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-8353..."/>
-</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-6480..."/>
+</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/table36.xml.kfail b/test/testcases/tests/level1/html/table36.xml.kfail
deleted file mode 100644
index 2bdded8..0000000
--- a/test/testcases/tests/level1/html/table36.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6480..."/>
-</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-5916..."/>
+</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/table37.xml.kfail b/test/testcases/tests/level1/html/table37.xml.kfail
deleted file mode 100644
index cdf5b73..0000000
--- a/test/testcases/tests/level1/html/table37.xml.kfail
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-5916..."/>
-</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-6890..."/>
+</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/table38.xml.kfail b/test/testcases/tests/level1/html/table38.xml.kfail
deleted file mode 100644
index fad8dfe..0000000
--- a/test/testcases/tests/level1/html/table38.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6890..."/>
-</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-4499..."/>
+</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/table39.xml.kfail b/test/testcases/tests/level1/html/table39.xml.kfail
deleted file mode 100644
index 1fd66db..0000000
--- a/test/testcases/tests/level1/html/table39.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-4499..."/>
-</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-2634..."/>
+</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/table40.xml.kfail b/test/testcases/tests/level1/html/table40.xml.kfail
deleted file mode 100644
index 31a9763..0000000
--- a/test/testcases/tests/level1/html/table40.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-2634..."/>
-</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-7744..."/>
+</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/table41.xml.kfail b/test/testcases/tests/level1/html/table41.xml.kfail
deleted file mode 100644
index 4030b09..0000000
--- a/test/testcases/tests/level1/html/table41.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7744..."/>
-</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-7409..."/>
+</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/table42.xml.kfail b/test/testcases/tests/level1/html/table42.xml.kfail
deleted file mode 100644
index 8fa86f1..0000000
--- a/test/testcases/tests/level1/html/table42.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7409..."/>
-</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-1816..."/>
+</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/table43.xml.kfail b/test/testcases/tests/level1/html/table43.xml.kfail
deleted file mode 100644
index ea9e5de..0000000
--- a/test/testcases/tests/level1/html/table43.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-1816..."/>
-</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-9000..."/>
+</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/table44.xml.kfail b/test/testcases/tests/level1/html/table44.xml.kfail
deleted file mode 100644
index a893f76..0000000
--- a/test/testcases/tests/level1/html/table44.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-9000..."/>
-</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-1623..."/>
+</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/table45.xml.kfail b/test/testcases/tests/level1/html/table45.xml.kfail
deleted file mode 100644
index b1717db..0000000
--- a/test/testcases/tests/level1/html/table45.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-1623..."/>
-</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-6820..."/>
+</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/table46.xml.kfail b/test/testcases/tests/level1/html/table46.xml.kfail
deleted file mode 100644
index 096b892..0000000
--- a/test/testcases/tests/level1/html/table46.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6820..."/>
-</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-6734..."/>
+</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/table47.xml.kfail b/test/testcases/tests/level1/html/table47.xml.kfail
deleted file mode 100644
index 4d8340b..0000000
--- a/test/testcases/tests/level1/html/table47.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6734..."/>
-</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-7409..."/>
+</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/table48.xml.kfail b/test/testcases/tests/level1/html/table48.xml.kfail
deleted file mode 100644
index 1910883..0000000
--- a/test/testcases/tests/level1/html/table48.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-7409..."/>
-</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-1623..."/>
+</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/table49.xml.kfail b/test/testcases/tests/level1/html/table49.xml.kfail
deleted file mode 100644
index 1db690b..0000000
--- a/test/testcases/tests/level1/html/table49.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-1623..."/>
-</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-6820..."/>
+</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/table50.xml.kfail b/test/testcases/tests/level1/html/table50.xml.kfail
deleted file mode 100644
index 8f60638..0000000
--- a/test/testcases/tests/level1/html/table50.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-6820..."/>
-</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-9651..."/>
+</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/table51.xml.kfail b/test/testcases/tests/level1/html/table51.xml.kfail
deleted file mode 100644
index c917f27..0000000
--- a/test/testcases/tests/level1/html/table51.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-9651..."/>
-</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-8329..."/>
+</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/table52.xml.kfail b/test/testcases/tests/level1/html/table52.xml.kfail
deleted file mode 100644
index bf94572..0000000
--- a/test/testcases/tests/level1/html/table52.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-8329..."/>
-</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-2519..."/>
+</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/level1/html/table53.xml.kfail b/test/testcases/tests/level1/html/table53.xml.kfail
deleted file mode 100644
index 210c7e1..0000000
--- a/test/testcases/tests/level1/html/table53.xml.kfail
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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-2519..."/>
-</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/html/.HTMLTableRowElement20.xml.kfail.swp b/test/testcases/tests/level2/html/.HTMLTableRowElement20.xml.kfail.swp
new file mode 100644
index 0000000..e0bcfc3
Binary files /dev/null and b/test/testcases/tests/level2/html/.HTMLTableRowElement20.xml.kfail.swp differ
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/HTMLTableElement34.xml.kfail b/test/testcases/tests/level2/html/HTMLTableElement34.xml.kfail
deleted file mode 100644
index d774498..0000000
--- a/test/testcases/tests/level2/html/HTMLTableElement34.xml.kfail
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/HTMLTableElement35.xml.kfail b/test/testcases/tests/level2/html/HTMLTableElement35.xml.kfail
deleted file mode 100644
index 6410e89..0000000
--- a/test/testcases/tests/level2/html/HTMLTableElement35.xml.kfail
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/HTMLTableElement36.xml.kfail b/test/testcases/tests/level2/html/HTMLTableElement36.xml.kfail
deleted file mode 100644
index 7a514e5..0000000
--- a/test/testcases/tests/level2/html/HTMLTableElement36.xml.kfail
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/HTMLTableElement37.xml.kfail b/test/testcases/tests/level2/html/HTMLTableElement37.xml.kfail
deleted file mode 100644
index 097deb1..0000000
--- a/test/testcases/tests/level2/html/HTMLTableElement37.xml.kfail
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/HTMLTableElement38.xml.kfail b/test/testcases/tests/level2/html/HTMLTableElement38.xml.kfail
deleted file mode 100644
index 0f5bccd..0000000
--- a/test/testcases/tests/level2/html/HTMLTableElement38.xml.kfail
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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.kfail b/test/testcases/tests/level2/html/HTMLTableElement39.xml.kfail
index 6631584..0a6fcfd 100644
--- a/test/testcases/tests/level2/html/HTMLTableElement39.xml.kfail
+++ b/test/testcases/tests/level2/html/HTMLTableElement39.xml.kfail
@@ -54,9 +54,14 @@ See W3C License http://www.w3.org/Consortium/Legal/ for more details.
<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"/>
+<!--
+* the following assumes that the row is appended to tbody
+* this is obviously wrong it should be appended to tfoot which is the end
+* of the table
<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/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/HTMLTableRowElement15.xml.kfail b/test/testcases/tests/level2/html/HTMLTableRowElement15.xml.kfail
deleted file mode 100644
index 9e89674..0000000
--- a/test/testcases/tests/level2/html/HTMLTableRowElement15.xml.kfail
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/HTMLTableRowElement16.xml.kfail b/test/testcases/tests/level2/html/HTMLTableRowElement16.xml.kfail
deleted file mode 100644
index 8471a2b..0000000
--- a/test/testcases/tests/level2/html/HTMLTableRowElement16.xml.kfail
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/HTMLTableRowElement17.xml.kfail b/test/testcases/tests/level2/html/HTMLTableRowElement17.xml.kfail
deleted file mode 100644
index b469470..0000000
--- a/test/testcases/tests/level2/html/HTMLTableRowElement17.xml.kfail
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/HTMLTableRowElement18.xml.kfail b/test/testcases/tests/level2/html/HTMLTableRowElement18.xml.kfail
deleted file mode 100644
index f296086..0000000
--- a/test/testcases/tests/level2/html/HTMLTableRowElement18.xml.kfail
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/HTMLTableRowElement19.xml.kfail b/test/testcases/tests/level2/html/HTMLTableRowElement19.xml.kfail
deleted file mode 100644
index 9a111f3..0000000
--- a/test/testcases/tests/level2/html/HTMLTableRowElement19.xml.kfail
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License http://www.w3.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/HTMLTableSectionElement30.xml.kfail b/test/testcases/tests/level2/html/HTMLTableSectionElement30.xml.kfail
new file mode 100644
index 0000000..8fd17c2
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableSectionElement30.xml.kfail
@@ -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=""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/level2/html/HTMLTableSectionElement31.xml.kfail b/test/testcases/tests/level2/html/HTMLTableSectionElement31.xml.kfail
new file mode 100644
index 0000000..55464e2
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableSectionElement31.xml.kfail
@@ -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=""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="-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/files/table.html b/test/testcases/tests/level2/html/files/table.html
new file mode 100644
index 0000000..b8f151e
--- /dev/null
+++ b/test/testcases/tests/level2/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/level2/html/files/table.xhtml b/test/testcases/tests/level2/html/files/table.xhtml
new file mode 100644
index 0000000..8300b90
--- /dev/null
+++ b/test/testcases/tests/level2/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/level2/html/files/table.xml b/test/testcases/tests/level2/html/files/table.xml
new file mode 100644
index 0000000..8300b90
--- /dev/null
+++ b/test/testcases/tests/level2/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/level2/html/files/table1.html b/test/testcases/tests/level2/html/files/table1.html
new file mode 100644
index 0000000..8f5d19b
--- /dev/null
+++ b/test/testcases/tests/level2/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/level2/html/files/table1.xhtml b/test/testcases/tests/level2/html/files/table1.xhtml
new file mode 100644
index 0000000..e174c63
--- /dev/null
+++ b/test/testcases/tests/level2/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/level2/html/files/table1.xml b/test/testcases/tests/level2/html/files/table1.xml
new file mode 100644
index 0000000..e174c63
--- /dev/null
+++ b/test/testcases/tests/level2/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&qu