Bug 518110: Kill HTMLBaseFontElement interface and HTMLHeadElement.profile. Also merge nsHTMLHeadElement and nsHTMLHtmlElement into nsHTMLSharedElement. r=jst
authorJonas Sicking <jonas@sicking.cc>
Mon, 19 Apr 2010 12:06:00 -0700
changeset 40996 3a2552c83446
parent 40995 01d577167874
child 40997 625e6d4219ab
push id12873
push usersicking@mozilla.com
push date2010-04-19 19:07 +0000
treeherdermozilla-central@3a2552c83446 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjst
bugs518110
milestone1.9.3a5pre
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
Bug 518110: Kill HTMLBaseFontElement interface and HTMLHeadElement.profile. Also merge nsHTMLHeadElement and nsHTMLHtmlElement into nsHTMLSharedElement. r=jst
content/html/content/src/Makefile.in
content/html/content/src/nsGenericHTMLElement.h
content/html/content/src/nsHTMLFontElement.cpp
content/html/content/src/nsHTMLHeadElement.cpp
content/html/content/src/nsHTMLHtmlElement.cpp
content/html/content/src/nsHTMLSharedElement.cpp
content/html/content/test/test_bug389797.html
content/html/document/test/test_documentAll.html
dom/base/nsDOMClassInfo.cpp
dom/base/nsDOMClassInfoClasses.h
dom/interfaces/html/Makefile.in
dom/interfaces/html/nsIDOMHTMLBaseFontElement.idl
dom/interfaces/html/nsIDOMHTMLHeadElement.idl
dom/tests/mochitest/bugs/test_bug396843.html
dom/tests/mochitest/dom-level2-html/Makefile.in
dom/tests/mochitest/dom-level2-html/files/Makefile.in
dom/tests/mochitest/dom-level2-html/files/basefont.html
dom/tests/mochitest/dom-level2-html/files/basefont.xhtml
dom/tests/mochitest/dom-level2-html/files/basefont.xml
dom/tests/mochitest/dom-level2-html/files/head.html
dom/tests/mochitest/dom-level2-html/files/head.xhtml
dom/tests/mochitest/dom-level2-html/files/head.xml
dom/tests/mochitest/dom-level2-html/files/index.html
dom/tests/mochitest/dom-level2-html/test_HTMLBaseFontElement01.html
dom/tests/mochitest/dom-level2-html/test_HTMLBaseFontElement02.html
dom/tests/mochitest/dom-level2-html/test_HTMLBaseFontElement03.html
dom/tests/mochitest/dom-level2-html/test_HTMLHeadElement01.html
dom/tests/mochitest/dom-level2-html/test_alltests.html
dom/tests/mochitest/dom-level2-html/test_basefont01.html
parser/htmlparser/public/nsHTMLTagList.h
--- a/content/html/content/src/Makefile.in
+++ b/content/html/content/src/Makefile.in
@@ -67,19 +67,17 @@ CPPSRCS		= \
 		nsHTMLDelElement.cpp \
 		nsHTMLDivElement.cpp \
 		nsHTMLFieldSetElement.cpp \
 		nsHTMLFontElement.cpp \
 		nsHTMLFormElement.cpp \
 		nsHTMLFrameElement.cpp \
 		nsHTMLFrameSetElement.cpp \
 		nsHTMLHRElement.cpp \
-		nsHTMLHeadElement.cpp \
 		nsHTMLHeadingElement.cpp \
-		nsHTMLHtmlElement.cpp \
 		nsHTMLIFrameElement.cpp \
 		nsHTMLImageElement.cpp \
 		nsHTMLInputElement.cpp \
 		nsHTMLLIElement.cpp \
 		nsHTMLLabelElement.cpp \
 		nsHTMLLegendElement.cpp \
 		nsHTMLLinkElement.cpp \
 		nsHTMLMapElement.cpp \
--- a/content/html/content/src/nsGenericHTMLElement.h
+++ b/content/html/content/src/nsGenericHTMLElement.h
@@ -1199,16 +1199,24 @@ NS_NewHTML##_elementName##Element(nsINod
 
 // Element class factory methods
 
 #define NS_DECLARE_NS_NEW_HTML_ELEMENT(_elementName)              \
 nsGenericHTMLElement*                                             \
 NS_NewHTML##_elementName##Element(nsINodeInfo *aNodeInfo,         \
                                   PRBool aFromParser = PR_FALSE);
 
+#define NS_DECLARE_NS_NEW_HTML_ELEMENT_AS_SHARED(_elementName)    \
+inline nsGenericHTMLElement*                                      \
+NS_NewHTML##_elementName##Element(nsINodeInfo *aNodeInfo,         \
+                                  PRBool aFromParser = PR_FALSE)  \
+{                                                                 \
+  return NS_NewHTMLSharedElement(aNodeInfo, aFromParser);         \
+}
+
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Shared)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(SharedList)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(SharedObject)
 
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Anchor)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Area)
 #if defined(MOZ_MEDIA)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Audio)
@@ -1220,19 +1228,19 @@ NS_DECLARE_NS_NEW_HTML_ELEMENT(Canvas)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Mod)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Div)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(FieldSet)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Font)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Form)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Frame)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(FrameSet)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(HR)
-NS_DECLARE_NS_NEW_HTML_ELEMENT(Head)
+NS_DECLARE_NS_NEW_HTML_ELEMENT_AS_SHARED(Head)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Heading)
-NS_DECLARE_NS_NEW_HTML_ELEMENT(Html)
+NS_DECLARE_NS_NEW_HTML_ELEMENT_AS_SHARED(Html)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(IFrame)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Image)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Input)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(LI)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Label)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Legend)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Link)
 NS_DECLARE_NS_NEW_HTML_ELEMENT(Map)
--- a/content/html/content/src/nsHTMLFontElement.cpp
+++ b/content/html/content/src/nsHTMLFontElement.cpp
@@ -195,17 +195,17 @@ MapAttributesIntoRule(const nsMappedAttr
       else {
         // size: int, enum , 
         value = aAttributes->GetAttr(nsGkAtoms::size);
         if (value) {
           nsAttrValue::ValueType unit = value->Type();
           if (unit == nsAttrValue::eInteger || unit == nsAttrValue::eEnum) { 
             PRInt32 size;
             if (unit == nsAttrValue::eEnum) // int (+/-)
-              size = value->GetEnumValue() + 3;  // XXX should be BASEFONT, not three see bug 3875
+              size = value->GetEnumValue() + 3;
             else
               size = value->GetIntegerValue();
 
             size = ((0 < size) ? ((size < 8) ? size : 7) : 1); 
             font.mSize.SetIntValue(size, eCSSUnit_Enumerated);
           }
         }
       }
deleted file mode 100644
--- a/content/html/content/src/nsHTMLHeadElement.cpp
+++ /dev/null
@@ -1,100 +0,0 @@
-/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-/* ***** BEGIN LICENSE BLOCK *****
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
- *
- * The contents of this file are subject to the Mozilla Public License Version
- * 1.1 (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- * http://www.mozilla.org/MPL/
- *
- * Software distributed under the License is distributed on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- * for the specific language governing rights and limitations under the
- * License.
- *
- * The Original Code is Mozilla Communicator client code.
- *
- * The Initial Developer of the Original Code is
- * Netscape Communications Corporation.
- * Portions created by the Initial Developer are Copyright (C) 1998
- * the Initial Developer. All Rights Reserved.
- *
- * Contributor(s):
- *
- * Alternatively, the contents of this file may be used under the terms of
- * either of the GNU General Public License Version 2 or later (the "GPL"),
- * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
- * in which case the provisions of the GPL or the LGPL are applicable instead
- * of those above. If you wish to allow use of your version of this file only
- * under the terms of either the GPL or the LGPL, and not to allow others to
- * use your version of this file under the terms of the MPL, indicate your
- * decision by deleting the provisions above and replace them with the notice
- * and other provisions required by the GPL or the LGPL. If you do not delete
- * the provisions above, a recipient may use your version of this file under
- * the terms of any one of the MPL, the GPL or the LGPL.
- *
- * ***** END LICENSE BLOCK ***** */
-#include "nsIDOMHTMLHeadElement.h"
-#include "nsIDOMEventTarget.h"
-#include "nsGenericHTMLElement.h"
-#include "nsGkAtoms.h"
-#include "nsStyleConsts.h"
-
-
-class nsHTMLHeadElement : public nsGenericHTMLElement,
-                          public nsIDOMHTMLHeadElement
-{
-public:
-  nsHTMLHeadElement(nsINodeInfo *aNodeInfo);
-  virtual ~nsHTMLHeadElement();
-
-  // nsISupports
-  NS_DECL_ISUPPORTS_INHERITED
-
-  // nsIDOMNode
-  NS_FORWARD_NSIDOMNODE(nsGenericHTMLElement::)
-
-  // nsIDOMElement
-  NS_FORWARD_NSIDOMELEMENT(nsGenericHTMLElement::)
-
-  // nsIDOMHTMLElement
-  NS_FORWARD_NSIDOMHTMLELEMENT(nsGenericHTMLElement::)
-
-  // nsIDOMHTMLHeadElement
-  NS_DECL_NSIDOMHTMLHEADELEMENT
-
-  virtual nsresult Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const;
-};
-
-
-NS_IMPL_NS_NEW_HTML_ELEMENT(Head)
-
-
-nsHTMLHeadElement::nsHTMLHeadElement(nsINodeInfo *aNodeInfo)
-  : nsGenericHTMLElement(aNodeInfo)
-{
-}
-
-nsHTMLHeadElement::~nsHTMLHeadElement()
-{
-}
-
-
-NS_IMPL_ADDREF_INHERITED(nsHTMLHeadElement, nsGenericElement)
-NS_IMPL_RELEASE_INHERITED(nsHTMLHeadElement, nsGenericElement)
-
-
-DOMCI_DATA(HTMLHeadElement, nsHTMLHeadElement)
-
-// QueryInterface implementation for nsHTMLHeadElement
-NS_INTERFACE_TABLE_HEAD(nsHTMLHeadElement)
-  NS_HTML_CONTENT_INTERFACE_TABLE1(nsHTMLHeadElement, nsIDOMHTMLHeadElement)
-  NS_HTML_CONTENT_INTERFACE_TABLE_TO_MAP_SEGUE(nsHTMLHeadElement,
-                                               nsGenericHTMLElement)
-NS_HTML_CONTENT_INTERFACE_TABLE_TAIL_CLASSINFO(HTMLHeadElement)
-
-
-NS_IMPL_ELEMENT_CLONE(nsHTMLHeadElement)
-
-
-NS_IMPL_URI_ATTR(nsHTMLHeadElement, Profile, profile)
deleted file mode 100644
--- a/content/html/content/src/nsHTMLHtmlElement.cpp
+++ /dev/null
@@ -1,102 +0,0 @@
-/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-/* ***** BEGIN LICENSE BLOCK *****
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
- *
- * The contents of this file are subject to the Mozilla Public License Version
- * 1.1 (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- * http://www.mozilla.org/MPL/
- *
- * Software distributed under the License is distributed on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- * for the specific language governing rights and limitations under the
- * License.
- *
- * The Original Code is Mozilla Communicator client code.
- *
- * The Initial Developer of the Original Code is
- * Netscape Communications Corporation.
- * Portions created by the Initial Developer are Copyright (C) 1998
- * the Initial Developer. All Rights Reserved.
- *
- * Contributor(s):
- *
- * Alternatively, the contents of this file may be used under the terms of
- * either of the GNU General Public License Version 2 or later (the "GPL"),
- * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
- * in which case the provisions of the GPL or the LGPL are applicable instead
- * of those above. If you wish to allow use of your version of this file only
- * under the terms of either the GPL or the LGPL, and not to allow others to
- * use your version of this file under the terms of the MPL, indicate your
- * decision by deleting the provisions above and replace them with the notice
- * and other provisions required by the GPL or the LGPL. If you do not delete
- * the provisions above, a recipient may use your version of this file under
- * the terms of any one of the MPL, the GPL or the LGPL.
- *
- * ***** END LICENSE BLOCK ***** */
-#include "nsIDOMHTMLHtmlElement.h"
-#include "nsIDOMEventTarget.h"
-#include "nsGenericHTMLElement.h"
-#include "nsGkAtoms.h"
-#include "nsStyleConsts.h"
-#include "nsIDocument.h"
-
-
-class nsHTMLHtmlElement : public nsGenericHTMLElement,
-                          public nsIDOMHTMLHtmlElement
-{
-public:
-  nsHTMLHtmlElement(nsINodeInfo *aNodeInfo);
-  virtual ~nsHTMLHtmlElement();
-
-  // nsISupports
-  NS_DECL_ISUPPORTS_INHERITED
-
-  // nsIDOMNode
-  NS_FORWARD_NSIDOMNODE(nsGenericHTMLElement::)
-
-  // nsIDOMElement
-  NS_FORWARD_NSIDOMELEMENT(nsGenericHTMLElement::)
-
-  // nsIDOMHTMLElement
-  NS_FORWARD_NSIDOMHTMLELEMENT(nsGenericHTMLElement::)
-
-  // nsIDOMHTMLHtmlElement
-  NS_DECL_NSIDOMHTMLHTMLELEMENT
-
-  virtual nsresult Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const;
-};
-
-
-NS_IMPL_NS_NEW_HTML_ELEMENT(Html)
-
-
-nsHTMLHtmlElement::nsHTMLHtmlElement(nsINodeInfo *aNodeInfo)
-  : nsGenericHTMLElement(aNodeInfo)
-{
-}
-
-nsHTMLHtmlElement::~nsHTMLHtmlElement()
-{
-}
-
-
-NS_IMPL_ADDREF_INHERITED(nsHTMLHtmlElement, nsGenericElement) 
-NS_IMPL_RELEASE_INHERITED(nsHTMLHtmlElement, nsGenericElement) 
-
-
-
-DOMCI_DATA(HTMLHtmlElement, nsHTMLHtmlElement)
-
-// QueryInterface implementation for nsHTMLHtmlElement
-NS_INTERFACE_TABLE_HEAD(nsHTMLHtmlElement)
-  NS_HTML_CONTENT_INTERFACE_TABLE1(nsHTMLHtmlElement, nsIDOMHTMLHtmlElement)
-  NS_HTML_CONTENT_INTERFACE_TABLE_TO_MAP_SEGUE(nsHTMLHtmlElement,
-                                               nsGenericHTMLElement)
-NS_HTML_CONTENT_INTERFACE_TABLE_TAIL_CLASSINFO(HTMLHtmlElement)
-
-
-NS_IMPL_ELEMENT_CLONE(nsHTMLHtmlElement)
-
-
-NS_IMPL_STRING_ATTR(nsHTMLHtmlElement, Version, version)
--- a/content/html/content/src/nsHTMLSharedElement.cpp
+++ b/content/html/content/src/nsHTMLSharedElement.cpp
@@ -35,17 +35,18 @@
  *
  * ***** END LICENSE BLOCK ***** */
 #include "nsIDOMHTMLIsIndexElement.h"
 #include "nsIDOMHTMLParamElement.h"
 #include "nsIDOMHTMLBaseElement.h"
 #include "nsIDOMHTMLDirectoryElement.h"
 #include "nsIDOMHTMLMenuElement.h"
 #include "nsIDOMHTMLQuoteElement.h"
-#include "nsIDOMHTMLBaseFontElement.h"
+#include "nsIDOMHTMLHeadElement.h"
+#include "nsIDOMHTMLHtmlElement.h"
 #include "nsGenericHTMLElement.h"
 #include "nsGkAtoms.h"
 #include "nsStyleConsts.h"
 #include "nsRuleData.h"
 #include "nsMappedAttributes.h"
 #include "nsNetUtil.h"
 #include "nsHTMLFormElement.h"
 
@@ -54,17 +55,18 @@ extern nsAttrValue::EnumTable kListTypeT
 
 class nsHTMLSharedElement : public nsGenericHTMLElement,
                             public nsIDOMHTMLIsIndexElement,
                             public nsIDOMHTMLParamElement,
                             public nsIDOMHTMLBaseElement,
                             public nsIDOMHTMLDirectoryElement,
                             public nsIDOMHTMLMenuElement,
                             public nsIDOMHTMLQuoteElement,
-                            public nsIDOMHTMLBaseFontElement
+                            public nsIDOMHTMLHeadElement,
+                            public nsIDOMHTMLHtmlElement
 {
 public:
   nsHTMLSharedElement(nsINodeInfo *aNodeInfo);
   virtual ~nsHTMLSharedElement();
 
   // nsISupports
   NS_DECL_ISUPPORTS_INHERITED
 
@@ -90,18 +92,21 @@ public:
   NS_DECL_NSIDOMHTMLDIRECTORYELEMENT
 
   // nsIDOMHTMLMenuElement
   // Same as directoryelement
 
   // nsIDOMHTMLQuoteElement
   NS_DECL_NSIDOMHTMLQUOTEELEMENT
 
-  // nsIDOMHTMLBaseFontElement
-  NS_DECL_NSIDOMHTMLBASEFONTELEMENT
+  // nsIDOMHTMLHeadElement
+  NS_DECL_NSIDOMHTMLHEADELEMENT
+
+  // nsIDOMHTMLHtmlElement
+  NS_DECL_NSIDOMHTMLHTMLELEMENT
 
   // nsIContent
   virtual PRBool ParseAttribute(PRInt32 aNamespaceID,
                                 nsIAtom* aAttribute,
                                 const nsAString& aValue,
                                 nsAttrValue& aResult);
   nsresult SetAttr(PRInt32 aNameSpaceID, nsIAtom* aName,
                    const nsAString& aValue, PRBool aNotify)
@@ -148,80 +153,94 @@ NS_IMPL_RELEASE_INHERITED(nsHTMLSharedEl
 DOMCI_DATA(HTMLParamElement, nsHTMLSharedElement)
 DOMCI_DATA(HTMLWBRElement, nsHTMLSharedElement)
 DOMCI_DATA(HTMLIsIndexElement, nsHTMLSharedElement)
 DOMCI_DATA(HTMLBaseElement, nsHTMLSharedElement)
 DOMCI_DATA(HTMLSpacerElement, nsHTMLSharedElement)
 DOMCI_DATA(HTMLDirectoryElement, nsHTMLSharedElement)
 DOMCI_DATA(HTMLMenuElement, nsHTMLSharedElement)
 DOMCI_DATA(HTMLQuoteElement, nsHTMLSharedElement)
-DOMCI_DATA(HTMLBaseFontElement, nsHTMLSharedElement)
+DOMCI_DATA(HTMLHeadElement, nsHTMLSharedElement)
+DOMCI_DATA(HTMLHtmlElement, nsHTMLSharedElement)
 
 // QueryInterface implementation for nsHTMLSharedElement
 NS_INTERFACE_TABLE_HEAD(nsHTMLSharedElement)
   NS_HTML_CONTENT_INTERFACE_TABLE_AMBIGUOUS_BEGIN(nsHTMLSharedElement,
                                                   nsIDOMHTMLParamElement)
   NS_OFFSET_AND_INTERFACE_TABLE_END
   NS_HTML_CONTENT_INTERFACE_TABLE_TO_MAP_SEGUE_AMBIGUOUS(nsHTMLSharedElement,
                                                          nsGenericHTMLElement,
                                                          nsIDOMHTMLParamElement)
   NS_INTERFACE_MAP_ENTRY_IF_TAG(nsIDOMHTMLParamElement, param)
   NS_INTERFACE_MAP_ENTRY_IF_TAG(nsIDOMHTMLIsIndexElement, isindex)
   NS_INTERFACE_MAP_ENTRY_IF_TAG(nsIDOMHTMLBaseElement, base)
   NS_INTERFACE_MAP_ENTRY_IF_TAG(nsIDOMHTMLDirectoryElement, dir)
   NS_INTERFACE_MAP_ENTRY_IF_TAG(nsIDOMHTMLMenuElement, menu)
   NS_INTERFACE_MAP_ENTRY_IF_TAG(nsIDOMHTMLQuoteElement, q)
   NS_INTERFACE_MAP_ENTRY_IF_TAG(nsIDOMHTMLQuoteElement, blockquote)
-  NS_INTERFACE_MAP_ENTRY_IF_TAG(nsIDOMHTMLBaseFontElement, basefont)
+  NS_INTERFACE_MAP_ENTRY_IF_TAG(nsIDOMHTMLHeadElement, head)
+  NS_INTERFACE_MAP_ENTRY_IF_TAG(nsIDOMHTMLHtmlElement, html)
 
   NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLParamElement, param)
   NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLWBRElement, wbr)
   NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLIsIndexElement, isindex)
   NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLBaseElement, base)
   NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLSpacerElement, spacer)
   NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLDirectoryElement, dir)
   NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLMenuElement, menu)
   NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLQuoteElement, q)
   NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLQuoteElement, blockquote)
-  NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLBaseFontElement, basefont)
+  NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLHeadElement, head)
+  NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO_IF_TAG(HTMLHtmlElement, html)
 NS_HTML_CONTENT_INTERFACE_MAP_END
 
 
 NS_IMPL_ELEMENT_CLONE(nsHTMLSharedElement)
 
 // nsIDOMHTMLParamElement
 NS_IMPL_STRING_ATTR(nsHTMLSharedElement, Name, name)
 NS_IMPL_STRING_ATTR(nsHTMLSharedElement, Type, type)
 NS_IMPL_STRING_ATTR(nsHTMLSharedElement, Value, value)
 NS_IMPL_STRING_ATTR(nsHTMLSharedElement, ValueType, valuetype)
 
 // nsIDOMHTMLIsIndexElement
 NS_IMPL_STRING_ATTR(nsHTMLSharedElement, Prompt, prompt)
+NS_IMETHODIMP
+nsHTMLSharedElement::GetForm(nsIDOMHTMLFormElement** aForm)
+{
+  NS_IF_ADDREF(*aForm = FindForm());
+
+  return NS_OK;
+}
 
 // nsIDOMHTMLDirectoryElement
 NS_IMPL_BOOL_ATTR(nsHTMLSharedElement, Compact, compact)
 
 // nsIDOMHTMLMenuElement
 //NS_IMPL_BOOL_ATTR(nsHTMLSharedElement, Compact, compact)
 
 // nsIDOMHTMLQuoteElement
 NS_IMPL_URI_ATTR(nsHTMLSharedElement, Cite, cite)
 
-// nsIDOMHTMLBaseFontElement
-NS_IMPL_STRING_ATTR(nsHTMLSharedElement, Color, color)
-NS_IMPL_STRING_ATTR(nsHTMLSharedElement, Face, face)
-NS_IMPL_INT_ATTR(nsHTMLSharedElement, Size, size)
-
+// nsIDOMHTMLHeadElement
+// Deprecated and not exposed to script, but has to be implemented in order to
+// not break binary compat.
 NS_IMETHODIMP
-nsHTMLSharedElement::GetForm(nsIDOMHTMLFormElement** aForm)
+nsHTMLSharedElement::GetProfile(nsAString& aValue)
 {
-  NS_IF_ADDREF(*aForm = FindForm());
+  return NS_ERROR_FAILURE;
+}
+NS_IMETHODIMP
+nsHTMLSharedElement::SetProfile(const nsAString& aValue)
+{
+  return NS_ERROR_FAILURE;
+}
 
-  return NS_OK;
-}
+// nsIDOMHTMLHtmlElement
+NS_IMPL_STRING_ATTR(nsHTMLSharedElement, Version, version)
 
 // nsIDOMHTMLBaseElement
 NS_IMPL_URI_ATTR(nsHTMLSharedElement, Href, href)
 NS_IMPL_STRING_ATTR(nsHTMLSharedElement, Target, target)
 
 PRBool
 nsHTMLSharedElement::ParseAttribute(PRInt32 aNamespaceID,
                                     nsIAtom* aAttribute,
@@ -245,21 +264,16 @@ nsHTMLSharedElement::ParseAttribute(PRIn
              mNodeInfo->Equals(nsGkAtoms::menu)) {
       if (aAttribute == nsGkAtoms::type) {
         return aResult.ParseEnumValue(aValue, kListTypeTable);
       }
       if (aAttribute == nsGkAtoms::start) {
         return aResult.ParseIntWithBounds(aValue, 1);
       }
     }
-    else if (mNodeInfo->Equals(nsGkAtoms::basefont)) {
-      if (aAttribute == nsGkAtoms::size) {
-        return aResult.ParseIntValue(aValue);
-      }
-    }
   }
 
   return nsGenericHTMLElement::ParseAttribute(aNamespaceID, aAttribute, aValue,
                                               aResult);
 }
 
 // spacer element code
 
--- a/content/html/content/test/test_bug389797.html
+++ b/content/html/content/test/test_bug389797.html
@@ -89,41 +89,41 @@ for each (var iface in objectIfaces) {
 }
 objectIfaces2.push("nsIImageLoadingContent");
 
 /* List copy/pasted from nsHTMLTagList.h, with the second field modified to the
    correct classinfo (instead of the impl class) in the following cases:
 
    applet
    base
-   basefont
    blockquote
    del
    dir
    dl
    embed
    ins
    isindex
    menu
    ol
    param
    q
    spacer
    ul
    wbr
+   head
+   html
  */
 HTML_TAG("a", "Anchor", [ "nsIDOMNSHTMLAnchorElement2" ]);
 HTML_TAG("abbr", "Span");
 HTML_TAG("acronym", "Span");
 HTML_TAG("address", "Span");
 HTML_TAG("applet", "Applet", [], objectIfaces);
 HTML_TAG("area", "Area", [ "nsIDOMNSHTMLAreaElement2" ]);
 HTML_TAG("b", "Span");
 HTML_TAG("base", "Base");
-HTML_TAG("basefont", "BaseFont");
 HTML_TAG("bdo", "Span");
 HTML_TAG("bgsound", "Span");
 HTML_TAG("big", "Span");
 HTML_TAG("blink", "Span");
 HTML_TAG("blockquote", "Quote");
 HTML_TAG("body", "Body");
 HTML_TAG("br", "BR");
 HTML_TAG("button", "Button");
--- a/content/html/document/test/test_documentAll.html
+++ b/content/html/document/test/test_documentAll.html
@@ -102,17 +102,17 @@ ok(testArraysSame(document.all, allElems
 length = document.all.length;
 expectedLength = length + p.getElementsByTagName("*").length + 1;
 p.appendChild(p.cloneNode(true));
 ok(testArraysSame(document.all, allElems), "arrays still same");
 is(document.all.length, expectedLength, "grew correctly");
 
 // Check which elements the 'name' attribute works on
 var elementNames =
-  ['applet','abbr','acronym','address','area','a','b','base','basefont',
+  ['applet','abbr','acronym','address','area','a','b','base',
    'bgsound','big','blink','blockquote','br','canvas','center','cite','code',
    'col','colgroup','dd','del','dfn','dir','div','dir','dl','dt','em','embed',
    'fieldset','font','form','frame','frameset','head','i','iframe','img',
    'input','ins','isindex','kbd','keygen','label','li','legend','link','menu',
    'multicol','noscript','noframes','object','spacer','table','td','td','th',
    'thead','tfoot','tr','textarea','select','option','spacer','param',
    'marquee','hr','title','hx','tt','u','ul','var','wbr','sub','sup','cite',
    'code','q','nobr','ol','p','pre','s','samp','small','body','html','map',
--- a/dom/base/nsDOMClassInfo.cpp
+++ b/dom/base/nsDOMClassInfo.cpp
@@ -247,17 +247,16 @@
 #include "nsIDOMNSHTMLElement.h"
 #include "nsIDOMHTMLAnchorElement.h"
 #include "nsIDOMNSHTMLAnchorElement2.h"
 #include "nsIDOMHTMLAppletElement.h"
 #include "nsIDOMHTMLAreaElement.h"
 #include "nsIDOMNSHTMLAreaElement2.h"
 #include "nsIDOMHTMLBRElement.h"
 #include "nsIDOMHTMLBaseElement.h"
-#include "nsIDOMHTMLBaseFontElement.h"
 #include "nsIDOMHTMLBodyElement.h"
 #include "nsIDOMHTMLButtonElement.h"
 #include "nsIDOMNSHTMLButtonElement.h"
 #include "nsIDOMHTMLCanvasElement.h"
 #include "nsIDOMHTMLDListElement.h"
 #include "nsIDOMHTMLDirectoryElement.h"
 #include "nsIDOMHTMLDivElement.h"
 #include "nsIDOMHTMLEmbedElement.h"
@@ -694,18 +693,16 @@ static nsDOMClassInfoData sClassInfoData
   NS_DEFINE_CLASSINFO_DATA(HTMLAppletElement, nsHTMLPluginObjElementSH,
                            EXTERNAL_OBJ_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(HTMLAreaElement, nsElementSH,
                            ELEMENT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(HTMLBRElement, nsElementSH,
                            ELEMENT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(HTMLBaseElement, nsElementSH,
                            ELEMENT_SCRIPTABLE_FLAGS)
-  NS_DEFINE_CLASSINFO_DATA(HTMLBaseFontElement, nsElementSH,
-                           ELEMENT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(HTMLBodyElement, nsHTMLBodyElementSH,
                            ELEMENT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(HTMLButtonElement, nsElementSH,
                            ELEMENT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(HTMLDListElement, nsElementSH,
                            ELEMENT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(HTMLDelElement, nsElementSH,
                            ELEMENT_SCRIPTABLE_FLAGS)
@@ -2305,21 +2302,16 @@ nsDOMClassInfo::Init()
     DOM_CLASSINFO_GENERIC_HTML_MAP_ENTRIES
   DOM_CLASSINFO_MAP_END
 
   DOM_CLASSINFO_MAP_BEGIN(HTMLBaseElement, nsIDOMHTMLBaseElement)
     DOM_CLASSINFO_MAP_ENTRY(nsIDOMHTMLBaseElement)
     DOM_CLASSINFO_GENERIC_HTML_MAP_ENTRIES
   DOM_CLASSINFO_MAP_END
 
-  DOM_CLASSINFO_MAP_BEGIN(HTMLBaseFontElement, nsIDOMHTMLBaseFontElement)
-    DOM_CLASSINFO_MAP_ENTRY(nsIDOMHTMLBaseFontElement)
-    DOM_CLASSINFO_GENERIC_HTML_MAP_ENTRIES
-  DOM_CLASSINFO_MAP_END
-
   DOM_CLASSINFO_MAP_BEGIN(HTMLBodyElement, nsIDOMHTMLBodyElement)
     DOM_CLASSINFO_MAP_ENTRY(nsIDOMHTMLBodyElement)
     DOM_CLASSINFO_GENERIC_HTML_MAP_ENTRIES
   DOM_CLASSINFO_MAP_END
 
   DOM_CLASSINFO_MAP_BEGIN(HTMLButtonElement, nsIDOMHTMLButtonElement)
     DOM_CLASSINFO_MAP_ENTRY(nsIDOMHTMLButtonElement)
     DOM_CLASSINFO_MAP_ENTRY(nsIDOMNSHTMLButtonElement)
--- a/dom/base/nsDOMClassInfoClasses.h
+++ b/dom/base/nsDOMClassInfoClasses.h
@@ -83,17 +83,16 @@ DOMCI_CLASS(HTMLOptionsCollection)
 DOMCI_CLASS(HTMLCollection)
 
 // HTML element classes
 DOMCI_CLASS(HTMLAnchorElement)
 DOMCI_CLASS(HTMLAppletElement)
 DOMCI_CLASS(HTMLAreaElement)
 DOMCI_CLASS(HTMLBRElement)
 DOMCI_CLASS(HTMLBaseElement)
-DOMCI_CLASS(HTMLBaseFontElement)
 DOMCI_CLASS(HTMLBodyElement)
 DOMCI_CLASS(HTMLButtonElement)
 DOMCI_CLASS(HTMLDListElement)
 DOMCI_CLASS(HTMLDelElement)
 DOMCI_CLASS(HTMLDirectoryElement)
 DOMCI_CLASS(HTMLDivElement)
 DOMCI_CLASS(HTMLEmbedElement)
 DOMCI_CLASS(HTMLFieldSetElement)
@@ -381,21 +380,16 @@ DOMCI_CLASS(XMLSerializer)
 
 // XMLHttpRequest
 DOMCI_CLASS(XMLHttpProgressEvent)
 DOMCI_CLASS(XMLHttpRequest)
 
 DOMCI_CLASS(ClientRect)
 DOMCI_CLASS(ClientRectList)
 
-// We are now trying to preserve binary compat in classinfo.  No more
-// putting things in those categories up there.  New entries are to be
-// added here, which is the end of the things that are currently on by
-// default.
-
 #ifdef MOZ_SVG
 DOMCI_CLASS(SVGForeignObjectElement)
 #endif
 
 DOMCI_CLASS(XULCommandEvent)
 DOMCI_CLASS(CommandEvent)
 DOMCI_CLASS(OfflineResourceList)
 
--- a/dom/interfaces/html/Makefile.in
+++ b/dom/interfaces/html/Makefile.in
@@ -47,17 +47,16 @@ XPIDL_MODULE	= dom_html
 GRE_MODULE	= 1
 
 SDK_XPIDLSRCS =					\
 	nsIDOMHTMLAnchorElement.idl		\
 	nsIDOMHTMLAppletElement.idl		\
 	nsIDOMHTMLAreaElement.idl		\
 	nsIDOMHTMLBRElement.idl			\
 	nsIDOMHTMLBaseElement.idl		\
-	nsIDOMHTMLBaseFontElement.idl		\
 	nsIDOMHTMLBodyElement.idl		\
 	nsIDOMHTMLButtonElement.idl		\
 	nsIDOMHTMLCollection.idl		\
 	nsIDOMHTMLDListElement.idl		\
 	nsIDOMHTMLDirectoryElement.idl		\
 	nsIDOMHTMLDivElement.idl		\
 	nsIDOMHTMLDocument.idl			\
 	nsIDOMHTMLElement.idl			\
deleted file mode 100644
--- a/dom/interfaces/html/nsIDOMHTMLBaseFontElement.idl
+++ /dev/null
@@ -1,59 +0,0 @@
-/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-/* ***** BEGIN LICENSE BLOCK *****
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
- *
- * The contents of this file are subject to the Mozilla Public License Version
- * 1.1 (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- * http://www.mozilla.org/MPL/
- *
- * Software distributed under the License is distributed on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- * for the specific language governing rights and limitations under the
- * License.
- *
- * The Original Code is mozilla.org code.
- *
- * The Initial Developer of the Original Code is
- * Netscape Communications Corporation.
- * Portions created by the Initial Developer are Copyright (C) 2000
- * the Initial Developer. All Rights Reserved.
- *
- * Contributor(s):
- *   Vidur Apparao <vidur@netscape.com> (original author)
- *   Johnny Stenback <jst@netscape.com>
- *
- * Alternatively, the contents of this file may be used under the terms of
- * either of the GNU General Public License Version 2 or later (the "GPL"),
- * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
- * in which case the provisions of the GPL or the LGPL are applicable instead
- * of those above. If you wish to allow use of your version of this file only
- * under the terms of either the GPL or the LGPL, and not to allow others to
- * use your version of this file under the terms of the MPL, indicate your
- * decision by deleting the provisions above and replace them with the notice
- * and other provisions required by the GPL or the LGPL. If you do not delete
- * the provisions above, a recipient may use your version of this file under
- * the terms of any one of the MPL, the GPL or the LGPL.
- *
- * ***** END LICENSE BLOCK ***** */
-
-#include "nsIDOMHTMLElement.idl"
-
-/**
- * The nsIDOMHTMLBaseFontElement interface is the interface to a
- * [X]HTML basefont element.
- *
- * For more information on this interface please see
- * http://www.w3.org/TR/DOM-Level-2-HTML/
- *
- * @status FROZEN
- */
-
-[scriptable, uuid(a6cf90a6-15b3-11d2-932e-00805f8add32)]
-interface nsIDOMHTMLBaseFontElement : nsIDOMHTMLElement
-{
-           attribute DOMString        color;
-           attribute DOMString        face;
-  // Modified in DOM Level 2:
-           attribute long             size;
-};
--- a/dom/interfaces/html/nsIDOMHTMLHeadElement.idl
+++ b/dom/interfaces/html/nsIDOMHTMLHeadElement.idl
@@ -47,10 +47,10 @@
  * http://www.w3.org/TR/DOM-Level-2-HTML/
  *
  * @status FROZEN
  */
 
 [scriptable, uuid(a6cf9087-15b3-11d2-932e-00805f8add32)]
 interface nsIDOMHTMLHeadElement : nsIDOMHTMLElement
 {
-           attribute DOMString        profile;
+           [noscript] attribute DOMString        profile;
 };
--- a/dom/tests/mochitest/bugs/test_bug396843.html
+++ b/dom/tests/mochitest/bugs/test_bug396843.html
@@ -36,17 +36,17 @@ function HTML_TAG(name) {
 HTML_TAG("a", "Anchor")
 HTML_TAG("abbr", "Span")
 HTML_TAG("acronym", "Span")
 HTML_TAG("address", "Span")
 HTML_TAG("applet", "SharedObject")
 HTML_TAG("area", "Area")
 HTML_TAG("b", "Span")
 HTML_TAG("base", "Shared")
-HTML_TAG("basefont", "Shared")
+HTML_TAG("basefont", "Span")
 HTML_TAG("bdo", "Span")
 HTML_TAG("bgsound", "Span")
 HTML_TAG("big", "Span")
 HTML_TAG("blink", "Span")
 HTML_TAG("blockquote", "Shared")
 HTML_TAG("body", "Body")
 HTML_TAG("br", "BR")
 HTML_TAG("button", "Button")
--- a/dom/tests/mochitest/dom-level2-html/Makefile.in
+++ b/dom/tests/mochitest/dom-level2-html/Makefile.in
@@ -54,17 +54,16 @@ include $(topsrcdir)/config/rules.mk
 		test_anchor03.html \
 		test_anchor04.html \
 		test_anchor05.html \
 		test_anchor06.html \
 		test_area01.html \
 		test_area02.html \
 		test_area03.html \
 		test_area04.html \
-		test_basefont01.html \
 		test_body01.html \
 		test_button01.html \
 		test_button02.html \
 		test_button03.html \
 		test_button04.html \
 		test_button05.html \
 		test_button06.html \
 		test_button07.html \
@@ -91,19 +90,16 @@ include $(topsrcdir)/config/rules.mk
 		test_HTMLAreaElement03.html \
 		test_HTMLAreaElement04.html \
 		test_HTMLAreaElement05.html \
 		test_HTMLAreaElement06.html \
 		test_HTMLAreaElement07.html \
 		test_HTMLAreaElement08.html \
 		test_HTMLBaseElement01.html \
 		test_HTMLBaseElement02.html \
-		test_HTMLBaseFontElement01.html \
-		test_HTMLBaseFontElement02.html \
-		test_HTMLBaseFontElement03.html \
 		test_HTMLBodyElement01.html \
 		test_HTMLBodyElement02.html \
 		test_HTMLBodyElement03.html \
 		test_HTMLBodyElement04.html \
 		test_HTMLBodyElement05.html \
 		test_HTMLBodyElement06.html \
 		test_HTMLBodyElement07.html \
 		test_HTMLBodyElement08.html \
@@ -334,17 +330,16 @@ include $(topsrcdir)/config/rules.mk
 		test_HTMLFrameElement04.html \
 		test_HTMLFrameElement05.html \
 		test_HTMLFrameElement06.html \
 		test_HTMLFrameElement07.html \
 		test_HTMLFrameElement08.html \
 		test_HTMLFrameElement09.html \
 		test_HTMLFrameSetElement01.html \
 		test_HTMLFrameSetElement02.html \
-		test_HTMLHeadElement01.html \
 		test_HTMLHeadingElement01.html \
 		test_HTMLHeadingElement02.html \
 		test_HTMLHeadingElement03.html \
 		test_HTMLHeadingElement04.html \
 		test_HTMLHeadingElement05.html \
 		test_HTMLHeadingElement06.html \
 		test_HTMLHRElement01.html \
 		test_HTMLHRElement02.html \
--- a/dom/tests/mochitest/dom-level2-html/files/Makefile.in
+++ b/dom/tests/mochitest/dom-level2-html/files/Makefile.in
@@ -65,19 +65,16 @@ include $(topsrcdir)/config/rules.mk
 		area2.xhtml \
 		area2.xml \
 		base.html \
 		base.xhtml \
 		base.xml \
 		base2.html \
 		base2.xhtml \
 		base2.xml \
-		basefont.html \
-		basefont.xhtml \
-		basefont.xml \
 		body.html \
 		body.xhtml \
 		body.xml \
 		br.html \
 		br.xhtml \
 		br.xml \
 		button.html \
 		button.xhtml \
@@ -119,19 +116,16 @@ include $(topsrcdir)/config/rules.mk
 		frame.xhtml \
 		frame.xml \
 		frame2.html \
 		frame2.xhtml \
 		frame2.xml \
 		frameset.html \
 		frameset.xhtml \
 		frameset.xml \
-		head.html \
-		head.xhtml \
-		head.xml \
 		heading.html \
 		heading.xhtml \
 		heading.xml \
 		hr.html \
 		hr.xhtml \
 		hr.xml \
                 html.html \
                 html.xhtml \
deleted file mode 100644
--- a/dom/tests/mochitest/dom-level2-html/files/basefont.html
+++ /dev/null
@@ -1,12 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<HTML>
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
-<TITLE>NIST DOM HTML Test - BaseFont</TITLE>
-</HEAD>
-<BODY onload="parent.loadComplete()">
-<P>
-<BASEFONT COLOR="#000000" FACE="arial,helvitica" SIZE="4">
-</P>
-</BODY>
-</HTML>
deleted file mode 100644
--- a/dom/tests/mochitest/dom-level2-html/files/basefont.xhtml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html
-   PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-   "xhtml1-transitional.dtd">
-<html xmlns='http://www.w3.org/1999/xhtml'>
-<head>
-<title>NIST DOM HTML Test - BaseFont</title>
-</head>
-<body onload="parent.loadComplete()">
-<p>
-<basefont color="#000000" face="arial,helvitica" size="4"/>
-</p>
-</body>
-</html>
deleted file mode 100644
--- a/dom/tests/mochitest/dom-level2-html/files/basefont.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html
-   PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-   "xhtml1-transitional.dtd">
-<html xmlns='http://www.w3.org/1999/xhtml'>
-<head>
-<title>NIST DOM HTML Test - BaseFont</title>
-</head>
-<body onload="parent.loadComplete()">
-<p>
-<basefont color="#000000" face="arial,helvitica" size="4"/>
-</p>
-</body>
-</html>
deleted file mode 100644
--- a/dom/tests/mochitest/dom-level2-html/files/head.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
-<HTML>
-<HEAD PROFILE="http://xw2k.sdct.itl.nist.gov/brady/dom/files/profile">
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
-<TITLE>NIST DOM HTML Test - HEAD</TITLE>
-</HEAD>
-<BODY onload="parent.loadComplete()">
-<P>Hello, World.</P>
-</BODY>
-</HTML>
-
deleted file mode 100644
--- a/dom/tests/mochitest/dom-level2-html/files/head.xhtml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html
-   PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-   "xhtml1-strict.dtd">
-<html xmlns='http://www.w3.org/1999/xhtml'>
-<head profile="http://xw2k.sdct.itl.nist.gov/brady/dom/files/profile">
-<title>NIST DOM HTML Test - HEAD</title>
-</head>
-<body onload="parent.loadComplete()">
-<p>Hello, World.</p>
-</body>
-</html>
-
deleted file mode 100644
--- a/dom/tests/mochitest/dom-level2-html/files/head.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html
-   PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-   "xhtml1-strict.dtd">
-<html xmlns='http://www.w3.org/1999/xhtml'>
-<head profile="http://xw2k.sdct.itl.nist.gov/brady/dom/files/profile">
-<title>NIST DOM HTML Test - HEAD</title>
-</head>
-<body onload="parent.loadComplete()">
-<p>Hello, World.</p>
-</body>
-</html>
-
--- a/dom/tests/mochitest/dom-level2-html/files/index.html
+++ b/dom/tests/mochitest/dom-level2-html/files/index.html
@@ -27,19 +27,16 @@
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="area2.xhtml">area2.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">401 </td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="area2.xml">area2.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">401 </td></tr>
 <tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="base.html">base.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">292 </td><td>NIST DOM HTML Test - Base</td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="base.xhtml">base.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">321 </td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="base.xml">base.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">321 </td></tr>
 <tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="base2.html">base2.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">544 </td><td>NIST DOM HTML Test - Base2</td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="base2.xhtml">base2.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">542 </td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="base2.xml">base2.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">542 </td></tr>
-<tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="basefont.html">basefont.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">321 </td><td>NIST DOM HTML Test - BaseFont</td></tr>
-<tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="basefont.xhtml">basefont.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">362 </td></tr>
-<tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="basefont.xml">basefont.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">362 </td></tr>
 <tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="body.html">body.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">379 </td><td>NIST DOM HTML Test - Body</td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="body.xhtml">body.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">476 </td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="body.xml">body.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">476 </td></tr>
 <tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="br.html">br.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">274 </td><td>NIST DOM HTML Test - BR</td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="br.xhtml">br.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">315 </td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="br.xml">br.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">315 </td></tr>
 <tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="button.html">button.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">550 </td><td>NIST DOM HTML Test - Button</td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="button.xhtml">button.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">592 </td></tr>
@@ -81,19 +78,16 @@
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="frame.xhtml">frame.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">522 </td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="frame.xml">frame.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">522 </td></tr>
 <tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="frame2.html">frame2.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">560 </td><td>NIST DOM HTML Test - FRAME2</td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="frame2.xhtml">frame2.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">558 </td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="frame2.xml">frame2.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">518 </td></tr>
 <tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="frameset.html">frameset.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">403 </td><td>NIST DOM HTML Test - FRAMESET</td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="frameset.xhtml">frameset.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">402 </td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="frameset.xml">frameset.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">402 </td></tr>
-<tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="head.html">head.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">322 </td><td>NIST DOM HTML Test - HEAD</td></tr>
-<tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="head.xhtml">head.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">363 </td></tr>
-<tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="head.xml">head.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">363 </td></tr>
 <tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="heading.html">heading.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">483 </td><td>NIST DOM HTML Test - HEADING</td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="heading.xhtml">heading.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">521 </td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="heading.xml">heading.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">521 </td></tr>
 <tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="hr.html">hr.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">309 </td><td>NIST DOM HTML Test - HR</td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="hr.xhtml">hr.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">348 </td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="hr.xml">hr.xml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">348 </td></tr>
 <tr><td valign="top"><img src="/icons/text.gif" alt="[TXT]" width="20" height="22" /></td><td><a href="html.html">html.html</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">321 </td><td>NIST DOM HTML Test - Html</td></tr>
 <tr><td valign="top"><img src="/icons/unknown.gif" alt="[   ]" width="20" height="22" /></td><td><a href="html.xhtml">html.xhtml</a></td><td align="right">05-Apr-2004 14:39  </td><td align="right">300 </td></tr>
deleted file mode 100644
--- a/dom/tests/mochitest/dom-level2-html/test_HTMLBaseFontElement01.html
+++ /dev/null
@@ -1,133 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
-<title>http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement01</title>
-<link type="text/css" rel="stylesheet" href="/tests/SimpleTest/test.css">
-<script src="/MochiKit/packed.js" type="text/javascript"></script><script src="/tests/SimpleTest/SimpleTest.js" type="text/javascript"></script><script src="DOMTestCase.js" type="text/javascript"></script><script type="text/javascript">
-// expose test function names
-function exposeTestFunctionNames()
-{
-return ['HTMLBaseFontElement01'];
-}
-
-var docsLoaded = -1000000;
-var builder = null;
-
-//
-//   This function is called by the testing framework before
-//      running the test suite.
-//
-//   If there are no configuration exceptions, asynchronous
-//        document loading is started.  Otherwise, the status
-//        is set to complete and the exception is immediately
-//        raised when entering the body of the test.
-//
-function setUpPage() {
-   setUpPageStatus = 'running';
-   try {
-     //
-     //   creates test document builder, may throw exception
-     //
-     builder = createConfiguredBuilder();
-
-      docsLoaded = 0;
-      
-      var docRef = null;
-      if (typeof(this.doc) != 'undefined') {
-        docRef = this.doc;
-      }
-      docsLoaded += preload(docRef, "doc", "basefont");
-        
-       if (docsLoaded == 1) {
-          setUpPage = 'complete';
-       }
-    } catch(ex) {
-    	catchInitializationError(builder, ex);
-        setUpPage = 'complete';
-    }
-}
-
-
-
-//
-//   This method is called on the completion of 
-//      each asychronous load started in setUpTests.
-//
-//   When every synchronous loaded document has completed,
-//      the page status is changed which allows the
-//      body of the test to be executed.
-function loadComplete() {
-    if (++docsLoaded == 1) {
-        setUpPageStatus = 'complete';
-        runJSUnitTests();
-        SimpleTest.finish();
-    }
-}
-
-
-/**
-* 
-    The color attribute specifies the base font's color. 
-
-    Retrieve the color attribute and examine its value.  
-
-* @author NIST
-* @author Mary Brady
-* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87502302
-*/
-function HTMLBaseFontElement01() {
-   var success;
-    if(checkInitialization(builder, "HTMLBaseFontElement01") != null) return;
-    var nodeList;
-      var testNode;
-      var vcolor;
-      var doc;
-      
-      var docRef = null;
-      if (typeof(this.doc) != 'undefined') {
-        docRef = this.doc;
-      }
-      doc = load(docRef, "doc", "basefont");
-      nodeList = doc.getElementsByTagName("basefont");
-      assertSize("Asize",1,nodeList);
-testNode = nodeList.item(0);
-      vcolor = testNode.color;
-
-      assertEquals("colorLink","#000000",vcolor);
-       
-}
-
-</script>
-</head>
-<body>
-<h2>Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement01</h2>
-<p>&lt;test name='HTMLBaseFontElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;title&gt;HTMLBaseFontElement01&lt;/title&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;creator&gt;NIST&lt;/creator&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;description&gt;
-    The color attribute specifies the base font's color. 
-
-    Retrieve the color attribute and examine its value.  
-&lt;/description&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;contributor&gt;Mary Brady&lt;/contributor&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;date qualifier='created'&gt;2002-02-22&lt;/date&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;subject resource='<a href="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87502302">http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87502302</a>'/&gt;
-<br>&lt;/metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='nodeList' type='NodeList'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='testNode' type='Node'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='vcolor' type='DOMString'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='doc' type='Document'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;load var='doc' href='basefont' willBeModified='false'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"basefont"'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertSize collection='nodeList' size='1' <a id="Asize">id='Asize'</a>/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;item interface='NodeList' obj='nodeList' var='testNode' index='0'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;color interface='HTMLBaseFontElement' obj='testNode' var='vcolor'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertEquals actual='vcolor' expected='"#000000"' <a id="colorLink">id='colorLink'</a> ignoreCase='false'/&gt;<br>&lt;/test&gt;<br>
-</p>
-<p>
-			Copyright (c) 2001-2004 World Wide Web Consortium,
-			(Massachusetts Institute of Technology, Institut National de
-			Recherche en Informatique et en Automatique, Keio University). All
-			Rights Reserved. This program is distributed under the W3C's Software
-			Intellectual Property License. This program is distributed in the
-			hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-			the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-			PURPOSE.
-			</p>
-<p>See W3C License <a href="http://www.w3.org/Consortium/Legal/">http://www.w3.org/Consortium/Legal/</a> 
- for more details.</p>
-<iframe name="doc" src="files/basefont.html"></iframe>
-<br>
-</body>
-</html>
deleted file mode 100644
--- a/dom/tests/mochitest/dom-level2-html/test_HTMLBaseFontElement02.html
+++ /dev/null
@@ -1,133 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
-<title>http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement02</title>
-<link type="text/css" rel="stylesheet" href="/tests/SimpleTest/test.css">
-<script src="/MochiKit/packed.js" type="text/javascript"></script><script src="/tests/SimpleTest/SimpleTest.js" type="text/javascript"></script><script src="DOMTestCase.js" type="text/javascript"></script><script type="text/javascript">
-// expose test function names
-function exposeTestFunctionNames()
-{
-return ['HTMLBaseFontElement02'];
-}
-
-var docsLoaded = -1000000;
-var builder = null;
-
-//
-//   This function is called by the testing framework before
-//      running the test suite.
-//
-//   If there are no configuration exceptions, asynchronous
-//        document loading is started.  Otherwise, the status
-//        is set to complete and the exception is immediately
-//        raised when entering the body of the test.
-//
-function setUpPage() {
-   setUpPageStatus = 'running';
-   try {
-     //
-     //   creates test document builder, may throw exception
-     //
-     builder = createConfiguredBuilder();
-
-      docsLoaded = 0;
-      
-      var docRef = null;
-      if (typeof(this.doc) != 'undefined') {
-        docRef = this.doc;
-      }
-      docsLoaded += preload(docRef, "doc", "basefont");
-        
-       if (docsLoaded == 1) {
-          setUpPage = 'complete';
-       }
-    } catch(ex) {
-    	catchInitializationError(builder, ex);
-        setUpPage = 'complete';
-    }
-}
-
-
-
-//
-//   This method is called on the completion of 
-//      each asychronous load started in setUpTests.
-//
-//   When every synchronous loaded document has completed,
-//      the page status is changed which allows the
-//      body of the test to be executed.
-function loadComplete() {
-    if (++docsLoaded == 1) {
-        setUpPageStatus = 'complete';
-        runJSUnitTests();
-        SimpleTest.finish();
-    }
-}
-
-
-/**
-* 
-    The face attribute specifies the base font's face identifier. 
-
-    Retrieve the face attribute and examine its value.  
-
-* @author NIST
-* @author Mary Brady
-* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88128969
-*/
-function HTMLBaseFontElement02() {
-   var success;
-    if(checkInitialization(builder, "HTMLBaseFontElement02") != null) return;
-    var nodeList;
-      var testNode;
-      var vface;
-      var doc;
-      
-      var docRef = null;
-      if (typeof(this.doc) != 'undefined') {
-        docRef = this.doc;
-      }
-      doc = load(docRef, "doc", "basefont");
-      nodeList = doc.getElementsByTagName("basefont");
-      assertSize("Asize",1,nodeList);
-testNode = nodeList.item(0);
-      vface = testNode.face;
-
-      assertEquals("faceLink","arial,helvitica",vface);
-       
-}
-
-</script>
-</head>
-<body>
-<h2>Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement02</h2>
-<p>&lt;test name='HTMLBaseFontElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;title&gt;HTMLBaseFontElement02&lt;/title&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;creator&gt;NIST&lt;/creator&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;description&gt;
-    The face attribute specifies the base font's face identifier. 
-
-    Retrieve the face attribute and examine its value.  
-&lt;/description&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;contributor&gt;Mary Brady&lt;/contributor&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;date qualifier='created'&gt;2002-02-22&lt;/date&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;subject resource='<a href="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88128969">http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88128969</a>'/&gt;
-<br>&lt;/metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='nodeList' type='NodeList'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='testNode' type='Node'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='vface' type='DOMString'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='doc' type='Document'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;load var='doc' href='basefont' willBeModified='false'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"basefont"'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertSize collection='nodeList' size='1' <a id="Asize">id='Asize'</a>/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;item interface='NodeList' obj='nodeList' var='testNode' index='0'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;face interface='HTMLBaseFontElement' obj='testNode' var='vface'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertEquals actual='vface' expected='"arial,helvitica"' <a id="faceLink">id='faceLink'</a> ignoreCase='false'/&gt;<br>&lt;/test&gt;<br>
-</p>
-<p>
-			Copyright (c) 2001-2004 World Wide Web Consortium,
-			(Massachusetts Institute of Technology, Institut National de
-			Recherche en Informatique et en Automatique, Keio University). All
-			Rights Reserved. This program is distributed under the W3C's Software
-			Intellectual Property License. This program is distributed in the
-			hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-			the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-			PURPOSE.
-			</p>
-<p>See W3C License <a href="http://www.w3.org/Consortium/Legal/">http://www.w3.org/Consortium/Legal/</a> 
- for more details.</p>
-<iframe name="doc" src="files/basefont.html"></iframe>
-<br>
-</body>
-</html>
deleted file mode 100644
--- a/dom/tests/mochitest/dom-level2-html/test_HTMLBaseFontElement03.html
+++ /dev/null
@@ -1,133 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
-<title>http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement03</title>
-<link type="text/css" rel="stylesheet" href="/tests/SimpleTest/test.css">
-<script src="/MochiKit/packed.js" type="text/javascript"></script><script src="/tests/SimpleTest/SimpleTest.js" type="text/javascript"></script><script src="DOMTestCase.js" type="text/javascript"></script><script type="text/javascript">
-// expose test function names
-function exposeTestFunctionNames()
-{
-return ['HTMLBaseFontElement03'];
-}
-
-var docsLoaded = -1000000;
-var builder = null;
-
-//
-//   This function is called by the testing framework before
-//      running the test suite.
-//
-//   If there are no configuration exceptions, asynchronous
-//        document loading is started.  Otherwise, the status
-//        is set to complete and the exception is immediately
-//        raised when entering the body of the test.
-//
-function setUpPage() {
-   setUpPageStatus = 'running';
-   try {
-     //
-     //   creates test document builder, may throw exception
-     //
-     builder = createConfiguredBuilder();
-
-      docsLoaded = 0;
-      
-      var docRef = null;
-      if (typeof(this.doc) != 'undefined') {
-        docRef = this.doc;
-      }
-      docsLoaded += preload(docRef, "doc", "basefont");
-        
-       if (docsLoaded == 1) {
-          setUpPage = 'complete';
-       }
-    } catch(ex) {
-    	catchInitializationError(builder, ex);
-        setUpPage = 'complete';
-    }
-}
-
-
-
-//
-//   This method is called on the completion of 
-//      each asychronous load started in setUpTests.
-//
-//   When every synchronous loaded document has completed,
-//      the page status is changed which allows the
-//      body of the test to be executed.
-function loadComplete() {
-    if (++docsLoaded == 1) {
-        setUpPageStatus = 'complete';
-        runJSUnitTests();
-        SimpleTest.finish();
-    }
-}
-
-
-/**
-* 
-    The size attribute specifies the base font's size. 
-
-    Retrieve the size attribute and examine it's value.  
-
-* @author NIST
-* @author Mary Brady
-* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-38930424
-*/
-function HTMLBaseFontElement03() {
-   var success;
-    if(checkInitialization(builder, "HTMLBaseFontElement03") != null) return;
-    var nodeList;
-      var testNode;
-      var vsize;
-      var doc;
-      
-      var docRef = null;
-      if (typeof(this.doc) != 'undefined') {
-        docRef = this.doc;
-      }
-      doc = load(docRef, "doc", "basefont");
-      nodeList = doc.getElementsByTagName("basefont");
-      assertSize("Asize",1,nodeList);
-testNode = nodeList.item(0);
-      vsize = testNode.size;
-
-      assertEquals("sizeLink",4,vsize);
-       
-}
-
-</script>
-</head>
-<body>
-<h2>Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement03</h2>
-<p>&lt;test name='HTMLBaseFontElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;title&gt;HTMLBaseFontElement03&lt;/title&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;creator&gt;NIST&lt;/creator&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;description&gt;
-    The size attribute specifies the base font's size. 
-
-    Retrieve the size attribute and examine it's value.  
-&lt;/description&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;contributor&gt;Mary Brady&lt;/contributor&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;date qualifier='created'&gt;2001-12-03&lt;/date&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;subject resource='<a href="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-38930424">http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-38930424</a>'/&gt;
-<br>&lt;/metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='nodeList' type='NodeList'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='testNode' type='Node'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='vsize' type='int'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='doc' type='Node'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;load var='doc' href='basefont' willBeModified='false'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"basefont"'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertSize collection='nodeList' size='1' <a id="Asize">id='Asize'</a>/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;item interface='NodeList' obj='nodeList' var='testNode' index='0'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;size interface='HTMLBaseFontElement' obj='testNode' var='vsize'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertEquals actual='vsize' expected='4' <a id="sizeLink">id='sizeLink'</a> ignoreCase='false'/&gt;<br>&lt;/test&gt;<br>
-</p>
-<p>
-			Copyright (c) 2001-2004 World Wide Web Consortium,
-			(Massachusetts Institute of Technology, Institut National de
-			Recherche en Informatique et en Automatique, Keio University). All
-			Rights Reserved. This program is distributed under the W3C's Software
-			Intellectual Property License. This program is distributed in the
-			hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-			the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-			PURPOSE.
-			</p>
-<p>See W3C License <a href="http://www.w3.org/Consortium/Legal/">http://www.w3.org/Consortium/Legal/</a> 
- for more details.</p>
-<iframe name="doc" src="files/basefont.html"></iframe>
-<br>
-</body>
-</html>
deleted file mode 100644
--- a/dom/tests/mochitest/dom-level2-html/test_HTMLHeadElement01.html
+++ /dev/null
@@ -1,133 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
-<title>http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadElement01</title>
-<link type="text/css" rel="stylesheet" href="/tests/SimpleTest/test.css">
-<script src="/MochiKit/packed.js" type="text/javascript"></script><script src="/tests/SimpleTest/SimpleTest.js" type="text/javascript"></script><script src="DOMTestCase.js" type="text/javascript"></script><script type="text/javascript">
-// expose test function names
-function exposeTestFunctionNames()
-{
-return ['HTMLHeadElement01'];
-}
-
-var docsLoaded = -1000000;
-var builder = null;
-
-//
-//   This function is called by the testing framework before
-//      running the test suite.
-//
-//   If there are no configuration exceptions, asynchronous
-//        document loading is started.  Otherwise, the status
-//        is set to complete and the exception is immediately
-//        raised when entering the body of the test.
-//
-function setUpPage() {
-   setUpPageStatus = 'running';
-   try {
-     //
-     //   creates test document builder, may throw exception
-     //
-     builder = createConfiguredBuilder();
-
-      docsLoaded = 0;
-      
-      var docRef = null;
-      if (typeof(this.doc) != 'undefined') {
-        docRef = this.doc;
-      }
-      docsLoaded += preload(docRef, "doc", "head");
-        
-       if (docsLoaded == 1) {
-          setUpPage = 'complete';
-       }
-    } catch(ex) {
-    	catchInitializationError(builder, ex);
-        setUpPage = 'complete';
-    }
-}
-
-
-
-//
-//   This method is called on the completion of 
-//      each asychronous load started in setUpTests.
-//
-//   When every synchronous loaded document has completed,
-//      the page status is changed which allows the
-//      body of the test to be executed.
-function loadComplete() {
-    if (++docsLoaded == 1) {
-        setUpPageStatus = 'complete';
-        runJSUnitTests();
-        SimpleTest.finish();
-    }
-}
-
-
-/**
-* 
-    The profile attribute specifies a URI designating a metadata profile. 
-
-    Retrieve the profile attribute and examine its value.  
-
-* @author NIST
-* @author Mary Brady
-* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96921909
-*/
-function HTMLHeadElement01() {
-   var success;
-    if(checkInitialization(builder, "HTMLHeadElement01") != null) return;
-    var nodeList;
-      var testNode;
-      var vprofile;
-      var doc;
-      
-      var docRef = null;
-      if (typeof(this.doc) != 'undefined') {
-        docRef = this.doc;
-      }
-      doc = load(docRef, "doc", "head");
-      nodeList = doc.getElementsByTagName("head");
-      assertSize("Asize",1,nodeList);
-testNode = nodeList.item(0);
-      vprofile = testNode.profile;
-
-      assertURIEquals("profileLink",null,null,null,"profile",null,null,null,null,vprofile);
-
-}
-
-</script>
-</head>
-<body>
-<h2>Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadElement01</h2>
-<p>&lt;test name='HTMLHeadElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;title&gt;HTMLHeadElement01&lt;/title&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;creator&gt;NIST&lt;/creator&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;description&gt;
-    The profile attribute specifies a URI designating a metadata profile. 
-
-    Retrieve the profile attribute and examine its value.  
-&lt;/description&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;contributor&gt;Mary Brady&lt;/contributor&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;date qualifier='created'&gt;2002-02-22&lt;/date&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;subject resource='<a href="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96921909">http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96921909</a>'/&gt;
-<br>&lt;/metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='nodeList' type='NodeList'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='testNode' type='Node'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='vprofile' type='DOMString'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='doc' type='Document'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;load var='doc' href='head' willBeModified='false'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"head"'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertSize collection='nodeList' size='1' <a id="Asize">id='Asize'</a>/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;item interface='NodeList' obj='nodeList' var='testNode' index='0'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;profile interface='HTMLHeadElement' obj='testNode' var='vprofile'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertURIEquals actual='vprofile' file='"profile"' <a id="profileLink">id='profileLink'</a>/&gt;<br>&lt;/test&gt;<br>
-</p>
-<p>
-			Copyright (c) 2001-2004 World Wide Web Consortium,
-			(Massachusetts Institute of Technology, Institut National de
-			Recherche en Informatique et en Automatique, Keio University). All
-			Rights Reserved. This program is distributed under the W3C's Software
-			Intellectual Property License. This program is distributed in the
-			hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-			the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-			PURPOSE.
-			</p>
-<p>See W3C License <a href="http://www.w3.org/Consortium/Legal/">http://www.w3.org/Consortium/Legal/</a> 
- for more details.</p>
-<iframe name="doc" src="files/head.html"></iframe>
-<br>
-</body>
-</html>
--- a/dom/tests/mochitest/dom-level2-html/test_alltests.html
+++ b/dom/tests/mochitest/dom-level2-html/test_alltests.html
@@ -42,19 +42,16 @@ function suite() {
   newsuite.addTestPage("../level2/html/HTMLAreaElement04.html");  
   newsuite.addTestPage("../level2/html/HTMLAreaElement05.html");  
   newsuite.addTestPage("../level2/html/HTMLAreaElement06.html");  
   newsuite.addTestPage("../level2/html/HTMLAreaElement07.html");  
   newsuite.addTestPage("../level2/html/HTMLAreaElement08.html");  
   newsuite.addTestPage("../level2/html/HTMLBRElement01.html");  
   newsuite.addTestPage("../level2/html/HTMLBaseElement01.html");  
   newsuite.addTestPage("../level2/html/HTMLBaseElement02.html");  
-  newsuite.addTestPage("../level2/html/HTMLBaseFontElement01.html");  
-  newsuite.addTestPage("../level2/html/HTMLBaseFontElement02.html");  
-  newsuite.addTestPage("../level2/html/HTMLBaseFontElement03.html");  
   newsuite.addTestPage("../level2/html/HTMLBodyElement01.html");  
   newsuite.addTestPage("../level2/html/HTMLBodyElement02.html");  
   newsuite.addTestPage("../level2/html/HTMLBodyElement03.html");  
   newsuite.addTestPage("../level2/html/HTMLBodyElement04.html");  
   newsuite.addTestPage("../level2/html/HTMLBodyElement05.html");  
   newsuite.addTestPage("../level2/html/HTMLBodyElement06.html");  
   newsuite.addTestPage("../level2/html/HTMLBodyElement07.html");  
   newsuite.addTestPage("../level2/html/HTMLBodyElement08.html");  
@@ -609,17 +606,16 @@ function suite() {
   newsuite.addTestPage("../level2/html/anchor03.html");  
   newsuite.addTestPage("../level2/html/anchor04.html");  
   newsuite.addTestPage("../level2/html/anchor05.html");  
   newsuite.addTestPage("../level2/html/anchor06.html");  
   newsuite.addTestPage("../level2/html/area01.html");  
   newsuite.addTestPage("../level2/html/area02.html");  
   newsuite.addTestPage("../level2/html/area03.html");  
   newsuite.addTestPage("../level2/html/area04.html");  
-  newsuite.addTestPage("../level2/html/basefont01.html");  
   newsuite.addTestPage("../level2/html/body01.html");  
   newsuite.addTestPage("../level2/html/button01.html");  
   newsuite.addTestPage("../level2/html/button02.html");  
   newsuite.addTestPage("../level2/html/button03.html");  
   newsuite.addTestPage("../level2/html/button04.html");  
   newsuite.addTestPage("../level2/html/button05.html");  
   newsuite.addTestPage("../level2/html/button06.html");  
   newsuite.addTestPage("../level2/html/button07.html");  
@@ -754,21 +750,16 @@ function suite() {
 
 
 
 <option value="area04.html">area04</option>
 
 
 
 
-<option value="basefont01.html">basefont01</option>
-
-
-
-
 <option value="body01.html">body01</option>
 
 
 
 
 <option value="button01.html">button01</option>
 
 
@@ -989,26 +980,16 @@ function suite() {
 
 
 
 <option value="HTMLBaseElement02.html">HTMLBaseElement02</option>
 
 
 
 
-<option value="HTMLBaseFontElement01.html">HTMLBaseFontElement01</option>
-
-
-
-
-<option value="HTMLBaseFontElement02.html">HTMLBaseFontElement02</option>
-
-
-
-
 <option value="HTMLBodyElement01.html">HTMLBodyElement01</option>
 
 
 
 
 <option value="HTMLBodyElement02.html">HTMLBodyElement02</option>
 
 
@@ -3831,17 +3812,16 @@ function suite() {
 
 <option value="hasFeature02.html">hasFeature02</option>
 <option value="hasFeature03.html">hasFeature03</option>
 <option value="hasFeature04.html">hasFeature04</option>
 <option value="hasFeature05.html">hasFeature05</option>
 <option value="hasFeature06.html">hasFeature06</option>
 <option value="HTMLAppletElement07.html">HTMLAppletElement07</option>
 <option value="HTMLAppletElement09.html">HTMLAppletElement09</option>
-<option value="HTMLBaseFontElement03.html">HTMLBaseFontElement03</option>
 <option value="HTMLBodyElement07.html">HTMLBodyElement07</option>
 <option value="HTMLBodyElement08.html">HTMLBodyElement08</option>
 <option value="HTMLBodyElement09.html">HTMLBodyElement09</option>
 <option value="HTMLBodyElement10.html">HTMLBodyElement10</option>
 <option value="HTMLBodyElement11.html">HTMLBodyElement11</option>
 <option value="HTMLBodyElement12.html">HTMLBodyElement12</option>
 <option value="HTMLDocument22.html">HTMLDocument22</option>
 <option value="HTMLDocument23.html">HTMLDocument23</option>
deleted file mode 100644
--- a/dom/tests/mochitest/dom-level2-html/test_basefont01.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
-<title>http://www.w3.org/2001/DOM-Test-Suite/level2/html/basefont01</title>
-<link type="text/css" rel="stylesheet" href="/tests/SimpleTest/test.css">
-<script src="/MochiKit/packed.js" type="text/javascript"></script><script src="/tests/SimpleTest/SimpleTest.js" type="text/javascript"></script><script src="DOMTestCase.js" type="text/javascript"></script><script type="text/javascript">
-// expose test function names
-function exposeTestFunctionNames()
-{
-return ['basefont01'];
-}
-
-var docsLoaded = -1000000;
-var builder = null;
-
-//
-//   This function is called by the testing framework before
-//      running the test suite.
-//
-//   If there are no configuration exceptions, asynchronous
-//        document loading is started.  Otherwise, the status
-//        is set to complete and the exception is immediately
-//        raised when entering the body of the test.
-//
-function setUpPage() {
-   setUpPageStatus = 'running';
-   try {
-     //
-     //   creates test document builder, may throw exception
-     //
-     builder = createConfiguredBuilder();
-
-      docsLoaded = 0;
-      
-      var docRef = null;
-      if (typeof(this.doc) != 'undefined') {
-        docRef = this.doc;
-      }
-      docsLoaded += preload(docRef, "doc", "basefont");
-        
-       if (docsLoaded == 1) {
-          setUpPage = 'complete';
-       }
-    } catch(ex) {
-    	catchInitializationError(builder, ex);
-        setUpPage = 'complete';
-    }
-}
-
-
-
-//
-//   This method is called on the completion of 
-//      each asychronous load started in setUpTests.
-//
-//   When every synchronous loaded document has completed,
-//      the page status is changed which allows the
-//      body of the test to be executed.
-function loadComplete() {
-    if (++docsLoaded == 1) {
-        setUpPageStatus = 'complete';
-        runJSUnitTests();
-        SimpleTest.finish();
-    }
-}
-
-
-/**
-* 
-The value of attribute color of the basefont element is read and checked against the expected value.
-
-* @author Netscape
-* @author Sivakiran Tummala
-* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87502302
-*/
-function basefont01() {
-   var success;
-    if(checkInitialization(builder, "basefont01") != null) return;
-    var nodeList;
-      var testNode;
-      var vcolor;
-      var doc;
-      
-      var docRef = null;
-      if (typeof(this.doc) != 'undefined') {
-        docRef = this.doc;
-      }
-      doc = load(docRef, "doc", "basefont");
-      nodeList = doc.getElementsByTagName("basefont");
-      assertSize("Asize",1,nodeList);
-testNode = nodeList.item(0);
-      vcolor = testNode.color;
-
-      assertEquals("colorLink","#000000",vcolor);
-       
-}
-
-</script>
-</head>
-<body>
-<h2>Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/basefont01</h2>
-<p>&lt;test name='basefont01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;title&gt;basefont01&lt;/title&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;creator&gt;Netscape&lt;/creator&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;description&gt;
-The value of attribute color of the basefont element is read and checked against the expected value.
-&lt;/description&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;contributor&gt;Sivakiran Tummala&lt;/contributor&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;date qualifier='created'&gt;2002-02-08&lt;/date&gt;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;subject resource='<a href="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87502302">http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87502302</a>'/&gt;
-<br>&lt;/metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='nodeList' type='NodeList'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='testNode' type='Node'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='vcolor' type='DOMString'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='doc' type='Node'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;load var='doc' href='basefont' willBeModified='false'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"basefont"'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertSize collection='nodeList' size='1' <a id="Asize">id='Asize'</a>/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;item interface='NodeList' obj='nodeList' var='testNode' index='0'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;color interface='HTMLBaseFontElement' obj='testNode' var='vcolor'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertEquals actual='vcolor' expected='"#000000"' <a id="colorLink">id='colorLink'</a> ignoreCase='false'/&gt;<br>&lt;/test&gt;<br>
-</p>
-<p>
-			Copyright (c) 2001-2004 World Wide Web Consortium,
-			(Massachusetts Institute of Technology, Institut National de
-			Recherche en Informatique et en Automatique, Keio University). All
-			Rights Reserved. This program is distributed under the W3C's Software
-			Intellectual Property License. This program is distributed in the
-			hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-			the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-			PURPOSE.
-			</p>
-<p>See W3C License <a href="http://www.w3.org/Consortium/Legal/">http://www.w3.org/Consortium/Legal/</a> 
- for more details.</p>
-<iframe name="doc" src="files/basefont.html"></iframe>
-<br>
-</body>
-</html>
--- a/parser/htmlparser/public/nsHTMLTagList.h
+++ b/parser/htmlparser/public/nsHTMLTagList.h
@@ -69,17 +69,17 @@ HTML_TAG(acronym, Span)
 HTML_TAG(address, Span)
 HTML_TAG(applet, SharedObject)
 HTML_TAG(area, Area)
 #if defined(MOZ_MEDIA)
 HTML_TAG(audio, Audio)
 #endif
 HTML_TAG(b, Span)
 HTML_TAG(base, Shared)
-HTML_TAG(basefont, Shared)
+HTML_TAG(basefont, Span)
 HTML_TAG(bdo, Span)
 HTML_TAG(bgsound, Span)
 HTML_TAG(big, Span)
 HTML_TAG(blink, Span)
 HTML_TAG(blockquote, Shared)
 HTML_TAG(body, Body)
 HTML_TAG(br, BR)
 HTML_TAG(button, Button)
@@ -105,19 +105,19 @@ HTML_TAG(form, Form)
 HTML_TAG(frame, Frame)
 HTML_TAG(frameset, FrameSet)
 HTML_TAG(h1, Heading)
 HTML_TAG(h2, Heading)
 HTML_TAG(h3, Heading)
 HTML_TAG(h4, Heading)
 HTML_TAG(h5, Heading)
 HTML_TAG(h6, Heading)
-HTML_TAG(head, Head)
+HTML_TAG(head, Shared)
 HTML_TAG(hr, HR)
-HTML_TAG(html, Html)
+HTML_TAG(html, Shared)
 HTML_TAG(i, Span)
 HTML_TAG(iframe, IFrame)
 HTML_TAG(image, Span)
 HTML_TAG(img, Image)
 HTML_TAG(input, Input)
 HTML_TAG(ins, Mod)
 HTML_TAG(isindex, Shared)
 HTML_TAG(kbd, Span)